name: Publish Cargo and Docker package run-name: ${{ github.actor }} is building ${{ github.repository }} on: push: tags: - 'v**' jobs: Publish-Cargo: runs-on: ubuntu-latest steps: - run: echo "The job was automatically triggered by a ${{ github.event_name }} event." - run: echo "This job is now running on a ${{ runner.os }}." - run: echo "The name of your branch is ${{ github.ref }} and your repository is ${{ github.repository }}." - name: Install minimal Rust uses: https://github.com/actions-rs/toolchain@v1 with: toolchain: stable profile: minimal - name: Check out repository code uses: actions/checkout@v3 - name: Publish uses: https://github.com/actions-rs/cargo@v1 with: command: publish args: --index=https://git.raptorpond.com/henine/_cargo-index.git --token "Bearer ${{ secrets.PACKAGE_TOKEN }}" Publish-Docker: runs-on: ubuntu-latest needs: Publish-Cargo steps: - name: Check out repository code uses: https://github.com/actions/checkout@v3 - name: Write release version run: | RULEBOT_VERSION=${GITHUB_REF_NAME#v} echo Version: $RULEBOT_VERSION echo "RULEBOT_VERSION=$RULEBOT_VERSION" >> $GITHUB_ENV - name: Install Docker run: curl -fsSL https://get.docker.com | sh - name: Set up Docker Buildx uses: https://github.com/docker/setup-buildx-action@v2 - name: Login to registry uses: docker/login-action@v2 with: registry: git.raptorpond.com username: henine password: "${{ secrets.PACKAGE_TOKEN }}" - name: Build and push uses: https://github.com/docker/build-push-action@v2 with: context: . file: ./Dockerfile push: true tags: | git.raptorpond.com/${{ github.repository }}:latest git.raptorpond.com/${{ github.repository }}:${{ env.RULEBOT_VERSION }}