ovlach_frontend/.gitea/workflows/release_docker.yaml

58 lines
2.4 KiB
YAML
Raw Normal View History

2023-12-03 14:46:05 +00:00
name: release
run-name: release
on:
push:
branches:
- master
jobs:
tests:
2023-12-03 18:22:18 +00:00
name: tests
runs-on: ubuntu-latest
steps:
- uses: https://github.com/actions/checkout.git@v4
- name: tests
uses: nanobyte-public/rust-action@master
with:
args: |
CARGO_HOME=./.cache cargo-nan \"Bearer ${{secrets.deployment_package}}\" cargo clippy -- -Dwarnings && \
CARGO_HOME=./.cache cargo-nan \"Bearer ${{secrets.deployment_package}}\" cargo clippy --tests -- -Dwarnings && \
CARGO_HOME=./.cache cargo-nan \"Bearer ${{secrets.deployment_package}}\" cargo test
2023-12-08 23:56:30 +00:00
docker:
name: docker
2023-12-03 14:46:05 +00:00
runs-on: ubuntu-latest
needs: [tests] # require tests to pass before deploy runs
container:
image: ovlach/docker-gitea:v0.0.2-alpha
steps:
- uses: https://github.com/actions/checkout.git@v4
- name: Login to git.nanobyte.cz
uses: https://github.com/docker/login-action@v3
with:
username: ${{ secrets.DEPLOYMENT_PACKAGE }}
password: ${{ secrets.DEPLOYMENT_PACKAGE }}
registry: git.nanobyte.cz
- name: Get short hash from git repository
id: git
run: echo "::set-output name=short_hash::$(git rev-parse --short HEAD)"
- name: Build and push docker
run: |
2023-12-03 18:22:18 +00:00
docker build . -t git.nanobyte.cz/$GITHUB_REPOSITORY_OWNER/ovlach_frontend:${{steps.git.outputs.short_hash}} --build-arg GITEA_TOKEN="Bearer ${{secrets.DEPLOYMENT_PACKAGE}}" && \
docker push git.nanobyte.cz/$GITHUB_REPOSITORY_OWNER/ovlach_frontend:${{steps.git.outputs.short_hash}}
2023-12-08 23:56:30 +00:00
stage_deployment:
name: stage-deployment
runs-on: ubuntu-latest
needs: [docker] # require tests to pass before deploy runs
steps:
- name: Install kustomize
run: |
apt-get update && apt-get install -y curl && curl -s "https://raw.githubusercontent.com/kubernetes-sigs/kustomize/master/hack/install_kustomize.sh" | bash
- uses: https://github.com/actions/checkout.git@v4
with:
ssh: '${{ secrets.VLACH_XYZ_DEPLOY }}'
path: 'vlach_xyz_deploy'
repository: 'git@git.nanobyte.cz:ovlach/vlach_xyz.git'
ref: 'master'
- name: Update images
run: |
cd vlach_xyz_deploy && kustomize edit set image web=git.nanobyte.cz/$GITHUB_REPOSITORY_OWNER/ovlach_frontend:${{steps.git.outputs.short_hash}} && git add . && git commit -m "upgrade ovlach_frontend -> ${{steps.git.outputs.short_hash}}" && git push origin master