mirror of
https://github.com/ansible/awx.git
synced 2026-05-23 16:47:45 -02:30
Merge pull request #405 from jlaska/release_2.3
Add CHECKSUM files for setup and bundle targets
This commit is contained in:
90
Makefile
90
Makefile
@@ -5,9 +5,18 @@ PACKER ?= packer
|
|||||||
GRUNT ?= $(shell [ -t 0 ] && echo "grunt" || echo "grunt --no-color")
|
GRUNT ?= $(shell [ -t 0 ] && echo "grunt" || echo "grunt --no-color")
|
||||||
BROCCOLI ?= ./node_modules/.bin/broccoli
|
BROCCOLI ?= ./node_modules/.bin/broccoli
|
||||||
NODE ?= node
|
NODE ?= node
|
||||||
DEPS_SCRIPT ?= packaging/offline/deps.py
|
DEPS_SCRIPT ?= packaging/bundle/deps.py
|
||||||
AW_REPO_URL ?= "http://releases.ansible.com/ansible-tower"
|
AW_REPO_URL ?= "http://releases.ansible.com/ansible-tower"
|
||||||
|
|
||||||
|
# Determine appropriate shasum command
|
||||||
|
UNAME_S := $(shell uname -s)
|
||||||
|
ifeq ($(UNAME_S),Linux)
|
||||||
|
SHASUM_BIN ?= sha256sum
|
||||||
|
endif
|
||||||
|
ifeq ($(UNAME_S),Darwin)
|
||||||
|
SHASUM_BIN ?= shasum -a 256
|
||||||
|
endif
|
||||||
|
|
||||||
# Get the branch information from git
|
# Get the branch information from git
|
||||||
GIT_DATE := $(shell git log -n 1 --format="%ai")
|
GIT_DATE := $(shell git log -n 1 --format="%ai")
|
||||||
DATE := $(shell date -u +%Y%m%d%H%M)
|
DATE := $(shell date -u +%Y%m%d%H%M)
|
||||||
@@ -26,6 +35,7 @@ endif
|
|||||||
AWS_INSTANCE_COUNT ?= 0
|
AWS_INSTANCE_COUNT ?= 0
|
||||||
|
|
||||||
# GPG signature parameters (BETA key not yet used)
|
# GPG signature parameters (BETA key not yet used)
|
||||||
|
GPG_BIN ?= gpg
|
||||||
GPG_RELEASE = 442667A9
|
GPG_RELEASE = 442667A9
|
||||||
GPG_BETA = D7B00447
|
GPG_BETA = D7B00447
|
||||||
GPG_RELEASE_FILE = RPM-GPG-KEY-ansible-release
|
GPG_RELEASE_FILE = RPM-GPG-KEY-ansible-release
|
||||||
@@ -43,13 +53,14 @@ ifeq ($(OFFICIAL),yes)
|
|||||||
SDIST_TAR_NAME=$(NAME)-$(VERSION)
|
SDIST_TAR_NAME=$(NAME)-$(VERSION)
|
||||||
PACKER_BUILD_OPTS=-var-file=vars-release.json
|
PACKER_BUILD_OPTS=-var-file=vars-release.json
|
||||||
else
|
else
|
||||||
SETUP_TAR_NAME=$(NAME)-setup-$(VERSION)-$(BUILD)
|
SETUP_TAR_NAME=$(NAME)-setup-$(VERSION)-$(RELEASE)
|
||||||
SDIST_TAR_NAME=$(NAME)-$(VERSION)-$(BUILD)
|
SDIST_TAR_NAME=$(NAME)-$(VERSION)-$(RELEASE)
|
||||||
PACKER_BUILD_OPTS=-var-file=vars-nightly.json
|
PACKER_BUILD_OPTS=-var-file=vars-nightly.json
|
||||||
endif
|
endif
|
||||||
SDIST_TAR_FILE=$(SDIST_TAR_NAME).tar.gz
|
SDIST_TAR_FILE=$(SDIST_TAR_NAME).tar.gz
|
||||||
SETUP_TAR_FILE=$(SETUP_TAR_NAME).tar.gz
|
SETUP_TAR_FILE=$(SETUP_TAR_NAME).tar.gz
|
||||||
SETUP_TAR_LINK=$(NAME)-setup-latest.tar.gz
|
SETUP_TAR_LINK=$(NAME)-setup-latest.tar.gz
|
||||||
|
SETUP_TAR_CHECKSUM=$(NAME)-setup-CHECKSUM
|
||||||
|
|
||||||
# DEB build parameters
|
# DEB build parameters
|
||||||
DEBUILD_BIN ?= debuild
|
DEBUILD_BIN ?= debuild
|
||||||
@@ -74,21 +85,29 @@ DEB_PPA ?= reprepro
|
|||||||
DEB_ARCH ?= amd64
|
DEB_ARCH ?= amd64
|
||||||
|
|
||||||
# RPM build parameters
|
# RPM build parameters
|
||||||
RPM_SPECDIR= packaging/rpm
|
|
||||||
RPM_SPEC = $(RPM_SPECDIR)/$(NAME).spec
|
|
||||||
RPM_DIST ?= $(shell rpm --eval '%{?dist}' 2>/dev/null)
|
|
||||||
RPM_ARCH ?= $(shell rpm --eval '%{_arch}' 2>/dev/null)
|
|
||||||
RPM_NVR = $(NAME)-$(VERSION)-$(RELEASE)$(RPM_DIST)
|
|
||||||
MOCK_BIN ?= mock
|
MOCK_BIN ?= mock
|
||||||
MOCK_CFG ?=
|
MOCK_CFG ?=
|
||||||
|
RPM_SPECDIR= packaging/rpm
|
||||||
|
RPM_SPEC = $(RPM_SPECDIR)/$(NAME).spec
|
||||||
|
# Provide a fallback value for RPM_DIST
|
||||||
|
RPM_DIST ?= $(shell rpm --eval '%{?dist}' 2>/dev/null)
|
||||||
|
ifeq ($(RPM_DIST),)
|
||||||
|
RPM_DIST = .el6
|
||||||
|
endif
|
||||||
|
RPM_ARCH ?= $(shell rpm --eval '%{_arch}' 2>/dev/null)
|
||||||
|
ifeq ($(RPM_ARCH),)
|
||||||
|
RPM_ARCH = $(shell uname -m)
|
||||||
|
endif
|
||||||
|
RPM_NVR = $(NAME)-$(VERSION)-$(RELEASE)$(RPM_DIST)
|
||||||
|
|
||||||
# Offline TAR build parameters
|
# TAR Bundle build parameters
|
||||||
DIST = $(shell echo $(RPM_DIST) | sed -e 's|^\.\(el\)\([0-9]\).*|\1|')
|
DIST = $(shell echo $(RPM_DIST) | sed -e 's|^\.\(el\)\([0-9]\).*|\1|')
|
||||||
DIST_MAJOR = $(shell echo $(RPM_DIST) | sed -e 's|^\.\(el\)\([0-9]\).*|\2|')
|
DIST_MAJOR = $(shell echo $(RPM_DIST) | sed -e 's|^\.\(el\)\([0-9]\).*|\2|')
|
||||||
DIST_FULL = $(DIST)$(DIST_MAJOR)
|
DIST_FULL = $(DIST)$(DIST_MAJOR)
|
||||||
OFFLINE_TAR_NAME = $(NAME)-offline-$(DIST_FULL)-$(VERSION)-$(RELEASE)
|
OFFLINE_TAR_NAME = $(NAME)-bundle-$(VERSION)-$(RELEASE).$(DIST_FULL)
|
||||||
OFFLINE_TAR_FILE = $(OFFLINE_TAR_NAME).tar.gz
|
OFFLINE_TAR_FILE = $(OFFLINE_TAR_NAME).tar.gz
|
||||||
OFFLINE_TAR_LINK = $(NAME)-offline-$(DIST_FULL)-latest.tar.gz
|
OFFLINE_TAR_LINK = $(NAME)-bundle-latest.$(DIST_FULL).tar.gz
|
||||||
|
OFFLINE_TAR_CHECKSUM=$(NAME)-bundle-CHECKSUM
|
||||||
|
|
||||||
DISTRO := $(shell . /etc/os-release 2>/dev/null && echo $${ID} || echo redhat)
|
DISTRO := $(shell . /etc/os-release 2>/dev/null && echo $${ID} || echo redhat)
|
||||||
ifeq ($(DISTRO),ubuntu)
|
ifeq ($(DISTRO),ubuntu)
|
||||||
@@ -107,7 +126,7 @@ endif
|
|||||||
devjs minjs testjs testjs_ci node-tests browser-tests jshint ngdocs sync_ui \
|
devjs minjs testjs testjs_ci node-tests browser-tests jshint ngdocs sync_ui \
|
||||||
deb deb-src debian reprepro setup_tarball \
|
deb deb-src debian reprepro setup_tarball \
|
||||||
virtualbox-ovf virtualbox-centos-7 virtualbox-centos-6 \
|
virtualbox-ovf virtualbox-centos-7 virtualbox-centos-6 \
|
||||||
clean-offline setup_offline_tarball
|
clean-bundle setup_bundle_tarball
|
||||||
|
|
||||||
# Remove setup build files
|
# Remove setup build files
|
||||||
clean-tar:
|
clean-tar:
|
||||||
@@ -141,11 +160,11 @@ clean-packer:
|
|||||||
rm -rf packaging/packer/ansible-tower*-ova
|
rm -rf packaging/packer/ansible-tower*-ova
|
||||||
rm -f Vagrantfile
|
rm -f Vagrantfile
|
||||||
|
|
||||||
clean-offline:
|
clean-bundle:
|
||||||
rm -rf offline-tar-build
|
rm -rf setup-bundle-build
|
||||||
|
|
||||||
# Remove temporary build files, compiled Python files.
|
# Remove temporary build files, compiled Python files.
|
||||||
clean: clean-rpm clean-deb clean-grunt clean-ui clean-tar clean-packer clean-offline
|
clean: clean-rpm clean-deb clean-grunt clean-ui clean-tar clean-packer clean-bundle
|
||||||
rm -rf awx/lib/site-packages
|
rm -rf awx/lib/site-packages
|
||||||
rm -rf dist/*
|
rm -rf dist/*
|
||||||
rm -rf build $(NAME)-$(VERSION) *.egg-info
|
rm -rf build $(NAME)-$(VERSION) *.egg-info
|
||||||
@@ -365,11 +384,19 @@ tar-build/$(SETUP_TAR_FILE):
|
|||||||
@cd tar-build && tar -czf $(SETUP_TAR_FILE) --exclude "*/all.in" $(SETUP_TAR_NAME)/
|
@cd tar-build && tar -czf $(SETUP_TAR_FILE) --exclude "*/all.in" $(SETUP_TAR_NAME)/
|
||||||
@ln -sf $(SETUP_TAR_FILE) tar-build/$(SETUP_TAR_LINK)
|
@ln -sf $(SETUP_TAR_FILE) tar-build/$(SETUP_TAR_LINK)
|
||||||
|
|
||||||
setup_tarball: tar-build/$(SETUP_TAR_FILE)
|
tar-build/$(SETUP_TAR_CHECKSUM):
|
||||||
|
@if [ "$(OFFICIAL)" != "yes" ] ; then \
|
||||||
|
$(SHASUM_BIN) tar-build/$(NAME)*.tar.gz > $@ ; \
|
||||||
|
else \
|
||||||
|
$(SHASUM_BIN) tar-build/$(NAME)*.tar.gz | $(GPG_BIN) --clearsign -u "$(GPG_RELEASE)" -o $@ - ; \
|
||||||
|
fi
|
||||||
|
|
||||||
|
setup_tarball: tar-build/$(SETUP_TAR_FILE) tar-build/$(SETUP_TAR_CHECKSUM)
|
||||||
@echo "#############################################"
|
@echo "#############################################"
|
||||||
@echo "Setup artifacts:"
|
@echo "Setup artifacts:"
|
||||||
@echo tar-build/$(SETUP_TAR_FILE)
|
@echo tar-build/$(SETUP_TAR_FILE)
|
||||||
@echo tar-build/$(SETUP_TAR_LINK)
|
@echo tar-build/$(SETUP_TAR_LINK)
|
||||||
|
@echo tar-build/$(SETUP_TAR_CHECKSUM)
|
||||||
@echo "#############################################"
|
@echo "#############################################"
|
||||||
|
|
||||||
release_clean:
|
release_clean:
|
||||||
@@ -381,26 +408,27 @@ dist/$(SDIST_TAR_FILE):
|
|||||||
|
|
||||||
sdist: minjs dist/$(SDIST_TAR_FILE)
|
sdist: minjs dist/$(SDIST_TAR_FILE)
|
||||||
|
|
||||||
# Build setup offline tarball
|
# Build setup bundle tarball
|
||||||
offline-tar-build:
|
setup-bundle-build:
|
||||||
mkdir -p $@
|
|
||||||
|
|
||||||
offline-tar-build/$(DIST_FULL):
|
|
||||||
mkdir -p $@
|
mkdir -p $@
|
||||||
|
|
||||||
# TODO - Somehow share implementation with setup_tarball
|
# TODO - Somehow share implementation with setup_tarball
|
||||||
offline-tar-build/$(DIST_FULL)/$(OFFLINE_TAR_FILE):
|
setup-bundle-build/$(OFFLINE_TAR_FILE):
|
||||||
cp -a setup offline-tar-build/$(DIST_FULL)/$(OFFLINE_TAR_NAME)
|
cp -a setup setup-bundle-build/$(OFFLINE_TAR_NAME)
|
||||||
cd offline-tar-build/$(DIST_FULL)/$(OFFLINE_TAR_NAME) && sed -e 's#%NAME%#$(NAME)#;s#%VERSION%#$(VERSION)#;s#%RELEASE%#$(RELEASE)#;' group_vars/all.in > group_vars/all
|
cd setup-bundle-build/$(OFFLINE_TAR_NAME) && sed -e 's#%NAME%#$(NAME)#;s#%VERSION%#$(VERSION)#;s#%RELEASE%#$(RELEASE)#;' group_vars/all.in > group_vars/all
|
||||||
$(PYTHON) $(DEPS_SCRIPT) -d $(DIST) -r $(DIST_MAJOR) -u $(AW_REPO_URL) -s offline-tar-build/$(DIST_FULL)/$(OFFLINE_TAR_NAME) -v -v -v
|
$(PYTHON) $(DEPS_SCRIPT) -d $(DIST) -r $(DIST_MAJOR) -u $(AW_REPO_URL) -s setup-bundle-build/$(OFFLINE_TAR_NAME) -v -v -v
|
||||||
cd offline-tar-build/$(DIST_FULL) && tar -czf $(OFFLINE_TAR_FILE) --exclude "*/all.in" $(OFFLINE_TAR_NAME)/
|
cd setup-bundle-build && tar -czf $(OFFLINE_TAR_FILE) --exclude "*/all.in" $(OFFLINE_TAR_NAME)/
|
||||||
ln -sf $(OFFLINE_TAR_FILE) offline-tar-build/$(DIST_FULL)/$(OFFLINE_TAR_LINK)
|
ln -sf $(OFFLINE_TAR_FILE) setup-bundle-build/$(OFFLINE_TAR_LINK)
|
||||||
|
|
||||||
setup_offline_tarball: offline-tar-build offline-tar-build/$(DIST_FULL) offline-tar-build/$(DIST_FULL)/$(OFFLINE_TAR_FILE)
|
setup-bundle-build/$(OFFLINE_TAR_CHECKSUM):
|
||||||
|
@$(SHASUM_BIN) tar-build/$(NAME)*.tar.gz | $(GPG_BIN) --clearsign -u "$(GPG_RELEASE)" -o $@ -
|
||||||
|
|
||||||
|
setup_bundle_tarball: setup-bundle-build setup-bundle-build/$(OFFLINE_TAR_FILE) setup-bundle-build/$(OFFLINE_TAR_CHECKSUM)
|
||||||
@echo "#############################################"
|
@echo "#############################################"
|
||||||
@echo "Offline artifacts:"
|
@echo "Offline artifacts:"
|
||||||
@echo offline-tar-build/$(DIST_FULL)/$(OFFLINE_TAR_FILE)
|
@echo setup-bundle-build/$(OFFLINE_TAR_FILE)
|
||||||
@echo offline-tar-build/$(DIST_FULL)/$(OFFLINE_TAR_LINK)
|
@echo setup-bundle-build/$(OFFLINE_TAR_LINK)
|
||||||
|
@echo setup-bundle-build/$(OFFLINE_TAR_CHECKSUM)
|
||||||
@echo "#############################################"
|
@echo "#############################################"
|
||||||
|
|
||||||
rpm-build:
|
rpm-build:
|
||||||
@@ -444,7 +472,7 @@ mock-rpm: rpmtar rpm-build/$(RPM_NVR).$(RPM_ARCH).rpm
|
|||||||
|
|
||||||
ifeq ($(OFFICIAL),yes)
|
ifeq ($(OFFICIAL),yes)
|
||||||
rpm-build/$(GPG_FILE): rpm-build
|
rpm-build/$(GPG_FILE): rpm-build
|
||||||
gpg --export -a "${GPG_KEY}" > "$@"
|
$(GPG_BIN) --export -a "${GPG_KEY}" > "$@"
|
||||||
|
|
||||||
rpm-sign: rpm-build/$(GPG_FILE) rpmtar rpm-build/$(RPM_NVR).$(RPM_ARCH).rpm
|
rpm-sign: rpm-build/$(GPG_FILE) rpmtar rpm-build/$(RPM_NVR).$(RPM_ARCH).rpm
|
||||||
rpm --define "_signature gpg" --define "_gpg_name $(GPG_KEY)" --addsign rpm-build/$(RPM_NVR).$(RPM_ARCH).rpm
|
rpm --define "_signature gpg" --define "_gpg_name $(GPG_KEY)" --addsign rpm-build/$(RPM_NVR).$(RPM_ARCH).rpm
|
||||||
|
|||||||
Reference in New Issue
Block a user