This commit is contained in:
parent
7ce90f7d14
commit
d702b2d7d2
1 changed files with 70 additions and 0 deletions
70
.forgejo/workflows/build.yml
Normal file
70
.forgejo/workflows/build.yml
Normal file
|
|
@ -0,0 +1,70 @@
|
||||||
|
name: Build and Test
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: ["**"]
|
||||||
|
pull_request:
|
||||||
|
|
||||||
|
env:
|
||||||
|
DOCKER_TLS_CERTDIR: /certs
|
||||||
|
IMAGE_TAG: ${{ github.sha }}
|
||||||
|
SHORT_SHA: ${{ github.sha }}
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
splatie:
|
||||||
|
runs-on: debian-trixie
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout repository
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
with:
|
||||||
|
submodules: recursive
|
||||||
|
|
||||||
|
- name: Cache container storage
|
||||||
|
uses: actions/cache@v4
|
||||||
|
with:
|
||||||
|
path: |
|
||||||
|
/var/lib/containers/storage
|
||||||
|
/run/containers/storage
|
||||||
|
~/.local/share/containers/storage
|
||||||
|
key: image-cache
|
||||||
|
|
||||||
|
- name: Login to registry
|
||||||
|
run: podman login -u ${{ secrets.PACKAGE_USER }} -p ${{ secrets.PACKAGE_PWD }} git.spbr.net
|
||||||
|
|
||||||
|
- name: Set short SHA
|
||||||
|
run: echo "SHORT_SHA=${GITHUB_SHA::6}" >> $GITHUB_ENV
|
||||||
|
|
||||||
|
- name: Run tests
|
||||||
|
run: cargo test
|
||||||
|
|
||||||
|
- name: Build and push
|
||||||
|
env:
|
||||||
|
CI_REGISTRY_IMAGE: git.spbr.net/${{ forgejo.repository }}
|
||||||
|
CI_COMMIT_SHORT_SHA: ${{ env.SHORT_SHA }}
|
||||||
|
run: |
|
||||||
|
podman login -u ${{ secrets.PACKAGE_USER }} -p ${{ secrets.PACKAGE_PWD }} git.spbr.net
|
||||||
|
podman build -t "$CI_REGISTRY_IMAGE:$CI_COMMIT_SHORT_SHA" .
|
||||||
|
podman push "$CI_REGISTRY_IMAGE:$CI_COMMIT_SHORT_SHA"
|
||||||
|
|
||||||
|
- name: Push retagged branch
|
||||||
|
env:
|
||||||
|
CI_REGISTRY_IMAGE: git.spbr.net/${{ forgejo.repository }}
|
||||||
|
CI_COMMIT_SHORT_SHA: ${{ forgejo.ref_name }}
|
||||||
|
CI_COMMIT_PREVIOUS_SHA: ${{ env.SHORT_SHA }}
|
||||||
|
run: |
|
||||||
|
podman login -u ${{ secrets.PACKAGE_USER }} -p ${{ secrets.PACKAGE_PWD }} git.spbr.net
|
||||||
|
podman pull "$CI_REGISTRY_IMAGE:$CI_COMMIT_PREVIOUS_SHA"
|
||||||
|
podman tag "$CI_REGISTRY_IMAGE:$CI_COMMIT_PREVIOUS_SHA" "$CI_REGISTRY_IMAGE:$CI_COMMIT_SHORT_SHA"
|
||||||
|
podman push "$CI_REGISTRY_IMAGE:$CI_COMMIT_SHORT_SHA"
|
||||||
|
|
||||||
|
- name: Push retagged latest
|
||||||
|
env:
|
||||||
|
CI_REGISTRY_IMAGE: git.spbr.net/${{ forgejo.repository }}
|
||||||
|
CI_COMMIT_SHORT_SHA: latest
|
||||||
|
CI_COMMIT_PREVIOUS_SHA: ${{ env.SHORT_SHA }}
|
||||||
|
run: |
|
||||||
|
podman login -u ${{ secrets.PACKAGE_USER }} -p ${{ secrets.PACKAGE_PWD }} git.spbr.net
|
||||||
|
podman pull "$CI_REGISTRY_IMAGE:$CI_COMMIT_PREVIOUS_SHA"
|
||||||
|
podman tag "$CI_REGISTRY_IMAGE:$CI_COMMIT_PREVIOUS_SHA" "$CI_REGISTRY_IMAGE:$CI_COMMIT_SHORT_SHA"
|
||||||
|
podman push "$CI_REGISTRY_IMAGE:$CI_COMMIT_SHORT_SHA"
|
||||||
Loading…
Add table
Add a link
Reference in a new issue