iocaine/.forgejo/workflows/build.yaml

75 lines
1.6 KiB
YAML
Raw Normal View History

## SPDX-FileCopyrightText: 2025 Gergely Nagy
## SPDX-FileContributor: Gergely Nagy
##
## SPDX-License-Identifier: MIT
name: build
on:
push:
branches:
- 'main'
paths:
- '.forgejo/workflows/build.yaml'
- 'flake.nix'
- 'flake.lock'
- 'nix/**'
- 'Cargo.*'
- 'src/**'
- 'templates/**'
jobs:
build:
runs-on: nixos-latest
steps:
- name: checkout
uses: actions/checkout@v4
- name: setup magic attic cache
uses: actions/magic-attic-cache@main
with:
ATTIC_TOKEN: ${{ secrets.ATTIC_TOKEN }}
- name: build
uses: actions/nix/build@main
with:
logs: true
package: iocaine
- name: build the container image
uses: actions/nix/build@main
with:
logs: true
package: container-image
- name: load the container image into docker
run: |
docker load <result
- name: login to the container registry
uses: https://code.forgejo.org/docker/login-action@v2
with:
registry: git.madhouse-project.org
username: algernon
password: ${{ secrets.DOCKER_PASSWORD }}
- name: publish
run:
docker push git.madhouse-project.org/algernon/iocaine:latest
clippy:
runs-on: nixos-latest
steps:
- name: checkout
uses: actions/checkout@v4
- name: setup magic attic cache
uses: actions/magic-attic-cache@main
with:
ATTIC_TOKEN: ${{ secrets.ATTIC_TOKEN }}
- name: clippy
uses: actions/nix/develop@main
with:
run: cargo clippy