blob: 02819af82959424408420e06d7e5d1780e5fa83e [file] [log] [blame]
# @@@ START COPYRIGHT @@@
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# @@@ END COPYRIGHT @@@
# Makefile to build trafodion management pack for Ambari
RELEASE ?= 1
REPO_URL ?= http://no.such.server.org/repo
SPECFILE = traf_ambari.spec
RPMROOT=$(PWD)/RPMROOT
RPMDIR=$(RPMROOT)/RPMS
SRPMDIR=$(RPMROOT)/SRPMS
SOURCEDIR=$(RPMROOT)/SOURCES
BUILDDIR=$(RPMROOT)/BUILD
BUILDROOTDIR=$(RPMROOT)/BUILDROOT
all: rpmbuild
# need repoinfo file per release
# traf_ambari needs to support multiple releases so ambari can
# select trafodion version for given HDP stack
REPO_LIST= 2.1.0 $(TRAFODION_VER)
$(SOURCEDIR)/ambari_rpm.tar.gz: mpack-install/LICENSE mpack-install/NOTICE repofiles traf-mpack/mpack.json
rm -rf $(RPMROOT)
mkdir -p $(SOURCEDIR)
tar czf $@ traf-mpack mpack-install
# To do: needs enhancement when supporting RH6 & RH7 os
repofiles:
for v in $(REPO_LIST); do \
rdir=traf-mpack/custom-services/TRAFODION/$${v}; \
mkdir -p $${rdir}/repos ; \
sed -e "s#REPLACE_WITH_RH6_REPO_URL#$(REPO_URL)/RH6/$${v}#" \
-e "s#REPO_VER#$${v}#" \
repo.template > $${rdir}/repos/repoinfo.xml ; \
sed -e "s#REPO_VER#$${v}#" \
meta.template > $${rdir}/metainfo.xml ; \
done
traf-mpack/mpack.json: mpack.json
sed -e "s#MPACK_VERSION#$(TRAFODION_VER)#" $? > $@
mpack-install/LICENSE: ../../licenses/LICENSE-install
cp -f $? $@
../../licenses/LICENSE-install:
cd $(@D) && $(MAKE) $(@F)
mpack-install/NOTICE: ../../NOTICE
cp -f $? $@
rpmbuild: $(SOURCEDIR)/ambari_rpm.tar.gz
mkdir -p $(RPMDIR)
mkdir -p $(BUILDDIR)
mkdir -p $(BUILDROOTDIR)
mkdir -p $(SRPMDIR)
rpmbuild -vv -bb \
--define "version $(TRAFODION_VER)" \
--define "release $(RELEASE)" \
--define "_builddir $(BUILDDIR)" \
--define "_buildrootdir $(BUILDROOTDIR)" \
--define "_sourcedir $(SOURCEDIR)" \
--define "_rpmdir $(RPMDIR)" \
--define "_topdir $(RPMROOT)" \
$(SPECFILE)
mkdir -p ../../distribution
mv -f $(RPMROOT)/RPMS/noarch/traf_ambari*.rpm ../../distribution/
clean:
rm -rf $(RPMROOT)
rm -rf mpack-install/LICENSE
rm -rf mpack-install/NOTICE
rm -rf traf-mpack/custom-services/TRAFODION/*/repos
rm -f traf-mpack/custom-services/TRAFODION/*/metainfo.xml
rm -rf traf-mpack/mpack.json