feat(ci): better rust CI

This commit is contained in:
spiral 2023-02-26 17:13:56 -05:00
parent c6c5ae1496
commit 4c6217c48b
4 changed files with 32 additions and 8 deletions

View file

@ -1,41 +0,0 @@
# todo: use https://github.com/jpribyl/action-docker-layer-caching
# todo: make this generic for all Rust images in this repo
# todo: don't use docker/build-push-action
# todo: run builds on pull request
name: Build and push API Docker image
on:
push:
branches:
- main
- 'rust-api'
paths:
- 'lib/pklib/**'
- 'services/api/**'
jobs:
deploy:
runs-on: ubuntu-latest
permissions:
packages: write
if: github.repository == 'PluralKit/PluralKit'
steps:
- uses: docker/login-action@v1
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.CR_PAT }}
- uses: actions/checkout@v2
- run: echo "BRANCH_NAME=${GITHUB_REF#refs/heads/}" >> $GITHUB_ENV
- uses: docker/build-push-action@v2
with:
# https://github.com/docker/build-push-action/issues/378
context: .
file: Dockerfile.rust
push: true
tags: |
ghcr.io/pluralkit/api:${{ env.BRANCH_NAME }}
ghcr.io/pluralkit/api:${{ github.sha }}
ghcr.io/pluralkit/api:latest
cache-from: type=registry,ref=ghcr.io/pluralkit/pluralkit:${{ env.BRANCH_NAME }}
cache-to: type=inline