|
11 | 11 | from .conftest import S3Env |
12 | 12 |
|
13 | 13 | RELEASE_DATA = """ |
14 | | - GARDENLINUX_CNAME="container-amd64-1234.1-abc123" |
15 | | - GARDENLINUX_VERSION=1234.1 |
16 | | - GARDENLINUX_COMMIT_ID="abc123" |
17 | | - GARDENLINUX_COMMIT_ID_LONG="abc123long" |
18 | | - GARDENLINUX_FEATURES="_usi,_trustedboot" |
19 | | - GARDENLINUX_FEATURES_ELEMENTS= |
20 | | - GARDENLINUX_FEATURES_FLAGS="_usi,_trustedboot" |
21 | | - GARDENLINUX_FEATURES_PLATFORMS="container" |
22 | | - """ |
| 14 | +GARDENLINUX_CNAME="container-amd64-1234.1-abc123" |
| 15 | +GARDENLINUX_VERSION=1234.1 |
| 16 | +GARDENLINUX_COMMIT_ID="abc123" |
| 17 | +GARDENLINUX_COMMIT_ID_LONG="abc123long" |
| 18 | +GARDENLINUX_FEATURES="_usi,_trustedboot" |
| 19 | +GARDENLINUX_FEATURES_ELEMENTS= |
| 20 | +GARDENLINUX_FEATURES_FLAGS="_usi,_trustedboot" |
| 21 | +GARDENLINUX_FEATURES_PLATFORMS="container" |
| 22 | +""" |
23 | 23 |
|
24 | 24 |
|
25 | 25 | def test_s3artifacts_init_success(s3_setup: S3Env) -> None: |
@@ -240,6 +240,29 @@ def test_upload_from_directory_commit_mismatch_raises(s3_setup: S3Env) -> None: |
240 | 240 | artifacts.upload_from_directory(env.cname, env.tmp_path) |
241 | 241 |
|
242 | 242 |
|
| 243 | +def test_upload_from_directory_with_platform_variant(s3_setup: S3Env) -> None: |
| 244 | + """ |
| 245 | + RuntimeError if version in release file does not match cname. |
| 246 | + """ |
| 247 | + # Arrange |
| 248 | + env = s3_setup |
| 249 | + release_path = env.tmp_path / f"{env.cname}.release" |
| 250 | + |
| 251 | + release_path.write_text(RELEASE_DATA.strip() + "\nGARDENLINUX_PLATFORM_VARIANT=test") |
| 252 | + |
| 253 | + # Act |
| 254 | + artifacts = S3Artifacts(env.bucket_name) |
| 255 | + artifacts.upload_from_directory(env.cname, env.tmp_path) |
| 256 | + |
| 257 | + # Assert |
| 258 | + bucket = env.s3.Bucket(env.bucket_name) |
| 259 | + meta_obj = next( |
| 260 | + o for o in bucket.objects.all() if o.key == f"meta/singles/{env.cname}" |
| 261 | + ) |
| 262 | + metadata = yaml.safe_load(meta_obj.get()["Body"].read()) |
| 263 | + assert metadata["platform_variant"] == "test" |
| 264 | + |
| 265 | + |
243 | 266 | def test_upload_directory_with_requirements_override(s3_setup: S3Env) -> None: |
244 | 267 | """Ensure .requirements file values overide feature flag defaults.""" |
245 | 268 | # Arrange |
|
0 commit comments