Pipeline changes for travis release (#43)
* Added changes for travis release process * Renamed build scripts directory * Don't run basic build if tag is set * Pull production images from staging on production-release
This commit is contained in:
committed by
GitHub Enterprise
parent
5b5951ec3c
commit
34f7a57c5d
37
.travis.yml
37
.travis.yml
@@ -37,47 +37,44 @@ jobs:
|
||||
include:
|
||||
- stage: build
|
||||
name: "Basic build"
|
||||
if: branch != private-master
|
||||
if: branch != private-master AND tag IS blank
|
||||
os: linux
|
||||
env:
|
||||
- MQ_ARCHIVE_REPOSITORY=$MQ_914_ARCHIVE_REPOSITORY_AMD64
|
||||
- MQ_ARCHIVE_REPOSITORY_DEV=$MQ_914_ARCHIVE_REPOSITORY_DEV_AMD64
|
||||
script: bash -e build-scripts/build.sh
|
||||
- if: branch = private-master
|
||||
script: bash -e travis-build-scripts/run.sh
|
||||
- if: branch = private-master OR tag =~ ^pre-release*
|
||||
name: "Multi-Arch AMD64 build"
|
||||
os: linux
|
||||
env:
|
||||
- BUILD_ALL=true
|
||||
- MQ_ARCHIVE_REPOSITORY=$MQ_914_ARCHIVE_REPOSITORY_AMD64
|
||||
- MQ_ARCHIVE_REPOSITORY_DEV=$MQ_914_ARCHIVE_REPOSITORY_DEV_AMD64
|
||||
script: bash -e build-scripts/build.sh
|
||||
- if: branch = private-master
|
||||
script: bash -e travis-build-scripts/run.sh
|
||||
- if: branch = private-master OR tag =~ ^pre-release*
|
||||
name: "Multi-Arch PPC64LE build"
|
||||
os: linux-ppc64le
|
||||
env:
|
||||
- BUILD_ALL=true
|
||||
- TEST_OPTS_DOCKER="-run TestGoldenPathWithMetrics"
|
||||
- MQ_ARCHIVE_REPOSITORY=$MQ_914_ARCHIVE_REPOSITORY_PPC64LE
|
||||
script: bash -e build-scripts/build.sh
|
||||
- if: branch = private-master
|
||||
- MQ_ARCHIVE_REPOSITORY_DEV=$MQ_914_ARCHIVE_REPOSITORY_DEV_PPC64LE
|
||||
script: bash -e travis-build-scripts/run.sh
|
||||
- if: branch = private-master OR tag =~ ^pre-release*
|
||||
name: "Multi-Arch S390X build"
|
||||
os: linux-s390
|
||||
env:
|
||||
- BUILD_ALL=true
|
||||
- TEST_OPTS_DOCKER="-run TestGoldenPathWithMetrics"
|
||||
- MQ_ARCHIVE_REPOSITORY=$MQ_914_ARCHIVE_REPOSITORY_S390X
|
||||
script: bash -e build-scripts/build.sh
|
||||
# - stage: deploy
|
||||
# name: "Pre-release deploy"
|
||||
# if: tag =~ ^pre-release*
|
||||
# deploy:
|
||||
# provider: script
|
||||
# script: bash -e build-scripts/release.sh staging
|
||||
# - name: "Production release deploy"
|
||||
# if: tag =~ ^release-production*
|
||||
# deploy:
|
||||
# provider: script
|
||||
# script: bash -e build-scripts/release.sh production
|
||||
- MQ_ARCHIVE_REPOSITORY_DEV=$MQ_914_ARCHIVE_REPOSITORY_DEV_S390X
|
||||
script: bash -e travis-build-scripts/run.sh
|
||||
- stage: deploy
|
||||
name: "Pre-release deploy"
|
||||
if: tag =~ ^pre-release*
|
||||
script: bash -e travis-build-scripts/release.sh staging
|
||||
- name: "Production release deploy"
|
||||
if: tag =~ ^production-release*
|
||||
script: bash -e travis-build-scripts/release.sh production
|
||||
|
||||
before_install:
|
||||
- make install-build-deps
|
||||
|
||||
27
Makefile
27
Makefile
@@ -334,31 +334,30 @@ pull-mq-archive-dev:
|
||||
.PHONY: push-advancedserver
|
||||
push-advancedserver:
|
||||
$(info $(SPACER)$(shell printf $(TITLE)"Push production image to $(MQ_DELIVERY_REGISTRY_FULL_PATH)"$(END)))
|
||||
docker login $(MQ_DELIVERY_REGISTRY_HOSTNAME) -u $(MQ_DELIVERY_REGISTRY_USER) -p $(MQ_DELIVERY_REGISTRY_CREDENTIAL)
|
||||
docker tag $(MQ_IMAGE_ADVANCEDSERVER)\:$(MQ_TAG) $(MQ_DELIVERY_REGISTRY_FULL_PATH)/$(MQ_IMAGE_FULL_RELEASE_NAME)
|
||||
docker push $(MQ_DELIVERY_REGISTRY_FULL_PATH)/$(MQ_IMAGE_FULL_RELEASE_NAME)
|
||||
$(COMMAND) login $(MQ_DELIVERY_REGISTRY_HOSTNAME) -u $(MQ_DELIVERY_REGISTRY_USER) -p $(MQ_DELIVERY_REGISTRY_CREDENTIAL)
|
||||
$(COMMAND) tag $(MQ_IMAGE_ADVANCEDSERVER)\:$(MQ_TAG) $(MQ_DELIVERY_REGISTRY_FULL_PATH)/$(MQ_IMAGE_FULL_RELEASE_NAME)
|
||||
$(COMMAND) push $(MQ_DELIVERY_REGISTRY_FULL_PATH)/$(MQ_IMAGE_FULL_RELEASE_NAME)
|
||||
|
||||
.PHONY: push-devserver
|
||||
push-devserver:
|
||||
$(info $(SPACER)$(shell printf $(TITLE)"Push developer image to $(MQ_DELIVERY_REGISTRY_FULL_PATH)"$(END)))
|
||||
echo $(ARCH)
|
||||
docker login $(MQ_DELIVERY_REGISTRY_HOSTNAME) -u $(MQ_DELIVERY_REGISTRY_USER) -p $(MQ_DELIVERY_REGISTRY_CREDENTIAL)
|
||||
docker tag $(MQ_IMAGE_DEVSERVER)\:$(MQ_TAG) $(MQ_DELIVERY_REGISTRY_FULL_PATH)/$(MQ_IMAGE_DEV_FULL_RELEASE_NAME)
|
||||
docker push $(MQ_DELIVERY_REGISTRY_FULL_PATH)/$(MQ_IMAGE_DEV_FULL_RELEASE_NAME)
|
||||
$(COMMAND) login $(MQ_DELIVERY_REGISTRY_HOSTNAME) -u $(MQ_DELIVERY_REGISTRY_USER) -p $(MQ_DELIVERY_REGISTRY_CREDENTIAL)
|
||||
$(COMMAND) tag $(MQ_IMAGE_DEVSERVER)\:$(MQ_TAG) $(MQ_DELIVERY_REGISTRY_FULL_PATH)/$(MQ_IMAGE_DEV_FULL_RELEASE_NAME)
|
||||
$(COMMAND) push $(MQ_DELIVERY_REGISTRY_FULL_PATH)/$(MQ_IMAGE_DEV_FULL_RELEASE_NAME)
|
||||
|
||||
.PHONY: pull-advancedserver
|
||||
pull-advancedserver:
|
||||
$(info $(SPACER)$(shell printf $(TITLE)"Pull production image from $(MQ_DELIVERY_REGISTRY_FULL_PATH)"$(END)))
|
||||
docker login $(MQ_DELIVERY_REGISTRY_HOSTNAME) -u $(MQ_DELIVERY_REGISTRY_USER) -p $(MQ_DELIVERY_REGISTRY_CREDENTIAL)
|
||||
docker pull $(MQ_DELIVERY_REGISTRY_FULL_PATH)/$(MQ_IMAGE_FULL_RELEASE_NAME)
|
||||
docker tag $(MQ_DELIVERY_REGISTRY_FULL_PATH)/$(MQ_IMAGE_FULL_RELEASE_NAME) $(MQ_IMAGE_FULL_RELEASE_NAME)
|
||||
$(COMMAND) login $(MQ_DELIVERY_REGISTRY_HOSTNAME) -u $(MQ_DELIVERY_REGISTRY_USER) -p $(MQ_DELIVERY_REGISTRY_CREDENTIAL)
|
||||
$(COMMAND) pull $(MQ_DELIVERY_REGISTRY_FULL_PATH)/$(MQ_IMAGE_FULL_RELEASE_NAME)
|
||||
$(COMMAND) tag $(MQ_DELIVERY_REGISTRY_FULL_PATH)/$(MQ_IMAGE_FULL_RELEASE_NAME) $(MQ_IMAGE_ADVANCEDSERVER)\:$(MQ_TAG)
|
||||
|
||||
.PHONY: pull-devserver
|
||||
pull-devserver:
|
||||
$(info $(SPACER)$(shell printf $(TITLE)"Push developer image to $(MQ_DELIVERY_REGISTRY_FULL_PATH)"$(END)))
|
||||
docker login $(MQ_DELIVERY_REGISTRY_HOSTNAME) -u $(MQ_DELIVERY_REGISTRY_USER) -p $(MQ_DELIVERY_REGISTRY_CREDENTIAL)
|
||||
docker pull $(MQ_DELIVERY_REGISTRY_FULL_PATH)/$(MQ_IMAGE_DEV_FULL_RELEASE_NAME)
|
||||
docker tag $(MQ_DELIVERY_REGISTRY_FULL_PATH)/$(MQ_IMAGE_DEV_FULL_RELEASE_NAME) $(MQ_IMAGE_DEV_FULL_RELEASE_NAME)
|
||||
$(info $(SPACER)$(shell printf $(TITLE)"Pull developer image from $(MQ_DELIVERY_REGISTRY_FULL_PATH)"$(END)))
|
||||
$(COMMAND) login $(MQ_DELIVERY_REGISTRY_HOSTNAME) -u $(MQ_DELIVERY_REGISTRY_USER) -p $(MQ_DELIVERY_REGISTRY_CREDENTIAL)
|
||||
$(COMMAND) pull $(MQ_DELIVERY_REGISTRY_FULL_PATH)/$(MQ_IMAGE_DEV_FULL_RELEASE_NAME)
|
||||
$(COMMAND) tag $(MQ_DELIVERY_REGISTRY_FULL_PATH)/$(MQ_IMAGE_DEV_FULL_RELEASE_NAME) $(MQ_IMAGE_DEVSERVER)\:$(MQ_TAG)
|
||||
|
||||
.PHONY: clean
|
||||
clean:
|
||||
|
||||
@@ -1,30 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# © Copyright IBM Corporation 2019
|
||||
#
|
||||
# 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.
|
||||
|
||||
set -e
|
||||
|
||||
if [ ! -z $1 ]; then
|
||||
export ARCH=$1
|
||||
fi
|
||||
|
||||
if [ "$TRAVIS_PULL_REQUEST" != "false" ]; then
|
||||
echo Not pushing as we are a pull request
|
||||
exit 0
|
||||
fi
|
||||
|
||||
echo 'Pushing Production image...' && echo -en 'travis_fold:start:push-advancedserver\\r'
|
||||
make push-advancedserver
|
||||
echo -en 'travis_fold:end:push-advancedserver\\r'
|
||||
@@ -1,96 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# © Copyright IBM Corporation 2019
|
||||
#
|
||||
# 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.
|
||||
|
||||
set -e
|
||||
|
||||
# staging or production
|
||||
TYPE=""
|
||||
MANIFEST_FILE=manifest-9.1.4.yaml
|
||||
|
||||
# set type of release
|
||||
if [ ! -z $1 ]; then
|
||||
case "$1" in
|
||||
staging) TYPE=$1
|
||||
;;
|
||||
production) TYPE=$1
|
||||
;;
|
||||
*) echo "echo Release type ( staging | production ) must passed to release.sh"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
else
|
||||
echo "Release type ( staging | production ) must passed to release.sh"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ TYPE = "staging" ]; then
|
||||
# push developer image to pre-release registry
|
||||
./build-scripts/push-dev.sh amd64
|
||||
./build-scripts/push-dev.sh ppc64le
|
||||
./build-scripts/push-dev.sh s390x
|
||||
|
||||
# staging registry
|
||||
export MQ_DELIVERY_REGISTRY_HOSTNAME=$MQ_STAGING_REGISTRY
|
||||
export MQ_DELIVERY_REGISTRY_USER=$MQ_STAGING_REGISTRY_USER
|
||||
export MQ_DELIVERY_REGISTRY_CREDENTIAL=$MQ_STAGING_REGISTRY_CREDENTIAL
|
||||
|
||||
# push production image to staging registy
|
||||
./build-scripts/push-prod.sh amd64
|
||||
./build-scripts/push-prod.sh ppc64le
|
||||
./build-scripts/push-prod.sh s390x
|
||||
|
||||
elif [ TYPE = "production" ]; then
|
||||
# pull developer image from pre-release registry
|
||||
make pull-devserver
|
||||
# pull production image from staging
|
||||
export MQ_DELIVERY_REGISTRY_HOSTNAME=$MQ_STAGING_REGISTRY
|
||||
export MQ_DELIVERY_REGISTRY_USER=$MQ_STAGING_REGISTRY_USER
|
||||
export MQ_DELIVERY_REGISTRY_CREDENTIAL=$MQ_STAGING_REGISTRY_CREDENTIAL
|
||||
make pull-advancedserver
|
||||
|
||||
# release developer images with fat manifests
|
||||
# dockerhub
|
||||
export MQ_DELIVERY_REGISTRY_HOSTNAME=ibmcom
|
||||
export MQ_DELIVERY_REGISTRY_NAMESPACE=mq
|
||||
export MQ_DELIVERY_REGISTRY_USER=$MQ_DOCKERHUB_REGISTRY_USER
|
||||
export MQ_DELIVERY_REGISTRY_CREDENTIAL=$MQ_DOCKERHUB_REGISTRY_CREDENTIAL
|
||||
# UNCOMMENT WHEN FINISHED TESTING
|
||||
# ./build-scripts/push-dev.sh amd64
|
||||
# ./build-scripts/push-dev.sh ppc64le
|
||||
# ./build-scripts/push-dev.sh s390x
|
||||
|
||||
docker login --username $MQ_DOCKERHUB_REGISTRY_USER --password $MQ_DOCKERHUB_REGISTRY_CREDENTIAL
|
||||
# ./manifest-tool-linux-amd64 push from-spec manifests/dockerhub/$MANIFEST_FILE
|
||||
# ./manifest-tool-linux-amd64 push from-spec manifests/dockerhub/manifest-latest.yaml
|
||||
|
||||
# dockerstore
|
||||
export MQ_DELIVERY_REGISTRY_HOSTNAME=ibmcorp
|
||||
export MQ_DELIVERY_REGISTRY_NAMESPACE=""
|
||||
# ./build-scripts/push-dev.sh amd64
|
||||
# ./build-scripts/push-dev.sh ppc64le
|
||||
# ./build-scripts/push-dev.sh s390x
|
||||
|
||||
# docker login --username $MQ_DOCKERHUB_REGISTRY_USER --password $MQ_DOCKERHUB_REGISTRY_CREDENTIAL
|
||||
# ./manifest-tool-linux-amd64 push from-spec manifests/dockerstore/$MANIFEST_FILE
|
||||
|
||||
# release production image
|
||||
export MQ_DELIVERY_REGISTRY_HOSTNAME=$MQ_PRODUCTION_REGISTRY
|
||||
export MQ_DELIVERY_REGISTRY_USER=$MQ_PRODUCTION_REGISTRY_USER
|
||||
export MQ_DELIVERY_REGISTRY_CREDENTIAL=$MQ_PRODUCTION_REGISTRY_CREDENTIAL
|
||||
# ./build-scripts/push-prod.sh amd64
|
||||
# ./build-scripts/push-prod.sh ppc64le
|
||||
# ./build-scripts/push-prod.sh s390x
|
||||
fi
|
||||
@@ -16,20 +16,14 @@
|
||||
|
||||
set -e
|
||||
|
||||
if [ ! -z $1 ]; then
|
||||
export ARCH=$1
|
||||
echo 'Building Developer JMS test image...' && echo -en 'travis_fold:start:build-devjmstest\\r'
|
||||
make build-devjmstest
|
||||
echo -en 'travis_fold:end:build-devjmstest\\r'
|
||||
echo 'Building Developer image...' && echo -en 'travis_fold:start:build-devserver\\r'
|
||||
make build-devserver
|
||||
echo -en 'travis_fold:end:build-devserver\\r'
|
||||
if [ "$BUILD_ALL" = true ] ; then
|
||||
echo 'Building Production image...' && echo -en 'travis_fold:start:build-advancedserver\\r'
|
||||
make build-advancedserver
|
||||
echo -en 'travis_fold:end:build-advancedserver\\r'
|
||||
fi
|
||||
|
||||
if [ "$ARCH" != "amd64" ] ; then
|
||||
echo No developer image to push as we are not an amd64 build
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if [ "$TRAVIS_PULL_REQUEST" != "false" ]; then
|
||||
echo Not pushing as we are a pull request
|
||||
exit 0
|
||||
fi
|
||||
|
||||
echo 'Pushing Developer image...' && echo -en 'travis_fold:start:push-devserver\\r'
|
||||
make push-devserver
|
||||
echo -en 'travis_fold:end:push-devserver\\r'
|
||||
54
travis-build-scripts/push.sh
Executable file
54
travis-build-scripts/push.sh
Executable file
@@ -0,0 +1,54 @@
|
||||
#!/bin/bash
|
||||
|
||||
# © Copyright IBM Corporation 2019
|
||||
#
|
||||
# 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.
|
||||
|
||||
set -e
|
||||
|
||||
if [ "$TRAVIS_PULL_REQUEST" != "false" ]; then
|
||||
echo "Not pushing as we are a pull request"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if [ ! -z $2 ]; then
|
||||
export ARCH=$2
|
||||
fi
|
||||
|
||||
function push_developer {
|
||||
echo 'Pushing Developer image...' && echo -en 'travis_fold:start:push-devserver\\r'
|
||||
make push-devserver
|
||||
echo -en 'travis_fold:end:push-devserver\\r'
|
||||
}
|
||||
|
||||
function push_production {
|
||||
echo 'Pushing Production image...' && echo -en 'travis_fold:start:push-advancedserver\\r'
|
||||
make push-advancedserver
|
||||
echo -en 'travis_fold:end:push-advancedserver\\r'
|
||||
}
|
||||
|
||||
# call relevant push function
|
||||
if [ ! -z $1 ]; then
|
||||
case "$1" in
|
||||
developer) push_developer
|
||||
;;
|
||||
production) push_production
|
||||
;;
|
||||
*) echo "ERROR: Type ( developer | production ) must be passed to push.sh"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
else
|
||||
echo "ERROR: Type ( developer | production ) must be passed to push.sh"
|
||||
exit 1
|
||||
fi
|
||||
121
travis-build-scripts/release.sh
Executable file
121
travis-build-scripts/release.sh
Executable file
@@ -0,0 +1,121 @@
|
||||
#!/bin/bash
|
||||
|
||||
# © Copyright IBM Corporation 2019
|
||||
#
|
||||
# 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.
|
||||
|
||||
set -e
|
||||
|
||||
# staging or production
|
||||
TYPE=""
|
||||
MANIFEST_FILE=manifest-9.1.4.yaml
|
||||
|
||||
# set type of release
|
||||
if [ ! -z $1 ]; then
|
||||
case "$1" in
|
||||
staging) TYPE=$1
|
||||
;;
|
||||
production) TYPE=$1
|
||||
;;
|
||||
*) echo "ERROR: Release type ( staging | production ) must passed to release.sh"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
else
|
||||
echo "ERROR: Release type ( staging | production ) must passed to release.sh"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
## Pull all images from default repository
|
||||
ARCH=amd64 make pull-devserver
|
||||
ARCH=ppc64le make pull-devserver
|
||||
ARCH=s390x make pull-devserver
|
||||
|
||||
ARCH=amd64 make pull-advancedserver
|
||||
ARCH=ppc64le make pull-advancedserver
|
||||
ARCH=s390x make pull-advancedserver
|
||||
|
||||
|
||||
function set_staging_registry {
|
||||
export MQ_DELIVERY_REGISTRY_HOSTNAME=$MQ_STAGING_REGISTRY
|
||||
export MQ_DELIVERY_REGISTRY_NAMESPACE=""
|
||||
export MQ_DELIVERY_REGISTRY_USER=$MQ_STAGING_REGISTRY_USER
|
||||
export MQ_DELIVERY_REGISTRY_CREDENTIAL=$MQ_STAGING_REGISTRY_CREDENTIAL
|
||||
}
|
||||
|
||||
function set_docker_hub {
|
||||
export MQ_DELIVERY_REGISTRY_HOSTNAME=ibmcom
|
||||
export MQ_DELIVERY_REGISTRY_NAMESPACE=mq
|
||||
export MQ_DELIVERY_REGISTRY_USER=$MQ_DOCKERHUB_REGISTRY_USER
|
||||
export MQ_DELIVERY_REGISTRY_CREDENTIAL=$MQ_DOCKERHUB_REGISTRY_CREDENTIAL
|
||||
}
|
||||
|
||||
function set_docker_store {
|
||||
export MQ_DELIVERY_REGISTRY_HOSTNAME=ibmcorp
|
||||
export MQ_DELIVERY_REGISTRY_NAMESPACE=""
|
||||
export MQ_DELIVERY_REGISTRY_USER=$MQ_DOCKERHUB_REGISTRY_USER
|
||||
export MQ_DELIVERY_REGISTRY_CREDENTIAL=$MQ_DOCKERHUB_REGISTRY_CREDENTIAL
|
||||
}
|
||||
|
||||
function set_production_registry {
|
||||
export MQ_DELIVERY_REGISTRY_HOSTNAME=$MQ_PRODUCTION_REGISTRY
|
||||
export MQ_DELIVERY_REGISTRY_NAMESPACE=""
|
||||
export MQ_DELIVERY_REGISTRY_USER=$MQ_PRODUCTION_REGISTRY_USER
|
||||
export MQ_DELIVERY_REGISTRY_CREDENTIAL=$MQ_PRODUCTION_REGISTRY_CREDENTIAL
|
||||
}
|
||||
|
||||
if [ "$TYPE" = "staging" ]; then
|
||||
|
||||
set_staging_registry
|
||||
|
||||
# push production images to staging registy
|
||||
./travis-build-scripts/push.sh production amd64
|
||||
./travis-build-scripts/push.sh production ppc64le
|
||||
./travis-build-scripts/push.sh production s390x
|
||||
|
||||
elif [ "$TYPE" = "production" ]; then
|
||||
|
||||
# pull production images from staging
|
||||
set_staging_registry
|
||||
|
||||
ARCH=amd64 make pull-advancedserver
|
||||
ARCH=ppc64le make pull-advancedserver
|
||||
ARCH=s390x make pull-advancedserver
|
||||
|
||||
# release developer images with fat manifests
|
||||
set_docker_hub
|
||||
|
||||
./travis-build-scripts/push.sh developer amd64
|
||||
./travis-build-scripts/push.sh developer ppc64le
|
||||
./travis-build-scripts/push.sh developer s390x
|
||||
|
||||
docker login --username $MQ_DOCKERHUB_REGISTRY_USER --password $MQ_DOCKERHUB_REGISTRY_CREDENTIAL
|
||||
./manifest-tool-linux-amd64 push from-spec manifests/dockerhub/$MANIFEST_FILE
|
||||
./manifest-tool-linux-amd64 push from-spec manifests/dockerhub/manifest-latest.yaml
|
||||
|
||||
set_docker_store
|
||||
|
||||
./travis-build-scripts/push.sh developer amd64
|
||||
./travis-build-scripts/push.sh developer ppc64le
|
||||
./travis-build-scripts/push.sh developer s390x
|
||||
|
||||
docker login --username $MQ_DOCKERHUB_REGISTRY_USER --password $MQ_DOCKERHUB_REGISTRY_CREDENTIAL
|
||||
./manifest-tool-linux-amd64 push from-spec manifests/dockerstore/$MANIFEST_FILE
|
||||
|
||||
# release production image
|
||||
set_production_registry
|
||||
|
||||
./travis-build-scripts/push.sh production amd64
|
||||
./travis-build-scripts/push.sh production ppc64le
|
||||
./travis-build-scripts/push.sh production s390x
|
||||
fi
|
||||
@@ -21,17 +21,16 @@ if [ "$(uname -m)" = "x86_64" ] ; then export ARCH="amd64" ; else export ARCH=$(
|
||||
echo 'Downgrading Docker (if necessary)...' && echo -en 'travis_fold:start:docker-downgrade\\r'
|
||||
eval "$DOCKER_DOWNGRADE"
|
||||
echo -en 'travis_fold:end:docker-downgrade\\r'
|
||||
if [ "$ARCH" = "amd64" ] ; then
|
||||
echo 'Building Developer JMS test image...' && echo -en 'travis_fold:start:build-devjmstest\\r'
|
||||
make build-devjmstest
|
||||
echo -en 'travis_fold:end:build-devjmstest\\r'
|
||||
echo 'Building Developer image...' && echo -en 'travis_fold:start:build-devserver\\r'
|
||||
make build-devserver
|
||||
echo -en 'travis_fold:end:build-devserver\\r'
|
||||
fi
|
||||
|
||||
## Build images
|
||||
./travis-build-scripts/build.sh
|
||||
|
||||
## Test images
|
||||
./travis-build-scripts/test.sh
|
||||
|
||||
## Push images
|
||||
if [ "$BUILD_ALL" = true ] ; then
|
||||
echo 'Building Production image...' && echo -en 'travis_fold:start:build-advancedserver\\r'
|
||||
make build-advancedserver
|
||||
echo -en 'travis_fold:end:build-advancedserver\\r'
|
||||
./travis-build-scripts/push.sh developer
|
||||
./travis-build-scripts/push.sh production
|
||||
fi
|
||||
./build-scripts/test.sh
|
||||
|
||||
@@ -16,11 +16,9 @@
|
||||
|
||||
set -e
|
||||
|
||||
if [ "$ARCH" = "amd64" ] ; then
|
||||
echo 'Testing Developer image...' && echo -en 'travis_fold:start:test-devserver\\r'
|
||||
make test-devserver
|
||||
echo -en 'travis_fold:end:test-devserver\\r'
|
||||
fi
|
||||
echo 'Testing Developer image...' && echo -en 'travis_fold:start:test-devserver\\r'
|
||||
make test-devserver
|
||||
echo -en 'travis_fold:end:test-devserver\\r'
|
||||
if [ "$BUILD_ALL" = true ] ; then
|
||||
echo 'Testing Production image...' && echo -en 'travis_fold:start:test-advancedserver\\r'
|
||||
make test-advancedserver
|
||||
@@ -33,7 +31,3 @@ else
|
||||
echo "Gosec not available on ppc64le/s390x...skipping gosec scan"
|
||||
fi
|
||||
echo -en 'travis_fold:end:gosec-scan\\r'
|
||||
if [ "$BUILD_ALL" = true ] ; then
|
||||
./build-scripts/push-dev.sh
|
||||
./build-scripts/push-prod.sh
|
||||
fi
|
||||
Reference in New Issue
Block a user