diff --git a/.github/workflows/nodes.yml b/.github/workflows/nodes.yml index 25dc28b7..f6450155 100644 --- a/.github/workflows/nodes.yml +++ b/.github/workflows/nodes.yml @@ -181,6 +181,57 @@ jobs: command: ci-build-cache quiet: false stdin: ${{ runner.temp }}/ci.build.cache + litterbox: + name: nodes-litterbox + runs-on: ubuntu-latest + steps: + - id: checkout + name: git clone + uses: actions/checkout@v4 + with: + submodules: false + - id: nix-install + name: nix install + uses: arcnmx/ci/actions/nix/install@v0.7 + - id: ci-dirty + name: nix test dirty + uses: arcnmx/ci/actions/nix/run@v0.7 + with: + attrs: ci.job.litterbox.run.test + command: ci-build-dirty + quiet: false + stdout: ${{ runner.temp }}/ci.build.dirty + - id: ci-test + name: nix test build + uses: arcnmx/ci/actions/nix/run@v0.7 + with: + attrs: ci.job.litterbox.run.test + command: ci-build-realise + ignore-exit-code: true + quiet: false + stdin: ${{ runner.temp }}/ci.build.dirty + - env: + CI_EXIT_CODE: ${{ steps.ci-test.outputs.exit-code }} + id: ci-summary + name: nix test results + uses: arcnmx/ci/actions/nix/run@v0.7 + with: + attrs: ci.job.litterbox.run.test + command: ci-build-summarise + quiet: false + stdin: ${{ runner.temp }}/ci.build.dirty + stdout: ${{ runner.temp }}/ci.build.cache + - env: + CACHIX_SIGNING_KEY: ${{ secrets.CACHIX_SIGNING_KEY }} + id: ci-cache + if: always() + name: nix test cache + uses: arcnmx/ci/actions/nix/run@v0.7 + with: + attrs: ci.job.litterbox.run.test + command: ci-build-cache + quiet: false + stdin: ${{ runner.temp }}/ci.build.cache mediabox: name: nodes-mediabox runs-on: ubuntu-latest diff --git a/ci/flake-cron.nix b/ci/flake-cron.nix index 14918cd6..833ef846 100644 --- a/ci/flake-cron.nix +++ b/ci/flake-cron.nix @@ -64,7 +64,7 @@ in { displayName = "flake update build"; environment = ["CACHIX_SIGNING_KEY" "GITHUB_REF"]; command = let - filteredHosts = [ "hakurei" "reimu" "aya" "tei" "mediabox" ]; + filteredHosts = [ "hakurei" "reimu" "aya" "tei" "litterbox" "mediabox" ]; gcBetweenHosts = false; nodeBuildString = concatMapStringsSep " && " (node: "nix build -Lf . nixosConfigurations.${node}.config.system.build.toplevel -o result-${node}" + optionalString gcBetweenHosts " && nix-collect-garbage -d") filteredHosts; hostPath = builtins.getEnv "PATH"; diff --git a/ci/nodes.nix b/ci/nodes.nix index 1b2e3eea..0a7f4150 100644 --- a/ci/nodes.nix +++ b/ci/nodes.nix @@ -25,7 +25,7 @@ with lib; { }; jobs = let - enabledHosts = ["hakurei" "reimu" "aya" "tei" "mediabox" "ct"]; + enabledHosts = ["hakurei" "reimu" "aya" "tei" "litterbox" "mediabox" "ct"]; in mapAttrs' (k: nameValuePair "${k}") (genAttrs enabledHosts (host: { tasks.${host}.inputs = channels.nixfiles.nixosConfigurations.${host}.config.system.build.toplevel; diff --git a/devShells.nix b/devShells.nix index 51f568de..f8d975e1 100644 --- a/devShells.nix +++ b/devShells.nix @@ -32,7 +32,8 @@ ''; nf-actions-test = pkgs.writeShellScriptBin "nf-actions-test" '' set -eu - for host in hakurei reimu aya tei mediabox ct; do + for host in hakurei reimu aya tei litterbox mediabox ct; do + echo testing $host... nix run --argstr config "$NF_CONFIG_ROOT/ci/nodes.nix" -f '${inputs.ci}' job.$host.test done ''; diff --git a/systems/litterbox/nixos.nix b/systems/litterbox/nixos.nix index d0cc8fb6..965d383e 100644 --- a/systems/litterbox/nixos.nix +++ b/systems/litterbox/nixos.nix @@ -14,7 +14,7 @@ systemd.network.networks.eth0 = { name = "eth0"; matchConfig = { - MACAddress = "BC:24:11:34:F4:AB"; + MACAddress = "BC:24:11:C4:66:AB"; Type = "ether"; }; DHCP = "yes"; diff --git a/tf/cloudflare_records.tf b/tf/cloudflare_records.tf index 06c32e83..b8a14e46 100644 --- a/tf/cloudflare_records.tf +++ b/tf/cloudflare_records.tf @@ -93,6 +93,14 @@ module "mediabox_system_records" { ] } +module "litterbox_system_records" { + source = "./system/records" + name = "litterbox" + zone_id = cloudflare_zone.gensokyo-zone_zone.id + zone_zone = cloudflare_zone.gensokyo-zone_zone.zone + local_v6 = "fd0a::be24:11ff:fec4:66ab" +} + module "idp_system_records" { source = "./system/records" name = "idp"