Compare commits

..

2 commits

Author SHA1 Message Date
7dc6eb305d Document NixOs deployment 2026-03-02 12:28:01 +01:00
da304b96a9 ci: Deploy taskbot in this repository 2026-03-02 12:26:43 +01:00
3 changed files with 54 additions and 1 deletions

View file

@ -0,0 +1,36 @@
let
# Tracking nixpkgs/nixos-25.11 as of 2026-03-02.
nixpkgsSrc = fetchTarball {
url = "https://github.com/NixOS/nixpkgs/archive/1267bb4920d0fc06ea916734c11b0bf004bbe17e.tar.gz";
sha256 = "sha256:0sjac485rc346hpj5dvidh3lqdlq5lp7y7glicibgxqizrb90dpc";
};
# Tracking TaskBot main as of 2026-03-02.
taskbotSrc = fetchTarball {
url = "https://git.fa-fo.de/rahix/TaskBot/archive/0978ed7b5e86589728d538f0fe72e1a86018b0a5.tar.gz";
sha256 = "sha256:0x9bw0vbhl8x83jik40qv4ylvp29dl2ixzrkn3l43f5hym5fqjca";
};
in with import nixpkgsSrc {}; let
taskbot = pkgs.rustPlatform.buildRustPackage (f: {
pname = "taskbot";
version = "main";
src = taskbotSrc;
nativeBuildInputs = with pkgs; [
pkg-config
];
buildInputs = with pkgs; [
openssl
];
cargoLock.lockFile = "${taskbotSrc}/Cargo.lock";
});
in pkgs.mkShell {
name = "taskbot";
buildInputs = [
taskbot
];
}

View file

@ -0,0 +1,15 @@
on:
schedule:
- cron: '0 8,18 * * *'
# For testing:
# push:
# branches:
# - 'poc'
jobs:
build:
runs-on: self-hosted-nixos-x86_64
steps:
- uses: https://code.forgejo.org/actions/checkout@v4
- name: Run TaskBot
run: nix-shell .forgejo/script/taskbot.nix --run "fafo-taskbot"

View file

@ -26,4 +26,6 @@ RUST_LOG=debug cargo run
TaskBot is meant to run in CI where it automatically attaches to the issues of
the repository it is running from. It should run on a daily schedule.
Documentation on CI integration is TBD.
For NixOS runners, you can check
[`.forgejo/workflows/taskbot.yml`](./.forgejo/workflows/taskbot.yml) and the
associated [`taskbot.nix`](./.forgejo/script/taskbot.nix).