diff --git a/.github/workflows/build_container_image.yaml b/.github/workflows/build_container_image.yaml new file mode 100644 index 00000000000..3c11ea3f064 --- /dev/null +++ b/.github/workflows/build_container_image.yaml @@ -0,0 +1,53 @@ +name: Build Container Image +on: + push: + branches: + - 'release*' + - anvil +concurrency: + group: docker-build-${{ github.ref }} + cancel-in-progress: true +jobs: + build: + name: Build container image + runs-on: ubuntu-latest + if: github.repository_owner == 'galaxyproject' + steps: + - uses: actions/checkout@v2 + # https://stackoverflow.com/questions/59810838/how-to-get-the-short-sha-for-the-github-workflow + - name: Set outputs + id: vars + run: echo "::set-output name=sha_short::$(git rev-parse --short HEAD)" + - name: Set branch name + id: branch + run: echo "::set-output name=name::$(BRANCH_NAME=${GITHUB_REF##*/}; echo ${BRANCH_NAME/release_/}-auto)" + - name: Login to docker hub + uses: actions-hub/docker/login@master + env: + DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }} + DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }} + - run: docker build . -t galaxy/galaxy-min:${{ steps.vars.outputs.sha_short }} -f .k8s_ci.Dockerfile + - name: Push to docker hub with commit ID + uses: actions-hub/docker@master + with: + args: push galaxy/galaxy-min:${{ steps.vars.outputs.sha_short }} + - run: docker tag galaxy/galaxy-min:${{ steps.vars.outputs.sha_short }} galaxy/galaxy-min:${{ steps.branch.outputs.name }} + - name: Push to docker hub with branch name + uses: actions-hub/docker@master + with: + args: push galaxy/galaxy-min:${{ steps.branch.outputs.name }} + - run: docker tag galaxy/galaxy-min:${{ steps.vars.outputs.sha_short }} quay.io/galaxy-k8s/galaxy:${{ steps.branch.outputs.name }} && docker tag galaxy/galaxy-min:${{ steps.vars.outputs.sha_short }} quay.io/galaxy-k8s/galaxy:${{ steps.vars.outputs.sha_short }} + - name: Login to docker hub + uses: actions-hub/docker/login@master + env: + DOCKER_USERNAME: ${{ secrets.QUAY_USERNAME }} + DOCKER_PASSWORD: ${{ secrets.QUAY_PASSWORD }} + DOCKER_REGISTRY_URL: quay.io + - name: Push to quay.io with commit ID + uses: actions-hub/docker@master + with: + args: push quay.io/galaxy-k8s/galaxy:${{ steps.vars.outputs.sha_short }} + - name: Push to quay.io with branch name + uses: actions-hub/docker@master + with: + args: push quay.io/galaxy-k8s/galaxy:${{ steps.branch.outputs.name }}