From f20a1a7bfd67381913985551a3c91eb65524642d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Javier=20B=C3=A9rtoli?= Date: Thu, 14 Nov 2019 07:16:31 -0300 Subject: [PATCH] feat(dockerhub): deploy images fix(travis): add deploy condition --- .travis.yml | 34 +++++++++++++++++++++------------- 1 file changed, 21 insertions(+), 13 deletions(-) diff --git a/.travis.yml b/.travis.yml index 6a6c224..e421049 100644 --- a/.travis.yml +++ b/.travis.yml @@ -10,6 +10,9 @@ services: - docker env: + global: + - TRAVIS_SECURE_ENV_VARS: true + # VARS: # DN: distro name (amazonlinux, archlinux, centos, debian, fedora, opensuse, ubuntu) # DV: distro version @@ -86,8 +89,7 @@ env: # adding the inspec license-accepted file as different lines because of # https://travis-ci.community/t/multiline-commands-have-two-spaces-in-front-breaks-heredocs/2756/4 before_install: - - gem install inspec - - gem install inspec-bin + - gem install inspec inspec-bin - mkdir -p ~/.chef/accepted_licenses - "echo '---' > ~/.chef/accepted_licenses/inspec" - "echo 'name: inspec' >> ~/.chef/accepted_licenses/inspec" @@ -100,21 +102,27 @@ before_install: install: - export TAG=$(echo ${DN} | sed "s#/#-#g")-${DV} - "echo \"Building: ${TAG}\"" - - | - docker build . \ - --file "Dockerfile.${PI}" \ - --tag "${TAG}" \ - --build-arg DISTRO_NAME="${DN}" \ - --build-arg DISTRO_VERSION="${DV}" \ - --build-arg SALT_VERSION="${SV}" \ - --build-arg SALT_INSTALL_METHOD="${SIM}" \ - --build-arg PYTHON_VERSION="${PV}" \ + - docker build . + --file "Dockerfile.${PI}" + --tag "${TAG}" + --build-arg DISTRO_NAME="${DN}" + --build-arg DISTRO_VERSION="${DV}" + --build-arg SALT_VERSION="${SV}" + --build-arg SALT_INSTALL_METHOD="${SIM}" + --build-arg PYTHON_VERSION="${PV}" --build-arg EXTRA_PACKAGES="${EP}" script: - docker run --detach=true --name "inspec-${DN}-${TAG}" "${TAG}" tail -f /dev/null - inspec exec test/integration --input py_version="${PV}" salt_version="${SV}" --target=docker://"inspec-${DN}-${TAG}" +# Using after_success because deploy does not support docker. after_success: - # - "echo \"${DOCKERHUB_PASSWORD}\" | docker login -u \"${DOCKERHUB_USER}\" --password-stdin" - - "echo docker push ${DOCKERHUB_USER}/salt-${SV}-py${PV}:${TAG}" + - test $TRAVIS_BRANCH = "master" && + echo Push to DockerHub + - test $TRAVIS_BRANCH = "master" && + echo "${DOCKERHUB_PASSWORD}" | docker login -u "${DOCKERHUB_USER}" --password-stdin + - test $TRAVIS_BRANCH = "master" && + docker tag ${TAG} ${DOCKERHUB_USER}/salt-${SV}-py${PV}:${TAG} + - test $TRAVIS_BRANCH = "master" && + docker push ${DOCKERHUB_USER}/salt-${SV}-py${PV}:${TAG}