diff --git a/.github/workflows/publish-to-dockerhub.yml b/.github/workflows/publish-to-dockerhub.yml new file mode 100644 index 0000000..7c999f9 --- /dev/null +++ b/.github/workflows/publish-to-dockerhub.yml @@ -0,0 +1,35 @@ +name: Publish image to Dockerhub + +on: + push: + branches: + - master + workflow_dispatch: + inputs: + branch_name: + description: Branch to build from + default: master + required: true +jobs: + push: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + if: github.event_name == 'workflow_dispatch' + with: + ref: '${{ github.event.inputs.branch_name }}' + - uses: actions/checkout@v4 + if: github.event_name == 'push' + - name: Login to DockerHub + uses: docker/login-action@v3 + with: + username: ${{ secrets.DOCKER_USERNAME }} + password: ${{ secrets.DOCKER_PASSWORD }} + - name: Push image + env: + DOCKERHUB_ACCOUNT: ${{ secrets.DOCKERHUB_ACCOUNT }} + DOCKERHUB_REPO: ${{ secrets.DOCKERHUB_REPO }} + run: | + export VERSION=`git rev-parse --short=7 HEAD` + echo "Publishing a Docker image with a tag $VERSION" + docker-compose build && docker-compose push && unset VERSION