name: Docker Image CI Ontime V2 on: push: tags: [ "*" ] workflow_dispatch: jobs: publish_docker: runs-on: ubuntu-latest env: CI: '' steps: - uses: actions/checkout@v3 - name: Setup env run: echo "RELEASE_VERSION=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV - name: Setup Node.js environment uses: actions/setup-node@v3.6.0 with: version: 16.16.0 - name: Setup pnpm uses: pnpm/action-setup@v2 with: version: 8 - name: Install dependencies run: pnpm install --frozen-lockfile - name: Build project packages env: SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }} run: pnpm turbo build:docker - name: Docker Login uses: docker/login-action@v2.1.0 with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - name: Docker Setup Buildx uses: docker/setup-buildx-action@v2.5.0 - name: Build and push Docker images uses: docker/build-push-action@v4.0.0 with: context: . file: ./Dockerfile platforms: linux/amd64,linux/arm64,linux/arm/v7,linux/arm/v6 # Push is a shorthand for --output=type=registry push: true tags: ${{ secrets.DOCKERHUB_USERNAME }}/ontime:${{ env.RELEASE_VERSION }} , ${{ secrets.DOCKERHUB_USERNAME }}/ontime:latest