diff --git a/.forgejo/workflows/build.nix b/.forgejo/workflows/build.nix new file mode 100644 index 0000000..c715472 --- /dev/null +++ b/.forgejo/workflows/build.nix @@ -0,0 +1,12 @@ +{pkgs?import{}}:let + stdenv = pkgs.clang19Stdenv; + name = "tengri"; + nativeBuildInputs = with pkgs; [ grcov time rustup cloc just pkg-config libclang ]; + buildInputs = with pkgs; [ libclang ]; + LIBCLANG_PATH = "${pkgs.libclang.lib.outPath}/lib"; + LD_LIBRARY_PATH = pkgs.lib.makeLibraryPath (with pkgs; []); +in pkgs.mkShell.override { + inherit stdenv; +} { + inherit name nativeBuildInputs buildInputs LIBCLANG_PATH LD_LIBRARY_PATH; +} diff --git a/.forgejo/workflows/build.yaml b/.forgejo/workflows/build.yaml new file mode 100644 index 0000000..c3b0230 --- /dev/null +++ b/.forgejo/workflows/build.yaml @@ -0,0 +1,15 @@ +on: [push] +jobs: + build: + container: + image: nixos/nix:latest + steps: + - run: nix-channel --list && nix-channel --update + - run: nix-shell --cores 4 -p git --command 'git clone --recursive $GITHUB_SERVER_URL/$GITHUB_REPOSITORY .' + - run: whoami && pwd && ls -al + - run: nix-shell --cores 4 --command 'cloc src/ && cloc .' .forgejo/workflows/build.nix + - run: nix-shell --cores 4 --command 'rustup install nightly && cargo version -vv' .forgejo/workflows/build.nix + - run: nix-shell --cores 4 --command 'just cov-md' .forgejo/workflows/build.nix + - run: nix-shell --cores 4 --command 'just doc' .forgejo/workflows/build.nix + - run: nix-shell --cores 4 --command 'just build-release' .forgejo/workflows/build.nix + #- run: nix-shell -p docker --command "docker run --security-opt seccomp=unconfined -v $PWD:/volume xd009642/tarpaulin cargo tarpaulin --out Html --all-features"