gun/.github/workflows/release-dockerhub.yml
Torsten Curdt 0eec835c31
cleaning up and improving the CI/CD pipeline (#1122)
* no artifacts, not required

* renamed

* cleanup and comments

* pass build args

* two-step docker build
2021-08-30 14:26:44 -07:00

45 lines
1.2 KiB
YAML

name: dockerhub
on:
release:
types: [ published ]
env:
project: 'gun'
jobs:
dockerhub:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Build
run: |
docker build -t ${{ env.project }} .
- name: Login
env:
DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }}
DOCKERHUB_TOKEN: ${{ secrets.DOCKERHUB_TOKEN }}
run: echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u ${{ secrets.DOCKERHUB_USERNAME }} --password-stdin
- name: Build
run: |
echo "SHA=$GITHUB_SHA"
docker build --build-arg \
SHA=$GITHUB_SHA \
BUILD_DATE=$(date +'%Y-%m-%d') \
VCS_REF=${GITHUB_REF/refs\/tags\/v/} \
VCS_URL=$GITHUB_SERVER_URL}/${GITHUB_REPOSITORY} \
VERSION=${GITHUB_REF/refs\/tags\/v/} \
--label "sha=$GITHUB_SHA" \
--tag ${{ secrets.DOCKERHUB_USERNAME }}/${{ env.project }}:${GITHUB_REF/refs\/tags\/v/} \
--tag ${{ secrets.DOCKERHUB_USERNAME }}/${{ env.project }}:latest \
.
- name: Push
run: docker push ${{ secrets.DOCKERHUB_USERNAME }}/${{ env.project }}