| author | |
| committer | |
| log | deb927dd7d9de43008be824c5dcc52c0166bbe2c |
| tree | fbae407f58f166a629b421689806698c749b8841 |
| parent | 57e9d717f734ef177e65c95f155a8a125f0da42d |
| parent | 8ae4895a8ff02e7ee0c7e506cc0488f2b353d8cf |
| signature | Signed by SSH key SHA256:52mNGHRsVFBDED9IAX5pe+LRWUefqTbxEReunq21QvU |
Keep infra-2 as the main tree while preserving the retired home-infra history.
Assisted-by: gpt-62 files changed, 14 insertions(+), 0 deletions(-)
tools/dashboard-deploy-test.py+12| ... | ... | @@ -173,6 +173,18 @@ class DeploymentBoundary(unittest.TestCase): |
| 173 | 173 | self.assertEqual(self.call("deploy.run", id=identity), {"lines": ["legacy", "\ufffd"], "code": 0}) |
| 174 | 174 | executed.assert_not_called() |
| 175 | 175 | |
| 176 | def test_first_activation_exposes_current_before_starting_host_units(self): | |
| 177 | (self.root / "current").unlink() | |
| 178 | ||
| 179 | def execute(argv, **kwargs): | |
| 180 | if argv[:2] == ["nixos-rebuild", "switch"]: | |
| 181 | self.assertEqual((self.root / "current").resolve(), self.snapshot) | |
| 182 | return subprocess.CompletedProcess(argv, 0, stdout='"leader"', stderr="") | |
| 183 | ||
| 184 | with patch.object(release.subprocess, "run", side_effect=execute): | |
| 185 | self.assertIsNone(release.activate(self.version, initial=True)) | |
| 186 | self.assertEqual(release.current_release(), self.version) | |
| 187 | ||
| 176 | 188 | def test_state_reads_reject_symlinks_and_large_files(self): |
| 177 | 189 | source = self.root / "fixture" |
| 178 | 190 | source.write_bytes(b"x" * 200) |
tools/release.py+2| ... | ... | @@ -158,6 +158,8 @@ def activate(release, legacy=False, initial=False): |
| 158 | 158 | print(result.stdout.strip(), flush=True) |
| 159 | 159 | backup = result.stdout.split("backup=", 1)[1].split()[0] |
| 160 | 160 | if old_digest != digest: |
| 161 | if current is None: | |
| 162 | (ROOT / "current").symlink_to(path) | |
| 161 | 163 | subprocess.run(["nixos-rebuild", "switch", "--flake", f"path:{path}#{configuration}"], check=True) |
| 162 | 164 | next_link = ROOT / ("next-" + release) |
| 163 | 165 | next_link.unlink(missing_ok=True) |