From ab0d81cb5de5b8c4f6f79574f66ccbde03d319bf Mon Sep 17 00:00:00 2001 From: arcnmx Date: Wed, 20 Nov 2024 09:41:15 -0800 Subject: [PATCH] fix(gengetsu): nf-generate --- .github/workflows/nodes.yml | 51 +++++++++++++++++++++++++++++ ci/systems.json | 28 ++++++++++++++++ docs/network.adoc | 4 +++ systems/gengetsu/default.nix | 3 +- systems/idrac-gengetsu/default.nix | 20 +++++++++++ systems/reisen/root.authorized_keys | 1 + systems/reisen/users.json | 3 +- tf/cloudflare_records.tf | 14 ++++++++ 8 files changed, 122 insertions(+), 2 deletions(-) create mode 100644 systems/idrac-gengetsu/default.nix diff --git a/.github/workflows/nodes.yml b/.github/workflows/nodes.yml index 68d57e05..526a6e69 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 + gengetsu: + name: nodes-gengetsu + 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.gengetsu.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.gengetsu.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.gengetsu.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.gengetsu.run.test + command: ci-build-cache + quiet: false + stdin: ${{ runner.temp }}/ci.build.cache hakurei: name: nodes-hakurei runs-on: ubuntu-latest diff --git a/ci/systems.json b/ci/systems.json index 88228dea..a1c128ac 100644 --- a/ci/systems.json +++ b/ci/systems.json @@ -91,6 +91,20 @@ } } }, + "gengetsu": { + "network": { + "hostName": "gengetsu", + "networks": { + "int": null, + "local": { + "address4": "10.1.1.61", + "address6": "fd0a::5648:10ff:fef3:feaa", + "macAddress": "54:48:10:f3:fe:aa" + }, + "tail": null + } + } + }, "hakurei": { "network": { "hostName": "hakurei", @@ -113,6 +127,20 @@ } } }, + "idrac-gengetsu": { + "network": { + "hostName": "idrac-gengetsu", + "networks": { + "int": null, + "local": { + "address4": "10.1.1.12", + "address6": null, + "macAddress": null + }, + "tail": null + } + } + }, "kasen": { "network": { "hostName": "kasen", diff --git a/docs/network.adoc b/docs/network.adoc index c0c4e01d..89796efd 100644 --- a/docs/network.adoc +++ b/docs/network.adoc @@ -17,6 +17,8 @@ eientei:: `10.1.1.5` kvm-reisen:: `10.1.1.9` +idrac-gengetsu:: `10.1.1.12` + shanghai:: `10.1.1.32` hourai:: `10.1.1.36` @@ -36,6 +38,8 @@ kasen:: `10.1.1.49` sakuya:: `10.1.1.50` minecraft:: `10.1.1.51` +gengetsu:: `10.1.1.61` + nue:: `10.1.1.62` logistics:: `10.1.1.63` satorin:: `10.1.1.64` diff --git a/systems/gengetsu/default.nix b/systems/gengetsu/default.nix index 4a73fb0f..025d358a 100644 --- a/systems/gengetsu/default.nix +++ b/systems/gengetsu/default.nix @@ -14,7 +14,8 @@ _: { #}; network.networks = { local = { - address4 = "10.1.1.204"; + macAddress = "54:48:10:f3:fe:aa"; + address4 = "10.1.1.61"; }; }; } diff --git a/systems/idrac-gengetsu/default.nix b/systems/idrac-gengetsu/default.nix new file mode 100644 index 00000000..08616f02 --- /dev/null +++ b/systems/idrac-gengetsu/default.nix @@ -0,0 +1,20 @@ +_: { + type = "Linux"; + access = { + online.available = true; + }; + network.networks = { + local = { + address4 = "10.1.1.12"; + address6 = null; + }; + }; + exports = { + services = { + sshd = { + enable = true; + ports.public.enable = false; + }; + }; + }; +} diff --git a/systems/reisen/root.authorized_keys b/systems/reisen/root.authorized_keys index f7cf8899..4338ba0e 100644 --- a/systems/reisen/root.authorized_keys +++ b/systems/reisen/root.authorized_keys @@ -3,4 +3,5 @@ ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCocjQqiDIvzq+Qu3jkf7FXw5piwtvZ1Mihw9cVjdVc ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDPsu3vNsvBb/G+wALpstD/DnoRZ3fipAs00jtl8rzDuv96RlS7AJr4aNvG6Pt2D9SYn2wVLaiw+76mz2gOycH9/N+VCvL4/0MN9uqj+7XIcxNRo0gHVOblmi2bOXcmGKh3eRwHj1xyDwRxo9WIuBEP2bPpDPz75OXRtEdlTgvky7siSguQxJu03cb0p9hNAYhUoohNXyWW2CjDCLUQVE1+QRVUzsKq3KkPy0cHYgmZC1gRSMQyKpMt72L5tayLz3Tp/zrshucc+QO5IJeZdqMxsNAcvALsysT1J5EqxZoYH9VpWLRhSgVD6Nvn853pycJAlXQxgOCpSD3/v/JbgUe5NE+ci0o7NMy5IiHUv2gQMRIEhwBHlRGwokUPL9upx0lsjaEiPya5xQqqDKRom87xytM778ANS5CuMdQMWg9qVbpHZUHMjA0QmNkjPgq71pUDXHk5L4mZuS8wVjyjnvlw68yIJuHEc8P7QiLcjvRHFS2L9Ck8NRmPDTQXlQi9kk6LmMyu6fdevR/kZL21b+xO1e2DMyxBbNDTot8luppiiL8adgUDMwptpIne7JCWB1o9NFCbXUVgwuCCYBif6pOGSc6bGo1JTAKMflRlcy6Mi3t5H0mR2lj/sCSTWwTlP5FM4aPIq08NvW6PeuK1bFJY9fIgTwVsUnbAKOhmsMt62w== cardno:12 078 454 ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAII74JrgGsDQ6r7tD7+k3ykxXV7DpeeFRscPMxrBsDPhz kat@goliath ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDkeBFF4xxZgeURLzNHcvUFxImmkQ3pxXtpj3mtSyHXB kat@koishi +ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIC3RkyoQ74bb4NGv1H1bZAz5ROO0Zr6FT8TYpowgGUp kat@chen diff --git a/systems/reisen/users.json b/systems/reisen/users.json index 910cce80..97dd1082 100644 --- a/systems/reisen/users.json +++ b/systems/reisen/users.json @@ -4,7 +4,8 @@ "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCocjQqiDIvzq+Qu3jkf7FXw5piwtvZ1Mihw9cVjdVcsra3U2c9WYtYrA3rS50N3p00oUqQm9z1KUrvHzdE+03ZCrvaGdrtYVsaeoCuuvw7qxTQRbItTAEsfRcZLQ5c1v/57HNYNEsjVrt8VukMPRXWgl+lmzh37dd9w45cCY1QPi+JXQQ/4i9Vc3aWSe4X6PHOEMSBHxepnxm5VNHm4PObGcVbjBf0OkunMeztd1YYA9sEPyEK3b8IHxDl34e5t6NDLCIDz0N/UgzCxSxoz+YJ0feQuZtud/YLkuQcMxW2dSGvnJ0nYy7SA5DkW1oqcy6CGDndHl5StOlJ1IF9aGh0gGkx5SRrV7HOGvapR60RphKrR5zQbFFka99kvSQgOZqSB3CGDEQGHv8dXKXIFlzX78jjWDOBT67vA/M9BK9FS2iNnBF5x6shJ9SU5IK4ySxq8qvN7Us8emkN3pyO8yqgsSOzzJT1JmWUAx0tZWG/BwKcFBHfceAPQl6pwxx28TM3BTBRYdzPJLTkAy48y6iXW6UYdfAPlShy79IYjQtEThTuIiEzdzgYdros0x3PDniuAP0KOKMgbikr0gRa6zahPjf0qqBnHeLB6nHAfaVzI0aNbhOg2bdOueE1FX0x48sjKqjOpjlIfq4WeZp9REr2YHEsoLFOBfgId5P3BPtpBQ== yubikey5", "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDPsu3vNsvBb/G+wALpstD/DnoRZ3fipAs00jtl8rzDuv96RlS7AJr4aNvG6Pt2D9SYn2wVLaiw+76mz2gOycH9/N+VCvL4/0MN9uqj+7XIcxNRo0gHVOblmi2bOXcmGKh3eRwHj1xyDwRxo9WIuBEP2bPpDPz75OXRtEdlTgvky7siSguQxJu03cb0p9hNAYhUoohNXyWW2CjDCLUQVE1+QRVUzsKq3KkPy0cHYgmZC1gRSMQyKpMt72L5tayLz3Tp/zrshucc+QO5IJeZdqMxsNAcvALsysT1J5EqxZoYH9VpWLRhSgVD6Nvn853pycJAlXQxgOCpSD3/v/JbgUe5NE+ci0o7NMy5IiHUv2gQMRIEhwBHlRGwokUPL9upx0lsjaEiPya5xQqqDKRom87xytM778ANS5CuMdQMWg9qVbpHZUHMjA0QmNkjPgq71pUDXHk5L4mZuS8wVjyjnvlw68yIJuHEc8P7QiLcjvRHFS2L9Ck8NRmPDTQXlQi9kk6LmMyu6fdevR/kZL21b+xO1e2DMyxBbNDTot8luppiiL8adgUDMwptpIne7JCWB1o9NFCbXUVgwuCCYBif6pOGSc6bGo1JTAKMflRlcy6Mi3t5H0mR2lj/sCSTWwTlP5FM4aPIq08NvW6PeuK1bFJY9fIgTwVsUnbAKOhmsMt62w== cardno:12 078 454", "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAII74JrgGsDQ6r7tD7+k3ykxXV7DpeeFRscPMxrBsDPhz kat@goliath", - "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDkeBFF4xxZgeURLzNHcvUFxImmkQ3pxXtpj3mtSyHXB kat@koishi" + "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDkeBFF4xxZgeURLzNHcvUFxImmkQ3pxXtpj3mtSyHXB kat@koishi", + "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIC3RkyoQ74bb4NGv1H1bZAz5ROO0Zr6FT8TYpowgGUp kat@chen" ], "name": "kat", "uid": 8000 diff --git a/tf/cloudflare_records.tf b/tf/cloudflare_records.tf index 89e2236a..4cd6c5bd 100644 --- a/tf/cloudflare_records.tf +++ b/tf/cloudflare_records.tf @@ -1,3 +1,17 @@ +module "gengetsu_system_records" { + source = "./system/records" + zone_id = cloudflare_zone.gensokyo-zone_zone.id + zone_zone = cloudflare_zone.gensokyo-zone_zone.zone + net_data = local.systems.gengetsu.network +} + +module "gengetsu_idrac_system_records" { + source = "./system/records" + zone_id = cloudflare_zone.gensokyo-zone_zone.id + zone_zone = cloudflare_zone.gensokyo-zone_zone.zone + net_data = local.systems.idrac-gengetsu.network +} + module "reisen_system_records" { source = "./system/records" zone_id = cloudflare_zone.gensokyo-zone_zone.id