diff --git a/client_reference/kosli_assert_artifact.md b/client_reference/kosli_assert_artifact.md
index c8fb355..6d778dc 100644
--- a/client_reference/kosli_assert_artifact.md
+++ b/client_reference/kosli_assert_artifact.md
@@ -70,7 +70,7 @@ non-zero code if non-compliant status.
View an example of the `kosli assert artifact` command in GitHub.
- In [this YAML file](https://github.com/cyber-dojo/differ/blob/42725dbb208d993e5b7c75e975335c0a20646493/.github/workflows/main.yml#L270)
+ In [this YAML file](https://github.com/cyber-dojo/differ/blob/3ab1ef84cb2243f184502ddb7f491e24d4ced1c1/.github/workflows/main.yml#L270)
View an example of the `kosli assert artifact` command in GitLab.
diff --git a/client_reference/kosli_attest_artifact.md b/client_reference/kosli_attest_artifact.md
index cf49b59..08bc740 100644
--- a/client_reference/kosli_attest_artifact.md
+++ b/client_reference/kosli_attest_artifact.md
@@ -81,12 +81,12 @@ In other CI systems, set them explicitly to capture repository metadata.
View an example of the `kosli attest artifact` command in GitHub.
- In [this YAML file](https://github.com/cyber-dojo/reusable-actions-workflows/blob/2ccb589f1ffae2c2dfdf12786993f2eb249d92c6/.github/workflows/secure-docker-build.yml#L210), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/differ-ci/trails/43d2a72431124e9fcf47bf866621ba3fd8e7f618?attestation_id=66b5c45a-22d2-4f37-8688-beeeb449).
+ In [this YAML file](https://github.com/cyber-dojo/reusable-actions-workflows/blob/2d5cf6095a77931bc6eb6d525e4db2d1be1a8cb2/.github/workflows/secure-docker-build.yml#L219), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/differ-ci/trails/981dcfc34f584d46afb46b217b47ce68f2f14a08?attestation_id=03312679-db2a-4f55-a323-7cdb2c89).
View an example of the `kosli attest artifact` command in GitLab.
- In [this YAML file](https://gitlab.com/cyber-dojo/creator/-/blob/20368865b1ba0532f99f69641bbb96e6334cb545/.gitlab/workflows/main.yml#L111), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/creator-ci/trails/20368865b1ba0532f99f69641bbb96e6334cb545?attestation_id=d5d4dc83-f3c0-4a50-b5cb-fdc4f610).
+ In [this YAML file](https://gitlab.com/cyber-dojo/creator/-/blob/65fd2bfa2478534ea4bc5ccf30f6bfc6aab7550c/.gitlab/workflows/main.yml#L111), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/creator-ci/trails/34f14b6fc5d87ff95426046716ec8a09141c13a7?attestation_id=bafbb0d0-e794-4acf-bdf5-81262268).
diff --git a/client_reference/kosli_attest_custom.md b/client_reference/kosli_attest_custom.md
index 93287ac..55598c2 100644
--- a/client_reference/kosli_attest_custom.md
+++ b/client_reference/kosli_attest_custom.md
@@ -79,7 +79,7 @@ In other CI systems, set them explicitly to capture repository metadata.
View an example of the `kosli attest custom` command in GitHub.
- In [this YAML file](https://github.com/cyber-dojo/differ/blob/43d2a72431124e9fcf47bf866621ba3fd8e7f618/.github/workflows/main.yml#L166), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/differ-ci/trails/43d2a72431124e9fcf47bf866621ba3fd8e7f618?attestation_id=e8de4782-b3c6-4920-bf82-6ca7f48f).
+ In [this YAML file](https://github.com/cyber-dojo/differ/blob/981dcfc34f584d46afb46b217b47ce68f2f14a08/.github/workflows/main.yml#L168), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/differ-ci/trails/981dcfc34f584d46afb46b217b47ce68f2f14a08?attestation_id=dfa0b6c3-d537-4299-bbe9-c0943930).
diff --git a/client_reference/kosli_attest_generic.md b/client_reference/kosli_attest_generic.md
index 98a0a69..5145ace 100644
--- a/client_reference/kosli_attest_generic.md
+++ b/client_reference/kosli_attest_generic.md
@@ -75,12 +75,12 @@ In other CI systems, set them explicitly to capture repository metadata.
View an example of the `kosli attest generic` command in GitHub.
- In [this YAML file](https://github.com/cyber-dojo/dashboard/blob/f3c679170776733c60dc485e076b7cb515caa7a4/.github/workflows/main.yml#L192), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/dashboard-ci/trails/f3c679170776733c60dc485e076b7cb515caa7a4?attestation_id=7d94c55b-fbeb-407c-839e-af5cadfc).
+ In [this YAML file](https://github.com/cyber-dojo/dashboard/blob/87f560f87fb2bc242ee5c58d74d0e209d71cd338/.github/workflows/main.yml#L197), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/dashboard-ci/trails/87f560f87fb2bc242ee5c58d74d0e209d71cd338?attestation_id=13c229f8-974c-4f29-afed-5c3a990c).
View an example of the `kosli attest generic` command in GitLab.
- In [this YAML file](https://gitlab.com/cyber-dojo/creator/-/blob/20368865b1ba0532f99f69641bbb96e6334cb545/.gitlab/workflows/main.yml#L92), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/creator-ci/trails/20368865b1ba0532f99f69641bbb96e6334cb545?attestation_id=5aece2c1-1d04-4510-beff-b2e2ea8d).
+ In [this YAML file](https://gitlab.com/cyber-dojo/creator/-/blob/65fd2bfa2478534ea4bc5ccf30f6bfc6aab7550c/.gitlab/workflows/main.yml#L131), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/creator-ci/trails/34f14b6fc5d87ff95426046716ec8a09141c13a7?attestation_id=07c7d103-c75a-4390-8c4b-56e7e3fa).
diff --git a/client_reference/kosli_attest_junit.md b/client_reference/kosli_attest_junit.md
index 3e3d6b4..2a41d2a 100644
--- a/client_reference/kosli_attest_junit.md
+++ b/client_reference/kosli_attest_junit.md
@@ -80,12 +80,12 @@ In other CI systems, set them explicitly to capture repository metadata.
View an example of the `kosli attest junit` command in GitHub.
- In [this YAML file](https://github.com/cyber-dojo/differ/blob/43d2a72431124e9fcf47bf866621ba3fd8e7f618/.github/workflows/main.yml#L99), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/differ-ci/trails/43d2a72431124e9fcf47bf866621ba3fd8e7f618?attestation_id=e1ca8f75-824d-4868-b90c-71c9275d).
+ In [this YAML file](https://github.com/cyber-dojo/differ/blob/981dcfc34f584d46afb46b217b47ce68f2f14a08/.github/workflows/main.yml#L101), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/differ-ci/trails/981dcfc34f584d46afb46b217b47ce68f2f14a08?attestation_id=b35c2895-32ae-4a40-8eb8-ddf7eff0).
View an example of the `kosli attest junit` command in GitLab.
- In [this YAML file](https://gitlab.com/cyber-dojo/creator/-/blob/20368865b1ba0532f99f69641bbb96e6334cb545/.gitlab/workflows/main.yml#L126), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/creator-ci/trails/20368865b1ba0532f99f69641bbb96e6334cb545?attestation_id=9c6178c5-6a49-4421-95f7-740f0c87).
+ In [this YAML file](https://gitlab.com/cyber-dojo/creator/-/blob/65fd2bfa2478534ea4bc5ccf30f6bfc6aab7550c/.gitlab/workflows/main.yml#L126), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/creator-ci/trails/34f14b6fc5d87ff95426046716ec8a09141c13a7?attestation_id=001f8458-33f6-492d-8746-9ac8bd1a).
diff --git a/client_reference/kosli_attest_pullrequest_github.md b/client_reference/kosli_attest_pullrequest_github.md
index 5a6206f..7091c9f 100644
--- a/client_reference/kosli_attest_pullrequest_github.md
+++ b/client_reference/kosli_attest_pullrequest_github.md
@@ -72,7 +72,7 @@ The attestation can be bound to an *artifact* in two ways:
View an example of the `kosli attest pullrequest github` command in GitHub.
- In [this YAML file](https://github.com/cyber-dojo/differ/blob/43d2a72431124e9fcf47bf866621ba3fd8e7f618/.github/workflows/main.yml#L79), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/differ-ci/trails/43d2a72431124e9fcf47bf866621ba3fd8e7f618?attestation_id=0c978038-4747-44e2-b398-682be022).
+ In [this YAML file](https://github.com/cyber-dojo/differ/blob/981dcfc34f584d46afb46b217b47ce68f2f14a08/.github/workflows/main.yml#L81), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/differ-ci/trails/981dcfc34f584d46afb46b217b47ce68f2f14a08?attestation_id=bde7c31e-ae7d-453e-b261-994f2f49).
diff --git a/client_reference/kosli_attest_pullrequest_gitlab.md b/client_reference/kosli_attest_pullrequest_gitlab.md
index 7d5491a..aa64762 100644
--- a/client_reference/kosli_attest_pullrequest_gitlab.md
+++ b/client_reference/kosli_attest_pullrequest_gitlab.md
@@ -72,7 +72,7 @@ The attestation can be bound to an *artifact* in two ways:
View an example of the `kosli attest pullrequest gitlab` command in GitLab.
- In [this YAML file](https://gitlab.com/cyber-dojo/creator/-/blob/20368865b1ba0532f99f69641bbb96e6334cb545/.gitlab/workflows/main.yml#L75), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/creator-ci/trails/20368865b1ba0532f99f69641bbb96e6334cb545?attestation_id=251aff84-4ada-4776-980a-43168708).
+ In [this YAML file](https://gitlab.com/cyber-dojo/creator/-/blob/65fd2bfa2478534ea4bc5ccf30f6bfc6aab7550c/.gitlab/workflows/main.yml#L75), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/creator-ci/trails/34f14b6fc5d87ff95426046716ec8a09141c13a7?attestation_id=495a0c39-68ac-45b8-9100-15401123).
diff --git a/client_reference/kosli_attest_sonar.md b/client_reference/kosli_attest_sonar.md
index 1058997..4e2fd3d 100644
--- a/client_reference/kosli_attest_sonar.md
+++ b/client_reference/kosli_attest_sonar.md
@@ -100,7 +100,7 @@ The attestation can be bound to an *artifact* in two ways:
View an example of the `kosli attest sonar` command in GitHub.
- In [this YAML file](https://github.com/cyber-dojo/dashboard/blob/f3c679170776733c60dc485e076b7cb515caa7a4/.github/workflows/main.yml#L118), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/dashboard-ci/trails/f3c679170776733c60dc485e076b7cb515caa7a4?attestation_id=75869d25-25fb-4b9f-87bc-6caa780e).
+ In [this YAML file](https://github.com/cyber-dojo/dashboard/blob/87f560f87fb2bc242ee5c58d74d0e209d71cd338/.github/workflows/main.yml#L122), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/dashboard-ci/trails/87f560f87fb2bc242ee5c58d74d0e209d71cd338?attestation_id=9b4f1511-de6d-4330-81c7-833cf034).
diff --git a/client_reference/kosli_begin_trail.md b/client_reference/kosli_begin_trail.md
index 58cc1a3..f4d90e8 100644
--- a/client_reference/kosli_begin_trail.md
+++ b/client_reference/kosli_begin_trail.md
@@ -62,12 +62,12 @@ In other CI systems, set them explicitly to capture repository metadata.
View an example of the `kosli begin trail` command in GitHub.
- In [this YAML file](https://github.com/cyber-dojo/runner/blob/bc5fbc14361ce7a6281b6110049d90a03f69d786/.github/workflows/main.yml#L69), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/runner-ci/trails/bc5fbc14361ce7a6281b6110049d90a03f69d786?attestation_id=1).
+ In [this YAML file](https://github.com/cyber-dojo/runner/blob/9cc2a80e1306376b88039715dfdcfc161a0e3904/.github/workflows/main.yml#L78), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/runner-ci/trails/9cc2a80e1306376b88039715dfdcfc161a0e3904?attestation_id=1).
View an example of the `kosli begin trail` command in GitLab.
- In [this YAML file](https://gitlab.com/cyber-dojo/creator/-/blob/20368865b1ba0532f99f69641bbb96e6334cb545/.gitlab/workflows/main.yml#L55), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/creator-ci/trails/20368865b1ba0532f99f69641bbb96e6334cb545?attestation_id=1).
+ In [this YAML file](https://gitlab.com/cyber-dojo/creator/-/blob/65fd2bfa2478534ea4bc5ccf30f6bfc6aab7550c/.gitlab/workflows/main.yml#L55), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/creator-ci/trails/34f14b6fc5d87ff95426046716ec8a09141c13a7?attestation_id=1).
diff --git a/client_reference/kosli_create_flow.md b/client_reference/kosli_create_flow.md
index 5ffd04e..fc2f775 100644
--- a/client_reference/kosli_create_flow.md
+++ b/client_reference/kosli_create_flow.md
@@ -47,12 +47,12 @@ You can specify flow parameters in flags.
View an example of the `kosli create flow` command in GitHub.
- In [this YAML file](https://github.com/cyber-dojo/runner/blob/bc5fbc14361ce7a6281b6110049d90a03f69d786/.github/workflows/main.yml#L62)
+ In [this YAML file](https://github.com/cyber-dojo/runner/blob/9cc2a80e1306376b88039715dfdcfc161a0e3904/.github/workflows/main.yml#L62)
View an example of the `kosli create flow` command in GitLab.
- In [this YAML file](https://gitlab.com/cyber-dojo/creator/-/blob/20368865b1ba0532f99f69641bbb96e6334cb545/.gitlab/workflows/main.yml#L53)
+ In [this YAML file](https://gitlab.com/cyber-dojo/creator/-/blob/65fd2bfa2478534ea4bc5ccf30f6bfc6aab7550c/.gitlab/workflows/main.yml#L53)
diff --git a/client_reference/kosli_diff_snapshots.md b/client_reference/kosli_diff_snapshots.md
index c81c2a1..864dbf0 100644
--- a/client_reference/kosli_diff_snapshots.md
+++ b/client_reference/kosli_diff_snapshots.md
@@ -68,171 +68,139 @@ kosli diff snapshots aws-beta aws-prod --output=json
```json
{
"snappish1": {
- "snapshot_id": "aws-beta#7165",
+ "snapshot_id": "aws-beta#7240",
"artifacts": [
{
- "fingerprint": "08e29de5dfee9117e82568fba94d785303565158ae26fb2db4edc2c57d5a3b91",
- "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:4e4d89b@sha256:08e29de5dfee9117e82568fba94d785303565158ae26fb2db4edc2c57d5a3b91",
- "most_recent_timestamp": 1781037007,
- "flow": "nginx-ci",
- "commit_url": "https://github.com/cyber-dojo/nginx/commit/4e4d89b91df420a82cf278407e58bae32f45627d",
+ "fingerprint": "024abeaf878f55e501869bdfcef2651d04084fa5492a6c515c5146d6a4ebd756",
+ "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:7d472fe@sha256:024abeaf878f55e501869bdfcef2651d04084fa5492a6c515c5146d6a4ebd756",
+ "most_recent_timestamp": 1781439988,
+ "flow": "exercises-start-points-ci",
+ "commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/7d472fe23646dcf286e7845258598d9846df636b",
"instance_count": 1
},
{
- "fingerprint": "314b016820058aa97e5489058505caf5a6b812e08bc8505de6c4e2c095b9c0f8",
- "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:4b4c6e6@sha256:314b016820058aa97e5489058505caf5a6b812e08bc8505de6c4e2c095b9c0f8",
- "most_recent_timestamp": 1780745954,
- "flow": "languages-start-points-ci",
- "commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/4b4c6e63980752e4b37ee3456e5f4f4d3c5f0546",
+ "fingerprint": "4ab912309304956f1b462acd0313170d4eef00fd46ee06921c7a60978001273d",
+ "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:b909280@sha256:4ab912309304956f1b462acd0313170d4eef00fd46ee06921c7a60978001273d",
+ "most_recent_timestamp": 1781436253,
+ "flow": "saver-ci",
+ "commit_url": "https://github.com/cyber-dojo/saver/commit/b909280dcfac31d336ec145a90d73e0904dd2bb7",
"instance_count": 1
},
{
- "fingerprint": "3c14a535b1f6701b77e3228f9a541a0f4a5c8ec2e5b3d8858b4886a9b8a2ef60",
- "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:eb24e48@sha256:3c14a535b1f6701b77e3228f9a541a0f4a5c8ec2e5b3d8858b4886a9b8a2ef60",
- "most_recent_timestamp": 1780985296,
+ "fingerprint": "82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f",
+ "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:47ef6ca@sha256:82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f",
+ "most_recent_timestamp": 1781436120,
"flow": "web-ci",
- "commit_url": "https://github.com/cyber-dojo/web/commit/eb24e489564d1e7dafbb7a17ef6da384dde59777",
+ "commit_url": "https://github.com/cyber-dojo/web/commit/47ef6ca4f22445ca7138a4818f8fe3a8b69b81f1",
"instance_count": 3
},
{
- "fingerprint": "54e5e0254b877cb1e8a3ad625ba817e1a341825f236b079ef49e6b81fb0c57fb",
- "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:160a5de@sha256:54e5e0254b877cb1e8a3ad625ba817e1a341825f236b079ef49e6b81fb0c57fb",
- "most_recent_timestamp": 1780745614,
- "flow": "custom-start-points-ci",
- "commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/160a5ded0a2c2ca3bac4ef3937fbd3b0af499dba",
- "instance_count": 1
- },
- {
- "fingerprint": "739f640ebd78b6f0b3e8aa5f10508e84a1424f19839cae0d808d451cdf1bf183",
- "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:ff10dd6@sha256:739f640ebd78b6f0b3e8aa5f10508e84a1424f19839cae0d808d451cdf1bf183",
- "most_recent_timestamp": 1781093211,
- "flow": "saver-ci",
- "commit_url": "https://github.com/cyber-dojo/saver/commit/ff10dd6dda5cb61c5003ac6960c561f37515aa25",
- "instance_count": 1
+ "fingerprint": "a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc",
+ "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:c248c8e@sha256:a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc",
+ "most_recent_timestamp": 1781597233,
+ "flow": "runner-ci",
+ "commit_url": "https://github.com/cyber-dojo/runner/commit/c248c8e2175307f6906e4a016d09b21d177923bd",
+ "instance_count": 3
},
{
- "fingerprint": "8c603813fc51aff8b151c20a8bb3291f33ccdb75616148ef9028d9af4468244b",
- "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:d06808b@sha256:8c603813fc51aff8b151c20a8bb3291f33ccdb75616148ef9028d9af4468244b",
- "most_recent_timestamp": 1781083062,
- "flow": "creator-ci",
- "commit_url": "https://github.com/cyber-dojo/creator/commit/d06808b822d72533a014c6aad4225c834854adc2",
+ "fingerprint": "b62ed52cf05c8482962b91ab0ac5334719e692634286723ddcd41f7bf60d9305",
+ "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:063682d@sha256:b62ed52cf05c8482962b91ab0ac5334719e692634286723ddcd41f7bf60d9305",
+ "most_recent_timestamp": 1781440008,
+ "flow": "languages-start-points-ci",
+ "commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/063682da313984cd0d9c6c0e111eb1090aa03f9b",
"instance_count": 1
},
{
- "fingerprint": "9ec7c431a5a3b2c4c89313ddee32d734f1a2a368f4e124969d45dc5d1467df7d",
- "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:2c8ed71@sha256:9ec7c431a5a3b2c4c89313ddee32d734f1a2a368f4e124969d45dc5d1467df7d",
- "most_recent_timestamp": 1780745756,
- "flow": "exercises-start-points-ci",
- "commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/2c8ed71d71be0735bad97f42d3de44d7cea0d2bd",
+ "fingerprint": "baec4fc23097cbc40348caa9b7fdcf6bfbeec8f48fc697bf3e7002460a605874",
+ "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:eeb4288@sha256:baec4fc23097cbc40348caa9b7fdcf6bfbeec8f48fc697bf3e7002460a605874",
+ "most_recent_timestamp": 1781439984,
+ "flow": "custom-start-points-ci",
+ "commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/eeb4288778e41b2d7d54d333d6b09514a947f693",
"instance_count": 1
},
{
- "fingerprint": "a64ce001d75001055cfb53ad374ef12ac7cf023c32ad11224c21baeb82ef54a7",
- "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:42725db@sha256:a64ce001d75001055cfb53ad374ef12ac7cf023c32ad11224c21baeb82ef54a7",
- "most_recent_timestamp": 1781169622,
+ "fingerprint": "c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd",
+ "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:3ab1ef8@sha256:c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd",
+ "most_recent_timestamp": 1781440688,
"flow": "differ-ci",
- "commit_url": "https://github.com/cyber-dojo/differ/commit/42725dbb208d993e5b7c75e975335c0a20646493",
+ "commit_url": "https://github.com/cyber-dojo/differ/commit/3ab1ef84cb2243f184502ddb7f491e24d4ced1c1",
"instance_count": 1
},
{
- "fingerprint": "b895f49b10576f8945afe0d417a6f2e3b7604b897d70d3d53c229db39ab9ceb7",
- "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:3ea308c@sha256:b895f49b10576f8945afe0d417a6f2e3b7604b897d70d3d53c229db39ab9ceb7",
- "most_recent_timestamp": 1781168746,
+ "fingerprint": "c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db",
+ "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:ff89dd9@sha256:c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db",
+ "most_recent_timestamp": 1781436093,
"flow": "dashboard-ci",
- "commit_url": "https://github.com/cyber-dojo/dashboard/commit/3ea308cbf42237cc8e564c2d849ee53f69b355ad",
+ "commit_url": "https://github.com/cyber-dojo/dashboard/commit/ff89dd9bd1bfc5441854450adcf25d5aad9508f4",
"instance_count": 1
- },
- {
- "fingerprint": "bf41ad448f32a5ffdfc40fa906ed3d06adda95bbcef54f3ba1739b60fc33033b",
- "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:5559a2a@sha256:bf41ad448f32a5ffdfc40fa906ed3d06adda95bbcef54f3ba1739b60fc33033b",
- "most_recent_timestamp": 1781120540,
- "flow": "runner-ci",
- "commit_url": "https://github.com/cyber-dojo/runner/commit/5559a2a189654b055270f44312048e8244a7a847",
- "instance_count": 3
}
]
},
"snappish2": {
- "snapshot_id": "aws-prod#4749",
+ "snapshot_id": "aws-prod#4781",
"artifacts": [
{
- "fingerprint": "12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
- "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:7635511@sha256:12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
- "most_recent_timestamp": 1780332951,
- "flow": "exercises-start-points-ci",
- "commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/76355112651c4ee66d6ee47f67e35459616f0dae",
- "instance_count": 1
- },
- {
- "fingerprint": "31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
- "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:9513e77@sha256:31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
- "most_recent_timestamp": 1780333031,
- "flow": "languages-start-points-ci",
- "commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/9513e77858d775950f22173d0afd0634b2ac20b9",
- "instance_count": 1
- },
- {
- "fingerprint": "443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
- "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:8863c10@sha256:443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
- "most_recent_timestamp": 1780898570,
+ "fingerprint": "29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4",
+ "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:f66cc5c@sha256:29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4",
+ "most_recent_timestamp": 1781590572,
"flow": "web-ci",
- "commit_url": "https://github.com/cyber-dojo/web/commit/8863c10c2c93d3539672e0bf75bd9925f8778564",
+ "commit_url": "https://github.com/cyber-dojo/web/commit/f66cc5c51fcc19b04b36e0542b36b6cc52515d3c",
"instance_count": 3
},
{
- "fingerprint": "5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
- "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:68d791f@sha256:5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
- "most_recent_timestamp": 1780332962,
- "flow": "saver-ci",
- "commit_url": "https://github.com/cyber-dojo/saver/commit/68d791f93dc161fd8dba63e49b7fe9f909cbe758",
- "instance_count": 1
+ "fingerprint": "414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06",
+ "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:9cc2a80@sha256:414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06",
+ "most_recent_timestamp": 1781590577,
+ "flow": "runner-ci",
+ "commit_url": "https://github.com/cyber-dojo/runner/commit/9cc2a80e1306376b88039715dfdcfc161a0e3904",
+ "instance_count": 3
},
{
- "fingerprint": "9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
- "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:d3e5850@sha256:9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
- "most_recent_timestamp": 1780333290,
- "flow": "custom-start-points-ci",
- "commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/d3e5850912655f2b18a68129f5f3a6480fe305ef",
+ "fingerprint": "45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c",
+ "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:87f560f@sha256:45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c",
+ "most_recent_timestamp": 1781590471,
+ "flow": "dashboard-ci",
+ "commit_url": "https://github.com/cyber-dojo/dashboard/commit/87f560f87fb2bc242ee5c58d74d0e209d71cd338",
"instance_count": 1
},
{
- "fingerprint": "9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
- "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:f3c6791@sha256:9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
- "most_recent_timestamp": 1780333321,
- "flow": "dashboard-ci",
- "commit_url": "https://github.com/cyber-dojo/dashboard/commit/f3c679170776733c60dc485e076b7cb515caa7a4",
+ "fingerprint": "902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b",
+ "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:981dcfc@sha256:902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b",
+ "most_recent_timestamp": 1781590460,
+ "flow": "differ-ci",
+ "commit_url": "https://github.com/cyber-dojo/differ/commit/981dcfc34f584d46afb46b217b47ce68f2f14a08",
"instance_count": 1
},
{
- "fingerprint": "bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
- "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:bc5fbc1@sha256:bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
- "most_recent_timestamp": 1780724058,
- "flow": "runner-ci",
- "commit_url": "https://github.com/cyber-dojo/runner/commit/bc5fbc14361ce7a6281b6110049d90a03f69d786",
- "instance_count": 3
+ "fingerprint": "b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676",
+ "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:7e86fed@sha256:b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676",
+ "most_recent_timestamp": 1781590480,
+ "flow": "languages-start-points-ci",
+ "commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/7e86fede3e42d573de92fed483559b8317ce2dda",
+ "instance_count": 1
},
{
- "fingerprint": "d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
- "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:43d2a72@sha256:d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
- "most_recent_timestamp": 1780332956,
- "flow": "differ-ci",
- "commit_url": "https://github.com/cyber-dojo/differ/commit/43d2a72431124e9fcf47bf866621ba3fd8e7f618",
+ "fingerprint": "b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928",
+ "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:6b5c159@sha256:b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928",
+ "most_recent_timestamp": 1781590462,
+ "flow": "custom-start-points-ci",
+ "commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/6b5c1598cc13c388a0fec71852e6b03bf0696e0b",
"instance_count": 1
},
{
- "fingerprint": "da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
- "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:cdaac80@sha256:da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
- "most_recent_timestamp": 1780898567,
- "flow": "nginx-ci",
- "commit_url": "https://github.com/cyber-dojo/nginx/commit/cdaac807f3282bd0bba056d906d5536074297a04",
+ "fingerprint": "f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8",
+ "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:b8e5cbf@sha256:f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8",
+ "most_recent_timestamp": 1781590465,
+ "flow": "exercises-start-points-ci",
+ "commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/b8e5cbf56e7fc03becdeee6a1d493c0231fa2d0d",
"instance_count": 1
},
{
- "fingerprint": "e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035",
- "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:2036886@sha256:e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035",
- "most_recent_timestamp": 1780389628,
- "flow": "creator-ci",
- "commit_url": "https://gitlab.com/cyber-dojo/creator/-/commit/20368865b1ba0532f99f69641bbb96e6334cb545",
+ "fingerprint": "f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419",
+ "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:8c84fac@sha256:f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419",
+ "most_recent_timestamp": 1781590483,
+ "flow": "saver-ci",
+ "commit_url": "https://github.com/cyber-dojo/saver/commit/8c84facc7fd6a663fe7d40a6b4aff8f13a94d600",
"instance_count": 1
}
]
@@ -241,7 +209,24 @@ kosli diff snapshots aws-beta aws-prod --output=json
"artifacts": []
},
"not-changed": {
- "artifacts": []
+ "artifacts": [
+ {
+ "fingerprint": "b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
+ "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:7065268@sha256:b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
+ "most_recent_timestamp": 1781590473,
+ "flow": "nginx-ci",
+ "commit_url": "https://github.com/cyber-dojo/nginx/commit/706526874659341458da5bb21903a6423c0a5a29",
+ "instance_count": 1
+ },
+ {
+ "fingerprint": "f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
+ "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:34f14b6@sha256:f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
+ "most_recent_timestamp": 1781592148,
+ "flow": "creator-ci",
+ "commit_url": "https://github.com/cyber-dojo/creator/commit/34f14b6fc5d87ff95426046716ec8a09141c13a7",
+ "instance_count": 1
+ }
+ ]
}
}
```
diff --git a/client_reference/kosli_evaluate_input.md b/client_reference/kosli_evaluate_input.md
index f975e47..aeec76c 100644
--- a/client_reference/kosli_evaluate_input.md
+++ b/client_reference/kosli_evaluate_input.md
@@ -61,7 +61,7 @@ This accepts inline JSON or a file reference (`@file.json`).
View an example of the `kosli evaluate input` command in GitHub.
- In [this YAML file](https://github.com/cyber-dojo/snyk-scanning/blob/ae002419e71c05cc5c1a285b52afdcef23d927c7/tests/test_rego_rules.sh#L272)
+ In [this YAML file](https://github.com/cyber-dojo/snyk-scanning/blob/00c479764cb9eca038fdaaaef108672d0bb0ed26/tests/test_rego_rules.sh#L272)
diff --git a/client_reference/kosli_evaluate_trail.md b/client_reference/kosli_evaluate_trail.md
index be64d5d..09f3baf 100644
--- a/client_reference/kosli_evaluate_trail.md
+++ b/client_reference/kosli_evaluate_trail.md
@@ -52,7 +52,7 @@ full data structure available to the policy. Use `--output json` for structured
View an example of the `kosli evaluate trail` command in GitHub.
- In [this YAML file](https://github.com/cyber-dojo/snyk-scanning/blob/ae002419e71c05cc5c1a285b52afdcef23d927c7/.github/workflows/artifact_snyk_test.yml#L321)
+ In [this YAML file](https://github.com/cyber-dojo/snyk-scanning/blob/00c479764cb9eca038fdaaaef108672d0bb0ed26/.github/workflows/artifact_snyk_test.yml#L323)
diff --git a/client_reference/kosli_fingerprint.md b/client_reference/kosli_fingerprint.md
index 149ca57..a1ec1a4 100644
--- a/client_reference/kosli_fingerprint.md
+++ b/client_reference/kosli_fingerprint.md
@@ -79,7 +79,7 @@ The `.kosli_ignore` will be treated as part of the artifact like any other file,
View an example of the `kosli fingerprint` command in GitHub.
- In [this YAML file](https://github.com/cyber-dojo/snyk-scanning/blob/ae002419e71c05cc5c1a285b52afdcef23d927c7/.github/workflows/artifact_snyk_test.yml#L152)
+ In [this YAML file](https://github.com/cyber-dojo/snyk-scanning/blob/00c479764cb9eca038fdaaaef108672d0bb0ed26/.github/workflows/artifact_snyk_test.yml#L152)
diff --git a/client_reference/kosli_get_environment.md b/client_reference/kosli_get_environment.md
index 443c4fb..a83e073 100644
--- a/client_reference/kosli_get_environment.md
+++ b/client_reference/kosli_get_environment.md
@@ -52,9 +52,9 @@ kosli get environment aws-prod --output=json
"name": "aws-prod",
"type": "ECS",
"description": "The ECS cluster for production cyber-dojo",
- "last_modified_at": 1781173678.7227857,
- "last_reported_at": 1781173678.7227857,
- "last_changed_at": 1781167678.669744,
+ "last_modified_at": 1781604298.5932145,
+ "last_reported_at": 1781604298.5932145,
+ "last_changed_at": 1781596438.4966626,
"state": true,
"include_scaling": false,
"tags": {
diff --git a/client_reference/kosli_get_snapshot.md b/client_reference/kosli_get_snapshot.md
index e1a90db..237d61e 100644
--- a/client_reference/kosli_get_snapshot.md
+++ b/client_reference/kosli_get_snapshot.md
@@ -66,7 +66,7 @@ kosli get snapshot aws-prod --output=json
```json
{
- "index": 4749,
+ "index": 4781,
"is_latest": true,
"next_snapshot_timestamp": null,
"artifact_compliance_count": {
@@ -74,13 +74,13 @@ kosli get snapshot aws-prod --output=json
"false": 0,
"null": 0
},
- "timestamp": 1781167678.669744,
+ "timestamp": 1781596438.4966626,
"type": "ECS",
"compliant": true,
- "html_url": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4749",
+ "html_url": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4781",
"artifacts": [
{
- "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:8863c10@sha256:443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
+ "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:9cc2a80@sha256:414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06",
"compliant": true,
"deployments": [],
"policy_decisions": [
@@ -102,8 +102,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "web-ci",
- "trail_name": "8863c10c2c93d3539672e0bf75bd9925f8778564",
+ "flow_name": "runner-ci",
+ "trail_name": "9cc2a80e1306376b88039715dfdcfc161a0e3904",
"artifact_status": null
}
},
@@ -111,7 +111,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-65",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -119,7 +119,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "web-443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
+ "trail_name": "runner-414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06",
"artifact_status": null
}
},
@@ -127,7 +127,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "web-443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
+ "trail_name": "runner-414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06",
"artifact_status": null
}
}
@@ -147,8 +147,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "web-ci",
- "trail_name": "8863c10c2c93d3539672e0bf75bd9925f8778564",
+ "flow_name": "runner-ci",
+ "trail_name": "9cc2a80e1306376b88039715dfdcfc161a0e3904",
"artifact_status": "COMPLIANT"
}
},
@@ -156,7 +156,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-65",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -164,7 +164,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "web-443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
+ "trail_name": "runner-414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06",
"artifact_status": "COMPLIANT"
}
},
@@ -172,7 +172,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "web-443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
+ "trail_name": "runner-414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06",
"artifact_status": "COMPLIANT"
}
}
@@ -197,8 +197,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_satisfied",
"context": {
- "flow_name": "web-ci",
- "trail_name": "8863c10c2c93d3539672e0bf75bd9925f8778564",
+ "flow_name": "runner-ci",
+ "trail_name": "9cc2a80e1306376b88039715dfdcfc161a0e3904",
"artifact_status": null
}
},
@@ -206,7 +206,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-65",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -214,7 +214,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "web-443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
+ "trail_name": "runner-414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06",
"artifact_status": null
}
},
@@ -222,7 +222,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "web-443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
+ "trail_name": "runner-414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06",
"artifact_status": null
}
}
@@ -249,8 +249,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_satisfied",
"context": {
- "flow_name": "web-ci",
- "trail_name": "8863c10c2c93d3539672e0bf75bd9925f8778564",
+ "flow_name": "runner-ci",
+ "trail_name": "9cc2a80e1306376b88039715dfdcfc161a0e3904",
"artifact_status": null
}
},
@@ -258,7 +258,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-65",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -266,7 +266,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "web-443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
+ "trail_name": "runner-414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06",
"artifact_status": null
}
},
@@ -274,7 +274,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "web-443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
+ "trail_name": "runner-414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06",
"artifact_status": null
}
}
@@ -294,8 +294,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "web-ci",
- "trail_name": "8863c10c2c93d3539672e0bf75bd9925f8778564",
+ "flow_name": "runner-ci",
+ "trail_name": "9cc2a80e1306376b88039715dfdcfc161a0e3904",
"artifact_status": "COMPLIANT"
}
},
@@ -303,7 +303,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-65",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -311,7 +311,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "web-443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
+ "trail_name": "runner-414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06",
"artifact_status": "COMPLIANT"
}
},
@@ -319,7 +319,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "web-443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
+ "trail_name": "runner-414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06",
"artifact_status": "COMPLIANT"
}
}
@@ -346,8 +346,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "web-ci",
- "trail_name": "8863c10c2c93d3539672e0bf75bd9925f8778564",
+ "flow_name": "runner-ci",
+ "trail_name": "9cc2a80e1306376b88039715dfdcfc161a0e3904",
"artifact_status": null
}
},
@@ -355,7 +355,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-65",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -363,7 +363,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "web-443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
+ "trail_name": "runner-414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06",
"artifact_status": null
}
},
@@ -371,7 +371,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "web-443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
+ "trail_name": "runner-414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06",
"artifact_status": null
}
}
@@ -391,8 +391,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "web-ci",
- "trail_name": "8863c10c2c93d3539672e0bf75bd9925f8778564",
+ "flow_name": "runner-ci",
+ "trail_name": "9cc2a80e1306376b88039715dfdcfc161a0e3904",
"artifact_status": "COMPLIANT"
}
},
@@ -400,7 +400,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-65",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -408,7 +408,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "web-443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
+ "trail_name": "runner-414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06",
"artifact_status": "COMPLIANT"
}
},
@@ -416,7 +416,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "web-443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
+ "trail_name": "runner-414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06",
"artifact_status": "COMPLIANT"
}
}
@@ -441,8 +441,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "web-ci",
- "trail_name": "8863c10c2c93d3539672e0bf75bd9925f8778564",
+ "flow_name": "runner-ci",
+ "trail_name": "9cc2a80e1306376b88039715dfdcfc161a0e3904",
"artifact_status": null
}
},
@@ -450,7 +450,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-65",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -458,7 +458,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "web-443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
+ "trail_name": "runner-414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06",
"artifact_status": null
}
},
@@ -466,7 +466,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "web-443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
+ "trail_name": "runner-414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06",
"artifact_status": null
}
}
@@ -493,8 +493,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "web-ci",
- "trail_name": "8863c10c2c93d3539672e0bf75bd9925f8778564",
+ "flow_name": "runner-ci",
+ "trail_name": "9cc2a80e1306376b88039715dfdcfc161a0e3904",
"artifact_status": null
}
},
@@ -502,7 +502,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-65",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -510,7 +510,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "web-443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
+ "trail_name": "runner-414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06",
"artifact_status": null
}
},
@@ -518,7 +518,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "web-443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
+ "trail_name": "runner-414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06",
"artifact_status": null
}
}
@@ -538,8 +538,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "web-ci",
- "trail_name": "8863c10c2c93d3539672e0bf75bd9925f8778564",
+ "flow_name": "runner-ci",
+ "trail_name": "9cc2a80e1306376b88039715dfdcfc161a0e3904",
"artifact_status": "COMPLIANT"
}
},
@@ -547,7 +547,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-65",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -555,7 +555,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "web-443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
+ "trail_name": "runner-414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06",
"artifact_status": "COMPLIANT"
}
},
@@ -563,7 +563,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "web-443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
+ "trail_name": "runner-414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06",
"artifact_status": "COMPLIANT"
}
}
@@ -588,8 +588,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "web-ci",
- "trail_name": "8863c10c2c93d3539672e0bf75bd9925f8778564",
+ "flow_name": "runner-ci",
+ "trail_name": "9cc2a80e1306376b88039715dfdcfc161a0e3904",
"artifact_status": null
}
},
@@ -597,7 +597,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-65",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -605,7 +605,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "web-443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
+ "trail_name": "runner-414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06",
"artifact_status": null
}
},
@@ -613,7 +613,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "web-443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
+ "trail_name": "runner-414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06",
"artifact_status": null
}
}
@@ -640,8 +640,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "web-ci",
- "trail_name": "8863c10c2c93d3539672e0bf75bd9925f8778564",
+ "flow_name": "runner-ci",
+ "trail_name": "9cc2a80e1306376b88039715dfdcfc161a0e3904",
"artifact_status": null
}
},
@@ -649,7 +649,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-65",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -657,7 +657,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "web-443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
+ "trail_name": "runner-414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06",
"artifact_status": null
}
},
@@ -665,7 +665,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "web-443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
+ "trail_name": "runner-414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06",
"artifact_status": null
}
}
@@ -691,8 +691,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "web-ci",
- "trail_name": "8863c10c2c93d3539672e0bf75bd9925f8778564",
+ "flow_name": "runner-ci",
+ "trail_name": "9cc2a80e1306376b88039715dfdcfc161a0e3904",
"artifact_status": "COMPLIANT"
}
},
@@ -700,7 +700,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-65",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -708,7 +708,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "web-443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
+ "trail_name": "runner-414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06",
"artifact_status": "COMPLIANT"
}
},
@@ -716,7 +716,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "web-443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
+ "trail_name": "runner-414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06",
"artifact_status": "COMPLIANT"
}
}
@@ -727,159 +727,159 @@ kosli get snapshot aws-prod --output=json
}
],
"reasons_for_incompliance": [],
- "fingerprint": "443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
+ "fingerprint": "414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06",
"creationTimestamp": [
- 1780898567,
- 1780898570,
- 1780898570
+ 1781590488,
+ 1781590574,
+ 1781590577
],
"pods": null,
"annotation": {
- "type": "changed",
+ "type": "updated-provenance",
"was": 3,
"now": 3
},
- "flow_name": "web-ci",
- "git_commit": "8863c10c2c93d3539672e0bf75bd9925f8778564",
- "commit_url": "https://github.com/cyber-dojo/web/commit/8863c10c2c93d3539672e0bf75bd9925f8778564",
- "html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci/artifacts/443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735?artifact_id=65fd4674-3e05-441a-8bd3-71492624",
- "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci",
+ "flow_name": "runner-ci",
+ "git_commit": "9cc2a80e1306376b88039715dfdcfc161a0e3904",
+ "commit_url": "https://github.com/cyber-dojo/runner/commit/9cc2a80e1306376b88039715dfdcfc161a0e3904",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci/artifacts/414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06?artifact_id=73a8e588-a383-4eb5-a88c-a1db6160",
+ "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci",
"deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/web/compare/517657b9dec6ac7ff431ca5d9b2de72fded5c295...8863c10c2c93d3539672e0bf75bd9925f8778564",
- "previous_git_commit": "517657b9dec6ac7ff431ca5d9b2de72fded5c295",
- "previous_fingerprint": "a416f3378c6bc07f2735aec03e80bc55acefe1c2f55c04930a5a7c5b4181e770",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:517657b@sha256:a416f3378c6bc07f2735aec03e80bc55acefe1c2f55c04930a5a7c5b4181e770",
+ "diff_url": "https://github.com/cyber-dojo/runner/compare/bc5fbc14361ce7a6281b6110049d90a03f69d786...9cc2a80e1306376b88039715dfdcfc161a0e3904",
+ "previous_git_commit": "bc5fbc14361ce7a6281b6110049d90a03f69d786",
+ "previous_fingerprint": "bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:bc5fbc1@sha256:bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/web/commit/517657b9dec6ac7ff431ca5d9b2de72fded5c295",
- "previous_trail_name": "517657b9dec6ac7ff431ca5d9b2de72fded5c295",
- "previous_template_reference_name": "web"
+ "previous_git_commit_url": "https://github.com/cyber-dojo/runner/commit/bc5fbc14361ce7a6281b6110049d90a03f69d786",
+ "previous_trail_name": "bc5fbc14361ce7a6281b6110049d90a03f69d786",
+ "previous_template_reference_name": "runner"
},
- "commit_lead_time": 4454.0,
+ "commit_lead_time": 8211.0,
"flows": [
{
- "flow_name": "web-ci",
- "trail_name": "8863c10c2c93d3539672e0bf75bd9925f8778564",
- "template_reference_name": "web",
- "git_commit": "8863c10c2c93d3539672e0bf75bd9925f8778564",
- "commit_url": "https://github.com/cyber-dojo/web/commit/8863c10c2c93d3539672e0bf75bd9925f8778564",
+ "flow_name": "runner-ci",
+ "trail_name": "9cc2a80e1306376b88039715dfdcfc161a0e3904",
+ "template_reference_name": "runner",
+ "git_commit": "9cc2a80e1306376b88039715dfdcfc161a0e3904",
+ "commit_url": "https://github.com/cyber-dojo/runner/commit/9cc2a80e1306376b88039715dfdcfc161a0e3904",
"git_commit_info": {
- "sha1": "8863c10c2c93d3539672e0bf75bd9925f8778564",
- "message": "Show selection underbar on inter-file icons in detailed diff (#357)\n\nIn detailed diff mode the traffic-lights strip also shows inter-file\n icons, but selecting one drew no underbar while selecting a rag-light\n did. The marker
was built from the raw light.colour, so file\n events requested marker_file_edit.png etc. -- images that were never\n created -- and 404'd silently.\n\n File-event icons are named file_test/file_code (not by colour), so the\n marker must follow the same mapping. Extract that name into a shared\n fileEventIcon() helper and have $lightMarker use light.colour for\n rag-lights and fileEventIcon() for file events, keeping each icon and\n its underbar in sync.\n\n Companion marker_file_test.png / marker_file_code.png are added in the\n nginx image repo.",
+ "sha1": "9cc2a80e1306376b88039715dfdcfc161a0e3904",
+ "message": "Merge pull request #244 from cyber-dojo/force-ci-run-129\n\nRun ci workflow to pickup new --annotation in secure-docker-build.yml",
"author": "Jon Jagger ",
"branch": "",
- "timestamp": 1780894113.0,
- "url": "https://github.com/cyber-dojo/web/commit/8863c10c2c93d3539672e0bf75bd9925f8778564"
+ "timestamp": 1781417039.0,
+ "url": "https://github.com/cyber-dojo/runner/commit/9cc2a80e1306376b88039715dfdcfc161a0e3904"
},
- "html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci/artifacts/443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735?artifact_id=65fd4674-3e05-441a-8bd3-71492624",
- "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci/artifacts/414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06?artifact_id=73a8e588-a383-4eb5-a88c-a1db6160",
+ "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci",
"deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/web/compare/517657b9dec6ac7ff431ca5d9b2de72fded5c295...8863c10c2c93d3539672e0bf75bd9925f8778564",
- "previous_git_commit": "517657b9dec6ac7ff431ca5d9b2de72fded5c295",
- "previous_fingerprint": "a416f3378c6bc07f2735aec03e80bc55acefe1c2f55c04930a5a7c5b4181e770",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:517657b@sha256:a416f3378c6bc07f2735aec03e80bc55acefe1c2f55c04930a5a7c5b4181e770",
+ "diff_url": "https://github.com/cyber-dojo/runner/compare/bc5fbc14361ce7a6281b6110049d90a03f69d786...9cc2a80e1306376b88039715dfdcfc161a0e3904",
+ "previous_git_commit": "bc5fbc14361ce7a6281b6110049d90a03f69d786",
+ "previous_fingerprint": "bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:bc5fbc1@sha256:bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/web/commit/517657b9dec6ac7ff431ca5d9b2de72fded5c295",
- "previous_trail_name": "517657b9dec6ac7ff431ca5d9b2de72fded5c295",
- "previous_template_reference_name": "web"
+ "previous_git_commit_url": "https://github.com/cyber-dojo/runner/commit/bc5fbc14361ce7a6281b6110049d90a03f69d786",
+ "previous_trail_name": "bc5fbc14361ce7a6281b6110049d90a03f69d786",
+ "previous_template_reference_name": "runner"
},
- "commit_lead_time": 4454.0,
+ "commit_lead_time": 8211.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
"flow_name": "production-promotion",
- "trail_name": "promotion-one-65",
- "template_reference_name": "web",
- "git_commit": "8d5d7b8b19d97204eb0701a813fe53c68c21ccd0",
- "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/8d5d7b8b19d97204eb0701a813fe53c68c21ccd0",
+ "trail_name": "promote-all-23",
+ "template_reference_name": "runner",
+ "git_commit": "01dd4c6406d6655898ef2236875ec9f67091c792",
+ "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792",
"git_commit_info": {
- "sha1": "8d5d7b8b19d97204eb0701a813fe53c68c21ccd0",
- "message": "Tag the Flowis with their target environment (#396)",
+ "sha1": "01dd4c6406d6655898ef2236875ec9f67091c792",
+ "message": "Update comment and help text",
"author": "JonJagger ",
"branch": "main",
- "timestamp": 1780748155.0,
- "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/8d5d7b8b19d97204eb0701a813fe53c68c21ccd0"
+ "timestamp": 1781413514.0,
+ "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792"
},
- "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735?artifact_id=34c94975-a70e-47ba-8ba1-dc7b23bc",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06?artifact_id=de0528f8-6f6a-437c-801c-0f6a5302",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion",
"deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/0f823ea52be90061b69b3f8f6056ca1203ac3d81...8d5d7b8b19d97204eb0701a813fe53c68c21ccd0",
+ "diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/0f823ea52be90061b69b3f8f6056ca1203ac3d81...01dd4c6406d6655898ef2236875ec9f67091c792",
"previous_git_commit": "0f823ea52be90061b69b3f8f6056ca1203ac3d81",
- "previous_fingerprint": "a416f3378c6bc07f2735aec03e80bc55acefe1c2f55c04930a5a7c5b4181e770",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:517657b@sha256:a416f3378c6bc07f2735aec03e80bc55acefe1c2f55c04930a5a7c5b4181e770",
+ "previous_fingerprint": "bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:bc5fbc1@sha256:bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
"previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/0f823ea52be90061b69b3f8f6056ca1203ac3d81",
- "previous_trail_name": "promote-all-21",
- "previous_template_reference_name": "web"
+ "previous_trail_name": "promotion-one-63",
+ "previous_template_reference_name": "runner"
},
- "commit_lead_time": 150412.0,
+ "commit_lead_time": 11736.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "web-443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
- "template_reference_name": "web",
- "git_commit": "ae002419e71c05cc5c1a285b52afdcef23d927c7",
- "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/ae002419e71c05cc5c1a285b52afdcef23d927c7",
+ "trail_name": "runner-414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06",
+ "template_reference_name": "runner",
+ "git_commit": "09e584191c69ab283e35869dcdaa474414b03e45",
+ "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/09e584191c69ab283e35869dcdaa474414b03e45",
"git_commit_info": {
- "sha1": "ae002419e71c05cc5c1a285b52afdcef23d927c7",
- "message": "Upgrade workflows to use kosli-cli-setup v5",
+ "sha1": "09e584191c69ab283e35869dcdaa474414b03e45",
+ "message": "Detect build flows by the type=build annotation, not a hardcoded list\n\n The hardcoded BUILD_FLOWS list had to be hand-edited per service, and a\n new build flow missing from it was silently skipped, leaving its artifact\n unscanned (the unsafe direction). Detect build flows from the per-artifact\n type=build annotation instead.\n\n - artifacts.py: is_build_flow reads the (flow, fingerprint) annotation via an\n injected fetcher; derive repo_name from the commit_url rather than stripping\n a -ci suffix.\n - Fail loud on missing KOSLI_HOST/ORG/API_TOKEN, and run kosli with a\n PATH-only environment.\n - Replace the shell artifacts test with pytest using a fake fetcher (no live\n kosli calls).\n - Bring the docs into line with the current code.",
"author": "JonJagger ",
"branch": "main",
- "timestamp": 1780908047.0,
- "url": "https://github.com/cyber-dojo/snyk-scanning/commit/ae002419e71c05cc5c1a285b52afdcef23d927c7"
+ "timestamp": 1781535543.0,
+ "url": "https://github.com/cyber-dojo/snyk-scanning/commit/09e584191c69ab283e35869dcdaa474414b03e45"
},
- "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735?artifact_id=b15ec5b2-0f82-43e5-8c70-830ea4d0",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06?artifact_id=81df1aad-7d4f-4376-ae57-29400c8c",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact",
"deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/ee081fb7be2ac7e2094bb4d02f3effdb9f73dd74...ae002419e71c05cc5c1a285b52afdcef23d927c7",
- "previous_git_commit": "ee081fb7be2ac7e2094bb4d02f3effdb9f73dd74",
- "previous_fingerprint": "a416f3378c6bc07f2735aec03e80bc55acefe1c2f55c04930a5a7c5b4181e770",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:517657b@sha256:a416f3378c6bc07f2735aec03e80bc55acefe1c2f55c04930a5a7c5b4181e770",
- "previous_artifact_compliance_state": "COMPLIANT",
+ "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/604111f4822bbc01169317b26fd0f794f5ee7cbf...09e584191c69ab283e35869dcdaa474414b03e45",
+ "previous_git_commit": "604111f4822bbc01169317b26fd0f794f5ee7cbf",
+ "previous_fingerprint": "9db5a9987ba83419bec8ded2cc7bc5c9db814c8f0f275b5fe7228957ceed5ac2",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:bc8fb51@sha256:9db5a9987ba83419bec8ded2cc7bc5c9db814c8f0f275b5fe7228957ceed5ac2",
+ "previous_artifact_compliance_state": "NON-COMPLIANT",
"previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/ee081fb7be2ac7e2094bb4d02f3effdb9f73dd74",
- "previous_trail_name": "web-a416f3378c6bc07f2735aec03e80bc55acefe1c2f55c04930a5a7c5b4181e770",
- "previous_template_reference_name": "web"
+ "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/604111f4822bbc01169317b26fd0f794f5ee7cbf",
+ "previous_trail_name": "runner-9db5a9987ba83419bec8ded2cc7bc5c9db814c8f0f275b5fe7228957ceed5ac2",
+ "previous_template_reference_name": "runner"
},
- "commit_lead_time": -9480.0,
+ "commit_lead_time": -110293.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "web-443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
- "template_reference_name": "web",
- "git_commit": "ae002419e71c05cc5c1a285b52afdcef23d927c7",
- "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/ae002419e71c05cc5c1a285b52afdcef23d927c7",
+ "trail_name": "runner-414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06",
+ "template_reference_name": "runner",
+ "git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26",
+ "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26",
"git_commit_info": {
- "sha1": "ae002419e71c05cc5c1a285b52afdcef23d927c7",
- "message": "Upgrade workflows to use kosli-cli-setup v5",
+ "sha1": "00c479764cb9eca038fdaaaef108672d0bb0ed26",
+ "message": "Shorten the per-vuln attestation name to a 10-char fingerprint\n\n The per-vuln attestation was named snyk-. A full\n SHA-256 fingerprint is 64 hex chars, which renders badly on the\n snyk--per-vuln flow page. The fingerprint is only there to keep two\n builds of the same artifact in one deploy snapshot from clobbering each\n other on the shared per-vuln trail, and the first 10 hex chars (40 bits)\n are far more than enough to keep distinct builds apart.\n\n GitHub Actions expressions have no substring function, so the name can\n no longer be built inline in the job-level env. Compute it in a shell\n step that truncates the fingerprint and exports VULN_ATTESTATION_NAME to\n $GITHUB_ENV, ahead of every step that reads it.\n\n Note: per-vuln trails that already carry a snyk-\n attestation will, on their next run, also gain a snyk-<10-char> one,\n since Kosli keys attestations by name. Only trails created after this\n change will have the short name alone.",
"author": "JonJagger ",
"branch": "main",
- "timestamp": 1780908047.0,
- "url": "https://github.com/cyber-dojo/snyk-scanning/commit/ae002419e71c05cc5c1a285b52afdcef23d927c7"
+ "timestamp": 1781594940.0,
+ "url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26"
},
- "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735?artifact_id=d40dc2f3-8382-4cb6-88df-8f1dc1c4",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06?artifact_id=70e23416-e30e-4783-abff-a1dd3ed4",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact",
"deployment_diff": null,
- "commit_lead_time": -9480.0,
+ "commit_lead_time": -169690.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
}
],
"ecs_context": {
- "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/f0007a451aea435bad6fb6a0107cde93",
+ "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/c5d9f7159999424d8bffd557e2e421da",
"cluster_name": null,
"service_name": null
}
},
{
- "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:cdaac80@sha256:da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
+ "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:6b5c159@sha256:b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928",
"compliant": true,
"deployments": [],
"policy_decisions": [
@@ -901,24 +901,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "nginx-ci",
- "trail_name": "cdaac807f3282bd0bba056d906d5536074297a04",
+ "flow_name": "custom-start-points-ci",
+ "trail_name": "6b5c1598cc13c388a0fec71852e6b03bf0696e0b",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promotion-one-64",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "custom-start-points-b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "nginx-da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -926,7 +926,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "nginx-da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
+ "trail_name": "custom-start-points-b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928",
"artifact_status": null
}
}
@@ -946,24 +946,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "nginx-ci",
- "trail_name": "cdaac807f3282bd0bba056d906d5536074297a04",
+ "flow_name": "custom-start-points-ci",
+ "trail_name": "6b5c1598cc13c388a0fec71852e6b03bf0696e0b",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promotion-one-64",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "custom-start-points-b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "nginx-da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -971,7 +971,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "nginx-da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
+ "trail_name": "custom-start-points-b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928",
"artifact_status": "COMPLIANT"
}
}
@@ -996,24 +996,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_satisfied",
"context": {
- "flow_name": "nginx-ci",
- "trail_name": "cdaac807f3282bd0bba056d906d5536074297a04",
+ "flow_name": "custom-start-points-ci",
+ "trail_name": "6b5c1598cc13c388a0fec71852e6b03bf0696e0b",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promotion-one-64",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "custom-start-points-b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "nginx-da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -1021,7 +1021,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "nginx-da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
+ "trail_name": "custom-start-points-b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928",
"artifact_status": null
}
}
@@ -1048,24 +1048,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_satisfied",
"context": {
- "flow_name": "nginx-ci",
- "trail_name": "cdaac807f3282bd0bba056d906d5536074297a04",
+ "flow_name": "custom-start-points-ci",
+ "trail_name": "6b5c1598cc13c388a0fec71852e6b03bf0696e0b",
"artifact_status": null
}
},
{
"type": "rule_satisfied",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promotion-one-64",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "custom-start-points-b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928",
"artifact_status": null
}
},
{
"type": "rule_satisfied",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "nginx-da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -1073,7 +1073,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "nginx-da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
+ "trail_name": "custom-start-points-b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928",
"artifact_status": null
}
}
@@ -1093,24 +1093,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "nginx-ci",
- "trail_name": "cdaac807f3282bd0bba056d906d5536074297a04",
+ "flow_name": "custom-start-points-ci",
+ "trail_name": "6b5c1598cc13c388a0fec71852e6b03bf0696e0b",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promotion-one-64",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "custom-start-points-b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "nginx-da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -1118,7 +1118,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "nginx-da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
+ "trail_name": "custom-start-points-b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928",
"artifact_status": "COMPLIANT"
}
}
@@ -1145,24 +1145,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "nginx-ci",
- "trail_name": "cdaac807f3282bd0bba056d906d5536074297a04",
+ "flow_name": "custom-start-points-ci",
+ "trail_name": "6b5c1598cc13c388a0fec71852e6b03bf0696e0b",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promotion-one-64",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "custom-start-points-b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "nginx-da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -1170,7 +1170,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "nginx-da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
+ "trail_name": "custom-start-points-b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928",
"artifact_status": null
}
}
@@ -1190,24 +1190,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "nginx-ci",
- "trail_name": "cdaac807f3282bd0bba056d906d5536074297a04",
+ "flow_name": "custom-start-points-ci",
+ "trail_name": "6b5c1598cc13c388a0fec71852e6b03bf0696e0b",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promotion-one-64",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "custom-start-points-b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "nginx-da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -1215,7 +1215,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "nginx-da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
+ "trail_name": "custom-start-points-b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928",
"artifact_status": "COMPLIANT"
}
}
@@ -1240,24 +1240,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "nginx-ci",
- "trail_name": "cdaac807f3282bd0bba056d906d5536074297a04",
+ "flow_name": "custom-start-points-ci",
+ "trail_name": "6b5c1598cc13c388a0fec71852e6b03bf0696e0b",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promotion-one-64",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "custom-start-points-b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "nginx-da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -1265,7 +1265,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "nginx-da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
+ "trail_name": "custom-start-points-b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928",
"artifact_status": null
}
}
@@ -1292,24 +1292,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "nginx-ci",
- "trail_name": "cdaac807f3282bd0bba056d906d5536074297a04",
+ "flow_name": "custom-start-points-ci",
+ "trail_name": "6b5c1598cc13c388a0fec71852e6b03bf0696e0b",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promotion-one-64",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "custom-start-points-b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "nginx-da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -1317,7 +1317,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "nginx-da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
+ "trail_name": "custom-start-points-b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928",
"artifact_status": null
}
}
@@ -1337,24 +1337,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "nginx-ci",
- "trail_name": "cdaac807f3282bd0bba056d906d5536074297a04",
+ "flow_name": "custom-start-points-ci",
+ "trail_name": "6b5c1598cc13c388a0fec71852e6b03bf0696e0b",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promotion-one-64",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "custom-start-points-b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "nginx-da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -1362,7 +1362,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "nginx-da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
+ "trail_name": "custom-start-points-b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928",
"artifact_status": "COMPLIANT"
}
}
@@ -1387,24 +1387,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "nginx-ci",
- "trail_name": "cdaac807f3282bd0bba056d906d5536074297a04",
+ "flow_name": "custom-start-points-ci",
+ "trail_name": "6b5c1598cc13c388a0fec71852e6b03bf0696e0b",
"artifact_status": null
}
},
{
- "type": "rule_satisfied",
+ "type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promotion-one-64",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "custom-start-points-b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928",
"artifact_status": null
}
},
{
- "type": "rule_not_applicable",
+ "type": "rule_satisfied",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "nginx-da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -1412,7 +1412,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "nginx-da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
+ "trail_name": "custom-start-points-b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928",
"artifact_status": null
}
}
@@ -1439,24 +1439,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "nginx-ci",
- "trail_name": "cdaac807f3282bd0bba056d906d5536074297a04",
+ "flow_name": "custom-start-points-ci",
+ "trail_name": "6b5c1598cc13c388a0fec71852e6b03bf0696e0b",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promotion-one-64",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "custom-start-points-b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "nginx-da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -1464,7 +1464,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "nginx-da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
+ "trail_name": "custom-start-points-b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928",
"artifact_status": null
}
}
@@ -1490,24 +1490,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "nginx-ci",
- "trail_name": "cdaac807f3282bd0bba056d906d5536074297a04",
+ "flow_name": "custom-start-points-ci",
+ "trail_name": "6b5c1598cc13c388a0fec71852e6b03bf0696e0b",
"artifact_status": "COMPLIANT"
}
},
{
- "type": "rule_satisfied",
+ "type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promotion-one-64",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "custom-start-points-b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928",
"artifact_status": "COMPLIANT"
}
},
{
- "type": "rule_not_applicable",
+ "type": "rule_satisfied",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "nginx-da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -1515,7 +1515,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "nginx-da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
+ "trail_name": "custom-start-points-b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928",
"artifact_status": "COMPLIANT"
}
}
@@ -1526,157 +1526,157 @@ kosli get snapshot aws-prod --output=json
}
],
"reasons_for_incompliance": [],
- "fingerprint": "da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
+ "fingerprint": "b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928",
"creationTimestamp": [
- 1780898567
+ 1781590462
],
"pods": null,
"annotation": {
- "type": "changed",
+ "type": "updated-provenance",
"was": 1,
"now": 1
},
- "flow_name": "nginx-ci",
- "git_commit": "cdaac807f3282bd0bba056d906d5536074297a04",
- "commit_url": "https://github.com/cyber-dojo/nginx/commit/cdaac807f3282bd0bba056d906d5536074297a04",
- "html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci/artifacts/da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4?artifact_id=daaf8e44-a0d4-46df-af10-a134861d",
- "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci",
+ "flow_name": "custom-start-points-ci",
+ "git_commit": "6b5c1598cc13c388a0fec71852e6b03bf0696e0b",
+ "commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/6b5c1598cc13c388a0fec71852e6b03bf0696e0b",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci/artifacts/b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928?artifact_id=954d759d-077a-4359-b51f-54c7f182",
+ "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci",
"deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/nginx/compare/ebf104fc1c073c7462a6ec381af70f639e4b8ba0...cdaac807f3282bd0bba056d906d5536074297a04",
- "previous_git_commit": "ebf104fc1c073c7462a6ec381af70f639e4b8ba0",
- "previous_fingerprint": "df695792109b605031fbe0c33d89afa13b3fb26b513e7576f5201e991fd95a62",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:ebf104f@sha256:df695792109b605031fbe0c33d89afa13b3fb26b513e7576f5201e991fd95a62",
+ "diff_url": "https://github.com/cyber-dojo/custom-start-points/compare/d3e5850912655f2b18a68129f5f3a6480fe305ef...6b5c1598cc13c388a0fec71852e6b03bf0696e0b",
+ "previous_git_commit": "d3e5850912655f2b18a68129f5f3a6480fe305ef",
+ "previous_fingerprint": "9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:d3e5850@sha256:9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/nginx/commit/ebf104fc1c073c7462a6ec381af70f639e4b8ba0",
- "previous_trail_name": "ebf104fc1c073c7462a6ec381af70f639e4b8ba0",
- "previous_template_reference_name": "nginx"
+ "previous_git_commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/d3e5850912655f2b18a68129f5f3a6480fe305ef",
+ "previous_trail_name": "d3e5850912655f2b18a68129f5f3a6480fe305ef",
+ "previous_template_reference_name": "custom-start-points"
},
- "commit_lead_time": 4926.0,
+ "commit_lead_time": 7979.0,
"flows": [
{
- "flow_name": "nginx-ci",
- "trail_name": "cdaac807f3282bd0bba056d906d5536074297a04",
- "template_reference_name": "nginx",
- "git_commit": "cdaac807f3282bd0bba056d906d5536074297a04",
- "commit_url": "https://github.com/cyber-dojo/nginx/commit/cdaac807f3282bd0bba056d906d5536074297a04",
+ "flow_name": "custom-start-points-ci",
+ "trail_name": "6b5c1598cc13c388a0fec71852e6b03bf0696e0b",
+ "template_reference_name": "custom-start-points",
+ "git_commit": "6b5c1598cc13c388a0fec71852e6b03bf0696e0b",
+ "commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/6b5c1598cc13c388a0fec71852e6b03bf0696e0b",
"git_commit_info": {
- "sha1": "cdaac807f3282bd0bba056d906d5536074297a04",
- "message": "Merge pull request #130 from cyber-dojo/add-missing-underbar-images\n\nAdd missing underbar images",
+ "sha1": "6b5c1598cc13c388a0fec71852e6b03bf0696e0b",
+ "message": "Merge pull request #119 from cyber-dojo/annotate-build-attestation\n\nAdd --annotate type=build to kosli-attest-artifact",
"author": "Jon Jagger ",
- "branch": "",
- "timestamp": 1780893641.0,
- "url": "https://github.com/cyber-dojo/nginx/commit/cdaac807f3282bd0bba056d906d5536074297a04"
+ "branch": "main",
+ "timestamp": 1781417184.0,
+ "url": "https://github.com/cyber-dojo/custom-start-points/commit/6b5c1598cc13c388a0fec71852e6b03bf0696e0b"
},
- "html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci/artifacts/da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4?artifact_id=daaf8e44-a0d4-46df-af10-a134861d",
- "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci/artifacts/b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928?artifact_id=954d759d-077a-4359-b51f-54c7f182",
+ "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci",
"deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/nginx/compare/ebf104fc1c073c7462a6ec381af70f639e4b8ba0...cdaac807f3282bd0bba056d906d5536074297a04",
- "previous_git_commit": "ebf104fc1c073c7462a6ec381af70f639e4b8ba0",
- "previous_fingerprint": "df695792109b605031fbe0c33d89afa13b3fb26b513e7576f5201e991fd95a62",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:ebf104f@sha256:df695792109b605031fbe0c33d89afa13b3fb26b513e7576f5201e991fd95a62",
+ "diff_url": "https://github.com/cyber-dojo/custom-start-points/compare/d3e5850912655f2b18a68129f5f3a6480fe305ef...6b5c1598cc13c388a0fec71852e6b03bf0696e0b",
+ "previous_git_commit": "d3e5850912655f2b18a68129f5f3a6480fe305ef",
+ "previous_fingerprint": "9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:d3e5850@sha256:9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/nginx/commit/ebf104fc1c073c7462a6ec381af70f639e4b8ba0",
- "previous_trail_name": "ebf104fc1c073c7462a6ec381af70f639e4b8ba0",
- "previous_template_reference_name": "nginx"
+ "previous_git_commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/d3e5850912655f2b18a68129f5f3a6480fe305ef",
+ "previous_trail_name": "d3e5850912655f2b18a68129f5f3a6480fe305ef",
+ "previous_template_reference_name": "custom-start-points"
},
- "commit_lead_time": 4926.0,
+ "commit_lead_time": 7979.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
- "flow_name": "production-promotion",
- "trail_name": "promotion-one-64",
- "template_reference_name": "nginx",
- "git_commit": "8d5d7b8b19d97204eb0701a813fe53c68c21ccd0",
- "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/8d5d7b8b19d97204eb0701a813fe53c68c21ccd0",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "custom-start-points-b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928",
+ "template_reference_name": "custom-start-points",
+ "git_commit": "7172cc22125f480a9f12127edb481a4d84aabea3",
+ "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/7172cc22125f480a9f12127edb481a4d84aabea3",
"git_commit_info": {
- "sha1": "8d5d7b8b19d97204eb0701a813fe53c68c21ccd0",
- "message": "Tag the Flowis with their target environment (#396)",
+ "sha1": "7172cc22125f480a9f12127edb481a4d84aabea3",
+ "message": "Add notes on proposed refactoring to detecting a build flow [ci skip]",
"author": "JonJagger ",
"branch": "main",
- "timestamp": 1780748155.0,
- "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/8d5d7b8b19d97204eb0701a813fe53c68c21ccd0"
+ "timestamp": 1781416288.0,
+ "url": "https://github.com/cyber-dojo/snyk-scanning/commit/7172cc22125f480a9f12127edb481a4d84aabea3"
},
- "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4?artifact_id=e3f37ff7-edc9-477a-9fc3-2752be12",
- "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928?artifact_id=b86568eb-1f60-4797-b74f-dd18f8d0",
+ "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact",
"deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/0f823ea52be90061b69b3f8f6056ca1203ac3d81...8d5d7b8b19d97204eb0701a813fe53c68c21ccd0",
- "previous_git_commit": "0f823ea52be90061b69b3f8f6056ca1203ac3d81",
- "previous_fingerprint": "df695792109b605031fbe0c33d89afa13b3fb26b513e7576f5201e991fd95a62",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:ebf104f@sha256:df695792109b605031fbe0c33d89afa13b3fb26b513e7576f5201e991fd95a62",
+ "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4...7172cc22125f480a9f12127edb481a4d84aabea3",
+ "previous_git_commit": "c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4",
+ "previous_fingerprint": "9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:d3e5850@sha256:9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/0f823ea52be90061b69b3f8f6056ca1203ac3d81",
- "previous_trail_name": "promote-all-21",
- "previous_template_reference_name": "nginx"
+ "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4",
+ "previous_trail_name": "custom-start-points-9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
+ "previous_template_reference_name": "custom-start-points"
},
- "commit_lead_time": 150412.0,
+ "commit_lead_time": 8875.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "nginx-da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
- "template_reference_name": "nginx",
- "git_commit": "ae002419e71c05cc5c1a285b52afdcef23d927c7",
- "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/ae002419e71c05cc5c1a285b52afdcef23d927c7",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
+ "template_reference_name": "custom-start-points",
+ "git_commit": "01dd4c6406d6655898ef2236875ec9f67091c792",
+ "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792",
"git_commit_info": {
- "sha1": "ae002419e71c05cc5c1a285b52afdcef23d927c7",
- "message": "Upgrade workflows to use kosli-cli-setup v5",
+ "sha1": "01dd4c6406d6655898ef2236875ec9f67091c792",
+ "message": "Update comment and help text",
"author": "JonJagger ",
"branch": "main",
- "timestamp": 1780908047.0,
- "url": "https://github.com/cyber-dojo/snyk-scanning/commit/ae002419e71c05cc5c1a285b52afdcef23d927c7"
+ "timestamp": 1781413514.0,
+ "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792"
},
- "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4?artifact_id=82f7872b-9ce4-4a7b-a0ad-895f661b",
- "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928?artifact_id=1db97c2c-1e00-400b-a712-bde4fce3",
+ "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion",
"deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4...ae002419e71c05cc5c1a285b52afdcef23d927c7",
- "previous_git_commit": "c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4",
- "previous_fingerprint": "df695792109b605031fbe0c33d89afa13b3fb26b513e7576f5201e991fd95a62",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:ebf104f@sha256:df695792109b605031fbe0c33d89afa13b3fb26b513e7576f5201e991fd95a62",
+ "diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/0f823ea52be90061b69b3f8f6056ca1203ac3d81...01dd4c6406d6655898ef2236875ec9f67091c792",
+ "previous_git_commit": "0f823ea52be90061b69b3f8f6056ca1203ac3d81",
+ "previous_fingerprint": "9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:d3e5850@sha256:9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4",
- "previous_trail_name": "nginx-df695792109b605031fbe0c33d89afa13b3fb26b513e7576f5201e991fd95a62",
- "previous_template_reference_name": "nginx"
+ "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/0f823ea52be90061b69b3f8f6056ca1203ac3d81",
+ "previous_trail_name": "promote-all-21",
+ "previous_template_reference_name": "custom-start-points"
},
- "commit_lead_time": -9480.0,
+ "commit_lead_time": 11649.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "nginx-da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
- "template_reference_name": "nginx",
- "git_commit": "ae002419e71c05cc5c1a285b52afdcef23d927c7",
- "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/ae002419e71c05cc5c1a285b52afdcef23d927c7",
+ "trail_name": "custom-start-points-b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928",
+ "template_reference_name": "custom-start-points",
+ "git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26",
+ "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26",
"git_commit_info": {
- "sha1": "ae002419e71c05cc5c1a285b52afdcef23d927c7",
- "message": "Upgrade workflows to use kosli-cli-setup v5",
+ "sha1": "00c479764cb9eca038fdaaaef108672d0bb0ed26",
+ "message": "Shorten the per-vuln attestation name to a 10-char fingerprint\n\n The per-vuln attestation was named snyk-. A full\n SHA-256 fingerprint is 64 hex chars, which renders badly on the\n snyk--per-vuln flow page. The fingerprint is only there to keep two\n builds of the same artifact in one deploy snapshot from clobbering each\n other on the shared per-vuln trail, and the first 10 hex chars (40 bits)\n are far more than enough to keep distinct builds apart.\n\n GitHub Actions expressions have no substring function, so the name can\n no longer be built inline in the job-level env. Compute it in a shell\n step that truncates the fingerprint and exports VULN_ATTESTATION_NAME to\n $GITHUB_ENV, ahead of every step that reads it.\n\n Note: per-vuln trails that already carry a snyk-\n attestation will, on their next run, also gain a snyk-<10-char> one,\n since Kosli keys attestations by name. Only trails created after this\n change will have the short name alone.",
"author": "JonJagger ",
"branch": "main",
- "timestamp": 1780908047.0,
- "url": "https://github.com/cyber-dojo/snyk-scanning/commit/ae002419e71c05cc5c1a285b52afdcef23d927c7"
+ "timestamp": 1781594940.0,
+ "url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26"
},
- "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4?artifact_id=c25c3cbd-3cc7-408f-9056-c23b905b",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928?artifact_id=50f19ded-0e89-4099-ac88-2cacc4ad",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact",
"deployment_diff": null,
- "commit_lead_time": -9480.0,
+ "commit_lead_time": -169777.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
}
],
"ecs_context": {
- "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/61f124feb01149d4be6e661ea878342c",
+ "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/79e01ca7846446399eb4a8a0e4a5f508",
"cluster_name": null,
"service_name": null
}
},
{
- "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:bc5fbc1@sha256:bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
+ "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:34f14b6@sha256:f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
"compliant": true,
"deployments": [],
"policy_decisions": [
@@ -1698,8 +1698,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "runner-ci",
- "trail_name": "bc5fbc14361ce7a6281b6110049d90a03f69d786",
+ "flow_name": "creator-ci",
+ "trail_name": "34f14b6fc5d87ff95426046716ec8a09141c13a7",
"artifact_status": null
}
},
@@ -1707,7 +1707,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-63",
+ "trail_name": "promotion-one-69",
"artifact_status": null
}
},
@@ -1715,7 +1715,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "runner-bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
+ "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
"artifact_status": null
}
},
@@ -1723,7 +1723,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "runner-bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
+ "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
"artifact_status": null
}
}
@@ -1743,8 +1743,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "runner-ci",
- "trail_name": "bc5fbc14361ce7a6281b6110049d90a03f69d786",
+ "flow_name": "creator-ci",
+ "trail_name": "34f14b6fc5d87ff95426046716ec8a09141c13a7",
"artifact_status": "COMPLIANT"
}
},
@@ -1752,7 +1752,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-63",
+ "trail_name": "promotion-one-69",
"artifact_status": "COMPLIANT"
}
},
@@ -1760,7 +1760,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "runner-bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
+ "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
"artifact_status": "COMPLIANT"
}
},
@@ -1768,7 +1768,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "runner-bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
+ "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
"artifact_status": "COMPLIANT"
}
}
@@ -1793,8 +1793,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_satisfied",
"context": {
- "flow_name": "runner-ci",
- "trail_name": "bc5fbc14361ce7a6281b6110049d90a03f69d786",
+ "flow_name": "creator-ci",
+ "trail_name": "34f14b6fc5d87ff95426046716ec8a09141c13a7",
"artifact_status": null
}
},
@@ -1802,7 +1802,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-63",
+ "trail_name": "promotion-one-69",
"artifact_status": null
}
},
@@ -1810,7 +1810,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "runner-bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
+ "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
"artifact_status": null
}
},
@@ -1818,7 +1818,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "runner-bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
+ "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
"artifact_status": null
}
}
@@ -1845,8 +1845,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_satisfied",
"context": {
- "flow_name": "runner-ci",
- "trail_name": "bc5fbc14361ce7a6281b6110049d90a03f69d786",
+ "flow_name": "creator-ci",
+ "trail_name": "34f14b6fc5d87ff95426046716ec8a09141c13a7",
"artifact_status": null
}
},
@@ -1854,7 +1854,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-63",
+ "trail_name": "promotion-one-69",
"artifact_status": null
}
},
@@ -1862,7 +1862,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "runner-bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
+ "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
"artifact_status": null
}
},
@@ -1870,7 +1870,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "runner-bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
+ "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
"artifact_status": null
}
}
@@ -1890,8 +1890,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "runner-ci",
- "trail_name": "bc5fbc14361ce7a6281b6110049d90a03f69d786",
+ "flow_name": "creator-ci",
+ "trail_name": "34f14b6fc5d87ff95426046716ec8a09141c13a7",
"artifact_status": "COMPLIANT"
}
},
@@ -1899,7 +1899,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-63",
+ "trail_name": "promotion-one-69",
"artifact_status": "COMPLIANT"
}
},
@@ -1907,7 +1907,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "runner-bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
+ "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
"artifact_status": "COMPLIANT"
}
},
@@ -1915,7 +1915,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "runner-bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
+ "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
"artifact_status": "COMPLIANT"
}
}
@@ -1942,8 +1942,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "runner-ci",
- "trail_name": "bc5fbc14361ce7a6281b6110049d90a03f69d786",
+ "flow_name": "creator-ci",
+ "trail_name": "34f14b6fc5d87ff95426046716ec8a09141c13a7",
"artifact_status": null
}
},
@@ -1951,7 +1951,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-63",
+ "trail_name": "promotion-one-69",
"artifact_status": null
}
},
@@ -1959,7 +1959,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "runner-bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
+ "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
"artifact_status": null
}
},
@@ -1967,7 +1967,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "runner-bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
+ "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
"artifact_status": null
}
}
@@ -1987,8 +1987,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "runner-ci",
- "trail_name": "bc5fbc14361ce7a6281b6110049d90a03f69d786",
+ "flow_name": "creator-ci",
+ "trail_name": "34f14b6fc5d87ff95426046716ec8a09141c13a7",
"artifact_status": "COMPLIANT"
}
},
@@ -1996,7 +1996,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-63",
+ "trail_name": "promotion-one-69",
"artifact_status": "COMPLIANT"
}
},
@@ -2004,7 +2004,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "runner-bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
+ "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
"artifact_status": "COMPLIANT"
}
},
@@ -2012,7 +2012,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "runner-bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
+ "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
"artifact_status": "COMPLIANT"
}
}
@@ -2037,8 +2037,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "runner-ci",
- "trail_name": "bc5fbc14361ce7a6281b6110049d90a03f69d786",
+ "flow_name": "creator-ci",
+ "trail_name": "34f14b6fc5d87ff95426046716ec8a09141c13a7",
"artifact_status": null
}
},
@@ -2046,7 +2046,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-63",
+ "trail_name": "promotion-one-69",
"artifact_status": null
}
},
@@ -2054,7 +2054,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "runner-bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
+ "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
"artifact_status": null
}
},
@@ -2062,7 +2062,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "runner-bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
+ "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
"artifact_status": null
}
}
@@ -2089,8 +2089,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "runner-ci",
- "trail_name": "bc5fbc14361ce7a6281b6110049d90a03f69d786",
+ "flow_name": "creator-ci",
+ "trail_name": "34f14b6fc5d87ff95426046716ec8a09141c13a7",
"artifact_status": null
}
},
@@ -2098,7 +2098,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-63",
+ "trail_name": "promotion-one-69",
"artifact_status": null
}
},
@@ -2106,7 +2106,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "runner-bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
+ "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
"artifact_status": null
}
},
@@ -2114,7 +2114,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "runner-bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
+ "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
"artifact_status": null
}
}
@@ -2134,8 +2134,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "runner-ci",
- "trail_name": "bc5fbc14361ce7a6281b6110049d90a03f69d786",
+ "flow_name": "creator-ci",
+ "trail_name": "34f14b6fc5d87ff95426046716ec8a09141c13a7",
"artifact_status": "COMPLIANT"
}
},
@@ -2143,7 +2143,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-63",
+ "trail_name": "promotion-one-69",
"artifact_status": "COMPLIANT"
}
},
@@ -2151,7 +2151,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "runner-bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
+ "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
"artifact_status": "COMPLIANT"
}
},
@@ -2159,7 +2159,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "runner-bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
+ "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
"artifact_status": "COMPLIANT"
}
}
@@ -2184,8 +2184,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "runner-ci",
- "trail_name": "bc5fbc14361ce7a6281b6110049d90a03f69d786",
+ "flow_name": "creator-ci",
+ "trail_name": "34f14b6fc5d87ff95426046716ec8a09141c13a7",
"artifact_status": null
}
},
@@ -2193,7 +2193,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-63",
+ "trail_name": "promotion-one-69",
"artifact_status": null
}
},
@@ -2201,7 +2201,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "runner-bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
+ "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
"artifact_status": null
}
},
@@ -2209,7 +2209,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "runner-bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
+ "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
"artifact_status": null
}
}
@@ -2236,8 +2236,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "runner-ci",
- "trail_name": "bc5fbc14361ce7a6281b6110049d90a03f69d786",
+ "flow_name": "creator-ci",
+ "trail_name": "34f14b6fc5d87ff95426046716ec8a09141c13a7",
"artifact_status": null
}
},
@@ -2245,7 +2245,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-63",
+ "trail_name": "promotion-one-69",
"artifact_status": null
}
},
@@ -2253,7 +2253,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "runner-bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
+ "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
"artifact_status": null
}
},
@@ -2261,7 +2261,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "runner-bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
+ "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
"artifact_status": null
}
}
@@ -2287,8 +2287,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "runner-ci",
- "trail_name": "bc5fbc14361ce7a6281b6110049d90a03f69d786",
+ "flow_name": "creator-ci",
+ "trail_name": "34f14b6fc5d87ff95426046716ec8a09141c13a7",
"artifact_status": "COMPLIANT"
}
},
@@ -2296,7 +2296,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-63",
+ "trail_name": "promotion-one-69",
"artifact_status": "COMPLIANT"
}
},
@@ -2304,7 +2304,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "runner-bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
+ "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
"artifact_status": "COMPLIANT"
}
},
@@ -2312,7 +2312,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "runner-bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
+ "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
"artifact_status": "COMPLIANT"
}
}
@@ -2323,159 +2323,167 @@ kosli get snapshot aws-prod --output=json
}
],
"reasons_for_incompliance": [],
- "fingerprint": "bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
+ "fingerprint": "f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
"creationTimestamp": [
- 1780724054,
- 1780724056,
- 1780724058
+ 1781592148
],
"pods": null,
"annotation": {
- "type": "changed",
- "was": 3,
- "now": 3
+ "type": "unchanged",
+ "was": 1,
+ "now": 1
},
- "flow_name": "runner-ci",
- "git_commit": "bc5fbc14361ce7a6281b6110049d90a03f69d786",
- "commit_url": "https://github.com/cyber-dojo/runner/commit/bc5fbc14361ce7a6281b6110049d90a03f69d786",
- "html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci/artifacts/bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1?artifact_id=665ba644-8f04-4330-a5e7-7a9c03ba",
- "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci",
+ "flow_name": "creator-ci",
+ "git_commit": "34f14b6fc5d87ff95426046716ec8a09141c13a7",
+ "commit_url": "https://github.com/cyber-dojo/creator/commit/34f14b6fc5d87ff95426046716ec8a09141c13a7",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/creator-ci/artifacts/f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43?artifact_id=bafbb0d0-e794-4acf-bdf5-81262268",
+ "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/creator-ci",
"deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/runner/compare/bc8fb51346a42e17a4d3669f3ea11908782a43d1...bc5fbc14361ce7a6281b6110049d90a03f69d786",
- "previous_git_commit": "bc8fb51346a42e17a4d3669f3ea11908782a43d1",
- "previous_fingerprint": "9db5a9987ba83419bec8ded2cc7bc5c9db814c8f0f275b5fe7228957ceed5ac2",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:bc8fb51@sha256:9db5a9987ba83419bec8ded2cc7bc5c9db814c8f0f275b5fe7228957ceed5ac2",
+ "diff_url": "https://github.com/cyber-dojo/creator/compare/a288de54e3751244517d5e04fc73622e5363257d...34f14b6fc5d87ff95426046716ec8a09141c13a7",
+ "previous_git_commit": "a288de54e3751244517d5e04fc73622e5363257d",
+ "previous_fingerprint": "e8b5e25c5550658cdbd2b8339684b18bce86aaf6538611124ff62f2582c2e5b6",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:a288de5@sha256:e8b5e25c5550658cdbd2b8339684b18bce86aaf6538611124ff62f2582c2e5b6",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/runner/commit/bc8fb51346a42e17a4d3669f3ea11908782a43d1",
- "previous_trail_name": "bc8fb51346a42e17a4d3669f3ea11908782a43d1",
- "previous_template_reference_name": "runner"
+ "previous_git_commit_url": "https://github.com/cyber-dojo/creator/commit/a288de54e3751244517d5e04fc73622e5363257d",
+ "previous_trail_name": "a288de54e3751244517d5e04fc73622e5363257d",
+ "previous_template_reference_name": "creator"
},
- "commit_lead_time": 46571.0,
+ "commit_lead_time": 849.0,
"flows": [
{
- "flow_name": "runner-ci",
- "trail_name": "bc5fbc14361ce7a6281b6110049d90a03f69d786",
- "template_reference_name": "runner",
- "git_commit": "bc5fbc14361ce7a6281b6110049d90a03f69d786",
- "commit_url": "https://github.com/cyber-dojo/runner/commit/bc5fbc14361ce7a6281b6110049d90a03f69d786",
+ "flow_name": "creator-ci",
+ "trail_name": "34f14b6fc5d87ff95426046716ec8a09141c13a7",
+ "template_reference_name": "creator",
+ "git_commit": "34f14b6fc5d87ff95426046716ec8a09141c13a7",
+ "commit_url": "https://github.com/cyber-dojo/creator/commit/34f14b6fc5d87ff95426046716ec8a09141c13a7",
"git_commit_info": {
- "sha1": "bc5fbc14361ce7a6281b6110049d90a03f69d786",
- "message": "Merge pull request #241 from cyber-dojo/update-snyk-vulns\n\nUpdate snyk vulns",
+ "sha1": "34f14b6fc5d87ff95426046716ec8a09141c13a7",
+ "message": "Merge pull request #23 from cyber-dojo/remove-infra-upgrade-notice\n\nRemove infrastructure upgrade notice",
"author": "Jon Jagger ",
"branch": "",
- "timestamp": 1780677483.0,
- "url": "https://github.com/cyber-dojo/runner/commit/bc5fbc14361ce7a6281b6110049d90a03f69d786"
+ "timestamp": 1781591299.0,
+ "url": "https://github.com/cyber-dojo/creator/commit/34f14b6fc5d87ff95426046716ec8a09141c13a7"
},
- "html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci/artifacts/bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1?artifact_id=665ba644-8f04-4330-a5e7-7a9c03ba",
- "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/creator-ci/artifacts/f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43?artifact_id=bafbb0d0-e794-4acf-bdf5-81262268",
+ "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/creator-ci",
"deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/runner/compare/bc8fb51346a42e17a4d3669f3ea11908782a43d1...bc5fbc14361ce7a6281b6110049d90a03f69d786",
- "previous_git_commit": "bc8fb51346a42e17a4d3669f3ea11908782a43d1",
- "previous_fingerprint": "9db5a9987ba83419bec8ded2cc7bc5c9db814c8f0f275b5fe7228957ceed5ac2",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:bc8fb51@sha256:9db5a9987ba83419bec8ded2cc7bc5c9db814c8f0f275b5fe7228957ceed5ac2",
+ "diff_url": "https://github.com/cyber-dojo/creator/compare/a288de54e3751244517d5e04fc73622e5363257d...34f14b6fc5d87ff95426046716ec8a09141c13a7",
+ "previous_git_commit": "a288de54e3751244517d5e04fc73622e5363257d",
+ "previous_fingerprint": "e8b5e25c5550658cdbd2b8339684b18bce86aaf6538611124ff62f2582c2e5b6",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:a288de5@sha256:e8b5e25c5550658cdbd2b8339684b18bce86aaf6538611124ff62f2582c2e5b6",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/runner/commit/bc8fb51346a42e17a4d3669f3ea11908782a43d1",
- "previous_trail_name": "bc8fb51346a42e17a4d3669f3ea11908782a43d1",
- "previous_template_reference_name": "runner"
+ "previous_git_commit_url": "https://github.com/cyber-dojo/creator/commit/a288de54e3751244517d5e04fc73622e5363257d",
+ "previous_trail_name": "a288de54e3751244517d5e04fc73622e5363257d",
+ "previous_template_reference_name": "creator"
},
- "commit_lead_time": 46571.0,
+ "commit_lead_time": 849.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
"flow_name": "production-promotion",
- "trail_name": "promotion-one-63",
- "template_reference_name": "runner",
- "git_commit": "0f823ea52be90061b69b3f8f6056ca1203ac3d81",
- "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/0f823ea52be90061b69b3f8f6056ca1203ac3d81",
+ "trail_name": "promotion-one-69",
+ "template_reference_name": "creator",
+ "git_commit": "01dd4c6406d6655898ef2236875ec9f67091c792",
+ "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792",
"git_commit_info": {
- "sha1": "0f823ea52be90061b69b3f8f6056ca1203ac3d81",
- "message": "Bump kosli/setup-cli-action to v5, use latest version",
+ "sha1": "01dd4c6406d6655898ef2236875ec9f67091c792",
+ "message": "Update comment and help text",
"author": "JonJagger ",
"branch": "main",
- "timestamp": 1779364424.0,
- "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/0f823ea52be90061b69b3f8f6056ca1203ac3d81"
+ "timestamp": 1781413514.0,
+ "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792"
},
- "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1?artifact_id=e03e6516-a74f-4b25-a42a-fecd41f9",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43?artifact_id=9c9caf33-c2d0-4732-b203-7de62808",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion",
"deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/0f823ea52be90061b69b3f8f6056ca1203ac3d81...0f823ea52be90061b69b3f8f6056ca1203ac3d81",
- "previous_git_commit": "0f823ea52be90061b69b3f8f6056ca1203ac3d81",
- "previous_fingerprint": "9db5a9987ba83419bec8ded2cc7bc5c9db814c8f0f275b5fe7228957ceed5ac2",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:bc8fb51@sha256:9db5a9987ba83419bec8ded2cc7bc5c9db814c8f0f275b5fe7228957ceed5ac2",
+ "diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/01dd4c6406d6655898ef2236875ec9f67091c792...01dd4c6406d6655898ef2236875ec9f67091c792",
+ "previous_git_commit": "01dd4c6406d6655898ef2236875ec9f67091c792",
+ "previous_fingerprint": "e8b5e25c5550658cdbd2b8339684b18bce86aaf6538611124ff62f2582c2e5b6",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:a288de5@sha256:e8b5e25c5550658cdbd2b8339684b18bce86aaf6538611124ff62f2582c2e5b6",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/0f823ea52be90061b69b3f8f6056ca1203ac3d81",
- "previous_trail_name": "promote-all-21",
- "previous_template_reference_name": "runner"
+ "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792",
+ "previous_trail_name": "promotion-one-68",
+ "previous_template_reference_name": "creator"
},
- "commit_lead_time": 1359630.0,
+ "commit_lead_time": 178634.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "runner-bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
- "template_reference_name": "runner",
- "git_commit": "ee081fb7be2ac7e2094bb4d02f3effdb9f73dd74",
- "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/ee081fb7be2ac7e2094bb4d02f3effdb9f73dd74",
+ "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
+ "template_reference_name": "creator",
+ "git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26",
+ "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26",
"git_commit_info": {
- "sha1": "ee081fb7be2ac7e2094bb4d02f3effdb9f73dd74",
- "message": "Fix deploy-swap race that clobbered per-vuln Snyk verdicts\n\n The live environment Snyk scan keys each per-vuln compliance trail by\n repo-severity-vulnid only. During a rolling deploy the env snapshot\n transiently holds two builds of the same repo, so env_snyk_test fans out a\n matrix job per build and both write the same trail's `snyk` attestation.\n Last-writer-wins, so the outgoing (older) build's verdict, computed against\n its older .snyk, could clobber the incoming build's correct one. That\n surfaced as runner showing non-compliant in aws-prod for x/net/html vulns\n that were in fact ignored, and (via a required trail-compliance env policy\n that spans every trail on the fingerprint) dragged aws-beta down too.\n\n Give each build's verdict its own identity on the shared trail rather than\n trying to pick a winner from the snapshot, which is unreliable: instance\n timestamps track restarts, not build recency (a flaky outgoing task can\n restart after the incoming one starts), and commit recency inverts on\n rollback.\n\n - combine_snyk.py: emit artifact_name and artifact_fingerprint per vuln.\n - artifact_snyk_test.yml: attest/read the per-vuln verdict as\n snyk- (VULN_ATTESTATION_NAME) and merge the fingerprint into\n the evaluate-trail rego params.\n - snyk-vuln-compliance.rego: select the status for data.params.fingerprint;\n an absent fingerprint leaves allow at its false default (fail toward\n non-compliant).\n - single-snyk-vuln.schema.json: document and require the new fields (also\n closes a pre-existing now/now_ts omission), guarded by a new contract test.\n\n Vuln age is unaffected: first_seen_ts stays the shared trail's created_at,\n which is why the trail key must not include the fingerprint.\n\n Also in this change:\n - test_rego_rules.sh: per-fingerprint inputs plus a two-build isolation test.\n - Convert test_find_expiring_vulns_logic.py from unittest to pytest functions.\n - Remove Makefile targets left dangling when 79ea32a moved scripts out of bin.\n - docs/: write up the race and the cross-environment trail-compliance effect.\n\n Co-Authored-By: Claude Opus 4.8 (1M context) ",
+ "sha1": "00c479764cb9eca038fdaaaef108672d0bb0ed26",
+ "message": "Shorten the per-vuln attestation name to a 10-char fingerprint\n\n The per-vuln attestation was named snyk-. A full\n SHA-256 fingerprint is 64 hex chars, which renders badly on the\n snyk--per-vuln flow page. The fingerprint is only there to keep two\n builds of the same artifact in one deploy snapshot from clobbering each\n other on the shared per-vuln trail, and the first 10 hex chars (40 bits)\n are far more than enough to keep distinct builds apart.\n\n GitHub Actions expressions have no substring function, so the name can\n no longer be built inline in the job-level env. Compute it in a shell\n step that truncates the fingerprint and exports VULN_ATTESTATION_NAME to\n $GITHUB_ENV, ahead of every step that reads it.\n\n Note: per-vuln trails that already carry a snyk-\n attestation will, on their next run, also gain a snyk-<10-char> one,\n since Kosli keys attestations by name. Only trails created after this\n change will have the short name alone.",
"author": "JonJagger ",
"branch": "main",
- "timestamp": 1780738845.0,
- "url": "https://github.com/cyber-dojo/snyk-scanning/commit/ee081fb7be2ac7e2094bb4d02f3effdb9f73dd74"
+ "timestamp": 1781594940.0,
+ "url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26"
},
- "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1?artifact_id=8fa3bbbb-9bf3-48a0-a95c-c557a8dc",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43?artifact_id=7fbd1cd0-0a21-4eba-afb9-361d314f",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact",
"deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/604111f4822bbc01169317b26fd0f794f5ee7cbf...ee081fb7be2ac7e2094bb4d02f3effdb9f73dd74",
- "previous_git_commit": "604111f4822bbc01169317b26fd0f794f5ee7cbf",
- "previous_fingerprint": "9db5a9987ba83419bec8ded2cc7bc5c9db814c8f0f275b5fe7228957ceed5ac2",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:bc8fb51@sha256:9db5a9987ba83419bec8ded2cc7bc5c9db814c8f0f275b5fe7228957ceed5ac2",
- "previous_artifact_compliance_state": "NON-COMPLIANT",
+ "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/7172cc22125f480a9f12127edb481a4d84aabea3...00c479764cb9eca038fdaaaef108672d0bb0ed26",
+ "previous_git_commit": "7172cc22125f480a9f12127edb481a4d84aabea3",
+ "previous_fingerprint": "e8b5e25c5550658cdbd2b8339684b18bce86aaf6538611124ff62f2582c2e5b6",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:a288de5@sha256:e8b5e25c5550658cdbd2b8339684b18bce86aaf6538611124ff62f2582c2e5b6",
+ "previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/604111f4822bbc01169317b26fd0f794f5ee7cbf",
- "previous_trail_name": "runner-9db5a9987ba83419bec8ded2cc7bc5c9db814c8f0f275b5fe7228957ceed5ac2",
- "previous_template_reference_name": "runner"
+ "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/7172cc22125f480a9f12127edb481a4d84aabea3",
+ "previous_trail_name": "creator-e8b5e25c5550658cdbd2b8339684b18bce86aaf6538611124ff62f2582c2e5b6",
+ "previous_template_reference_name": "creator"
},
- "commit_lead_time": -14791.0,
+ "commit_lead_time": -2792.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "runner-bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
- "template_reference_name": "runner",
- "git_commit": "ae002419e71c05cc5c1a285b52afdcef23d927c7",
- "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/ae002419e71c05cc5c1a285b52afdcef23d927c7",
+ "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
+ "template_reference_name": "creator",
+ "git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26",
+ "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26",
"git_commit_info": {
- "sha1": "ae002419e71c05cc5c1a285b52afdcef23d927c7",
- "message": "Upgrade workflows to use kosli-cli-setup v5",
+ "sha1": "00c479764cb9eca038fdaaaef108672d0bb0ed26",
+ "message": "Shorten the per-vuln attestation name to a 10-char fingerprint\n\n The per-vuln attestation was named snyk-. A full\n SHA-256 fingerprint is 64 hex chars, which renders badly on the\n snyk--per-vuln flow page. The fingerprint is only there to keep two\n builds of the same artifact in one deploy snapshot from clobbering each\n other on the shared per-vuln trail, and the first 10 hex chars (40 bits)\n are far more than enough to keep distinct builds apart.\n\n GitHub Actions expressions have no substring function, so the name can\n no longer be built inline in the job-level env. Compute it in a shell\n step that truncates the fingerprint and exports VULN_ATTESTATION_NAME to\n $GITHUB_ENV, ahead of every step that reads it.\n\n Note: per-vuln trails that already carry a snyk-\n attestation will, on their next run, also gain a snyk-<10-char> one,\n since Kosli keys attestations by name. Only trails created after this\n change will have the short name alone.",
"author": "JonJagger ",
"branch": "main",
- "timestamp": 1780908047.0,
- "url": "https://github.com/cyber-dojo/snyk-scanning/commit/ae002419e71c05cc5c1a285b52afdcef23d927c7"
+ "timestamp": 1781594940.0,
+ "url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26"
},
- "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1?artifact_id=e0ddfcdd-9cd5-43ca-a86d-539cc34c",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43?artifact_id=cad967ea-3ba5-498a-b93c-9c16e7a5",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact",
- "deployment_diff": null,
- "commit_lead_time": -183993.0,
+ "deployment_diff": {
+ "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/7172cc22125f480a9f12127edb481a4d84aabea3...00c479764cb9eca038fdaaaef108672d0bb0ed26",
+ "previous_git_commit": "7172cc22125f480a9f12127edb481a4d84aabea3",
+ "previous_fingerprint": "e8b5e25c5550658cdbd2b8339684b18bce86aaf6538611124ff62f2582c2e5b6",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:a288de5@sha256:e8b5e25c5550658cdbd2b8339684b18bce86aaf6538611124ff62f2582c2e5b6",
+ "previous_artifact_compliance_state": "COMPLIANT",
+ "previous_running": false,
+ "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/7172cc22125f480a9f12127edb481a4d84aabea3",
+ "previous_trail_name": "creator-e8b5e25c5550658cdbd2b8339684b18bce86aaf6538611124ff62f2582c2e5b6",
+ "previous_template_reference_name": "creator"
+ },
+ "commit_lead_time": -2792.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
}
],
"ecs_context": {
- "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/82017c83fa524baf8ceba3ceea36f5ca",
+ "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/fe497fd2bf964fa5b33898a96aff2883",
"cluster_name": null,
"service_name": null
}
},
{
- "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:2036886@sha256:e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035",
+ "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:f66cc5c@sha256:29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4",
"compliant": true,
"deployments": [],
"policy_decisions": [
@@ -2497,8 +2505,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "creator-ci",
- "trail_name": "20368865b1ba0532f99f69641bbb96e6334cb545",
+ "flow_name": "web-ci",
+ "trail_name": "f66cc5c51fcc19b04b36e0542b36b6cc52515d3c",
"artifact_status": null
}
},
@@ -2506,15 +2514,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-62",
- "artifact_status": null
- }
- },
- {
- "type": "rule_not_applicable",
- "context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "creator-e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -2522,7 +2522,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "creator-e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035",
+ "trail_name": "web-29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4",
"artifact_status": null
}
}
@@ -2542,8 +2542,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "creator-ci",
- "trail_name": "20368865b1ba0532f99f69641bbb96e6334cb545",
+ "flow_name": "web-ci",
+ "trail_name": "f66cc5c51fcc19b04b36e0542b36b6cc52515d3c",
"artifact_status": "COMPLIANT"
}
},
@@ -2551,15 +2551,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-62",
- "artifact_status": "COMPLIANT"
- }
- },
- {
- "type": "rule_not_applicable",
- "context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "creator-e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -2567,7 +2559,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "creator-e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035",
+ "trail_name": "web-29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4",
"artifact_status": "COMPLIANT"
}
}
@@ -2592,8 +2584,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_satisfied",
"context": {
- "flow_name": "creator-ci",
- "trail_name": "20368865b1ba0532f99f69641bbb96e6334cb545",
+ "flow_name": "web-ci",
+ "trail_name": "f66cc5c51fcc19b04b36e0542b36b6cc52515d3c",
"artifact_status": null
}
},
@@ -2601,15 +2593,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-62",
- "artifact_status": null
- }
- },
- {
- "type": "rule_not_applicable",
- "context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "creator-e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -2617,7 +2601,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "creator-e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035",
+ "trail_name": "web-29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4",
"artifact_status": null
}
}
@@ -2644,8 +2628,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_satisfied",
"context": {
- "flow_name": "creator-ci",
- "trail_name": "20368865b1ba0532f99f69641bbb96e6334cb545",
+ "flow_name": "web-ci",
+ "trail_name": "f66cc5c51fcc19b04b36e0542b36b6cc52515d3c",
"artifact_status": null
}
},
@@ -2653,15 +2637,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-62",
- "artifact_status": null
- }
- },
- {
- "type": "rule_satisfied",
- "context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "creator-e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -2669,7 +2645,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "creator-e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035",
+ "trail_name": "web-29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4",
"artifact_status": null
}
}
@@ -2689,8 +2665,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "creator-ci",
- "trail_name": "20368865b1ba0532f99f69641bbb96e6334cb545",
+ "flow_name": "web-ci",
+ "trail_name": "f66cc5c51fcc19b04b36e0542b36b6cc52515d3c",
"artifact_status": "COMPLIANT"
}
},
@@ -2698,15 +2674,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-62",
- "artifact_status": "COMPLIANT"
- }
- },
- {
- "type": "rule_not_applicable",
- "context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "creator-e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -2714,7 +2682,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "creator-e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035",
+ "trail_name": "web-29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4",
"artifact_status": "COMPLIANT"
}
}
@@ -2741,8 +2709,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "creator-ci",
- "trail_name": "20368865b1ba0532f99f69641bbb96e6334cb545",
+ "flow_name": "web-ci",
+ "trail_name": "f66cc5c51fcc19b04b36e0542b36b6cc52515d3c",
"artifact_status": null
}
},
@@ -2750,15 +2718,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-62",
- "artifact_status": null
- }
- },
- {
- "type": "rule_not_applicable",
- "context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "creator-e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -2766,7 +2726,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "creator-e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035",
+ "trail_name": "web-29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4",
"artifact_status": null
}
}
@@ -2786,8 +2746,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "creator-ci",
- "trail_name": "20368865b1ba0532f99f69641bbb96e6334cb545",
+ "flow_name": "web-ci",
+ "trail_name": "f66cc5c51fcc19b04b36e0542b36b6cc52515d3c",
"artifact_status": "COMPLIANT"
}
},
@@ -2795,15 +2755,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-62",
- "artifact_status": "COMPLIANT"
- }
- },
- {
- "type": "rule_not_applicable",
- "context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "creator-e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -2811,7 +2763,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "creator-e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035",
+ "trail_name": "web-29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4",
"artifact_status": "COMPLIANT"
}
}
@@ -2836,8 +2788,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "creator-ci",
- "trail_name": "20368865b1ba0532f99f69641bbb96e6334cb545",
+ "flow_name": "web-ci",
+ "trail_name": "f66cc5c51fcc19b04b36e0542b36b6cc52515d3c",
"artifact_status": null
}
},
@@ -2845,15 +2797,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-62",
- "artifact_status": null
- }
- },
- {
- "type": "rule_not_applicable",
- "context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "creator-e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -2861,7 +2805,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "creator-e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035",
+ "trail_name": "web-29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4",
"artifact_status": null
}
}
@@ -2888,8 +2832,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "creator-ci",
- "trail_name": "20368865b1ba0532f99f69641bbb96e6334cb545",
+ "flow_name": "web-ci",
+ "trail_name": "f66cc5c51fcc19b04b36e0542b36b6cc52515d3c",
"artifact_status": null
}
},
@@ -2897,15 +2841,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-62",
- "artifact_status": null
- }
- },
- {
- "type": "rule_not_applicable",
- "context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "creator-e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -2913,7 +2849,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "creator-e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035",
+ "trail_name": "web-29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4",
"artifact_status": null
}
}
@@ -2933,8 +2869,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "creator-ci",
- "trail_name": "20368865b1ba0532f99f69641bbb96e6334cb545",
+ "flow_name": "web-ci",
+ "trail_name": "f66cc5c51fcc19b04b36e0542b36b6cc52515d3c",
"artifact_status": "COMPLIANT"
}
},
@@ -2942,15 +2878,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-62",
- "artifact_status": "COMPLIANT"
- }
- },
- {
- "type": "rule_not_applicable",
- "context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "creator-e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -2958,7 +2886,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "creator-e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035",
+ "trail_name": "web-29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4",
"artifact_status": "COMPLIANT"
}
}
@@ -2983,8 +2911,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "creator-ci",
- "trail_name": "20368865b1ba0532f99f69641bbb96e6334cb545",
+ "flow_name": "web-ci",
+ "trail_name": "f66cc5c51fcc19b04b36e0542b36b6cc52515d3c",
"artifact_status": null
}
},
@@ -2992,15 +2920,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-62",
- "artifact_status": null
- }
- },
- {
- "type": "rule_not_applicable",
- "context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "creator-e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -3008,7 +2928,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "creator-e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035",
+ "trail_name": "web-29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4",
"artifact_status": null
}
}
@@ -3035,8 +2955,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "creator-ci",
- "trail_name": "20368865b1ba0532f99f69641bbb96e6334cb545",
+ "flow_name": "web-ci",
+ "trail_name": "f66cc5c51fcc19b04b36e0542b36b6cc52515d3c",
"artifact_status": null
}
},
@@ -3044,15 +2964,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-62",
- "artifact_status": null
- }
- },
- {
- "type": "rule_not_applicable",
- "context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "creator-e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -3060,7 +2972,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "creator-e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035",
+ "trail_name": "web-29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4",
"artifact_status": null
}
}
@@ -3086,8 +2998,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "creator-ci",
- "trail_name": "20368865b1ba0532f99f69641bbb96e6334cb545",
+ "flow_name": "web-ci",
+ "trail_name": "f66cc5c51fcc19b04b36e0542b36b6cc52515d3c",
"artifact_status": "COMPLIANT"
}
},
@@ -3095,15 +3007,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promotion-one-62",
- "artifact_status": "COMPLIANT"
- }
- },
- {
- "type": "rule_not_applicable",
- "context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "creator-e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -3111,7 +3015,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "creator-e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035",
+ "trail_name": "web-29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4",
"artifact_status": "COMPLIANT"
}
}
@@ -3122,157 +3026,128 @@ kosli get snapshot aws-prod --output=json
}
],
"reasons_for_incompliance": [],
- "fingerprint": "e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035",
+ "fingerprint": "29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4",
"creationTimestamp": [
- 1780389628
+ 1781590487,
+ 1781590572,
+ 1781590572
],
"pods": null,
"annotation": {
- "type": "changed",
- "was": 1,
- "now": 1
+ "type": "unchanged",
+ "was": 3,
+ "now": 3
},
- "flow_name": "creator-ci",
- "git_commit": "20368865b1ba0532f99f69641bbb96e6334cb545",
- "commit_url": "https://gitlab.com/cyber-dojo/creator/-/commit/20368865b1ba0532f99f69641bbb96e6334cb545",
- "html_url": "https://app.kosli.com/cyber-dojo/flows/creator-ci/artifacts/e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035?artifact_id=d5d4dc83-f3c0-4a50-b5cb-fdc4f610",
- "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/creator-ci",
+ "flow_name": "web-ci",
+ "git_commit": "f66cc5c51fcc19b04b36e0542b36b6cc52515d3c",
+ "commit_url": "https://github.com/cyber-dojo/web/commit/f66cc5c51fcc19b04b36e0542b36b6cc52515d3c",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci/artifacts/29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4?artifact_id=ed664433-201f-41ac-938b-5931b5f4",
+ "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci",
"deployment_diff": {
- "diff_url": "https://gitlab.com/cyber-dojo/creator/-/compare/3a066186b7fbbcec0130419518c5bb81b50e71db...20368865b1ba0532f99f69641bbb96e6334cb545",
- "previous_git_commit": "3a066186b7fbbcec0130419518c5bb81b50e71db",
- "previous_fingerprint": "bd66850aada99245f34fe2302aa00023d00c8165e8409e4f7be82f8fd768797e",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:3a06618@sha256:bd66850aada99245f34fe2302aa00023d00c8165e8409e4f7be82f8fd768797e",
+ "diff_url": "https://github.com/cyber-dojo/web/compare/8863c10c2c93d3539672e0bf75bd9925f8778564...f66cc5c51fcc19b04b36e0542b36b6cc52515d3c",
+ "previous_git_commit": "8863c10c2c93d3539672e0bf75bd9925f8778564",
+ "previous_fingerprint": "443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:8863c10@sha256:443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
- "previous_git_commit_url": "https://gitlab.com/cyber-dojo/creator/-/commit/3a066186b7fbbcec0130419518c5bb81b50e71db",
- "previous_trail_name": "3a066186b7fbbcec0130419518c5bb81b50e71db",
- "previous_template_reference_name": "creator"
+ "previous_git_commit_url": "https://github.com/cyber-dojo/web/commit/8863c10c2c93d3539672e0bf75bd9925f8778564",
+ "previous_trail_name": "8863c10c2c93d3539672e0bf75bd9925f8778564",
+ "previous_template_reference_name": "web"
},
- "commit_lead_time": 1333.0,
+ "commit_lead_time": 3595.0,
"flows": [
{
- "flow_name": "creator-ci",
- "trail_name": "20368865b1ba0532f99f69641bbb96e6334cb545",
- "template_reference_name": "creator",
- "git_commit": "20368865b1ba0532f99f69641bbb96e6334cb545",
- "commit_url": "https://gitlab.com/cyber-dojo/creator/-/commit/20368865b1ba0532f99f69641bbb96e6334cb545",
+ "flow_name": "web-ci",
+ "trail_name": "f66cc5c51fcc19b04b36e0542b36b6cc52515d3c",
+ "template_reference_name": "web",
+ "git_commit": "f66cc5c51fcc19b04b36e0542b36b6cc52515d3c",
+ "commit_url": "https://github.com/cyber-dojo/web/commit/f66cc5c51fcc19b04b36e0542b36b6cc52515d3c",
"git_commit_info": {
- "sha1": "20368865b1ba0532f99f69641bbb96e6334cb545",
- "message": "Merge branch 'downtime-notice' into 'main'\n\nAdd downtime notice for pending infrastructure upgrade\n\nSee merge request cyber-dojo/creator!250",
- "author": "Jon Jagger ",
- "branch": "main",
- "timestamp": 1780388295.0,
- "url": "https://gitlab.com/cyber-dojo/creator/-/commit/20368865b1ba0532f99f69641bbb96e6334cb545"
+ "sha1": "f66cc5c51fcc19b04b36e0542b36b6cc52515d3c",
+ "message": "Unify with fork options on home page (#360)",
+ "author": "Jon Jagger ",
+ "branch": "",
+ "timestamp": 1781421562.0,
+ "url": "https://github.com/cyber-dojo/web/commit/f66cc5c51fcc19b04b36e0542b36b6cc52515d3c"
},
- "html_url": "https://app.kosli.com/cyber-dojo/flows/creator-ci/artifacts/e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035?artifact_id=d5d4dc83-f3c0-4a50-b5cb-fdc4f610",
- "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/creator-ci",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci/artifacts/29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4?artifact_id=ed664433-201f-41ac-938b-5931b5f4",
+ "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci",
"deployment_diff": {
- "diff_url": "https://gitlab.com/cyber-dojo/creator/-/compare/3a066186b7fbbcec0130419518c5bb81b50e71db...20368865b1ba0532f99f69641bbb96e6334cb545",
- "previous_git_commit": "3a066186b7fbbcec0130419518c5bb81b50e71db",
- "previous_fingerprint": "bd66850aada99245f34fe2302aa00023d00c8165e8409e4f7be82f8fd768797e",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:3a06618@sha256:bd66850aada99245f34fe2302aa00023d00c8165e8409e4f7be82f8fd768797e",
+ "diff_url": "https://github.com/cyber-dojo/web/compare/8863c10c2c93d3539672e0bf75bd9925f8778564...f66cc5c51fcc19b04b36e0542b36b6cc52515d3c",
+ "previous_git_commit": "8863c10c2c93d3539672e0bf75bd9925f8778564",
+ "previous_fingerprint": "443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:8863c10@sha256:443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
- "previous_git_commit_url": "https://gitlab.com/cyber-dojo/creator/-/commit/3a066186b7fbbcec0130419518c5bb81b50e71db",
- "previous_trail_name": "3a066186b7fbbcec0130419518c5bb81b50e71db",
- "previous_template_reference_name": "creator"
+ "previous_git_commit_url": "https://github.com/cyber-dojo/web/commit/8863c10c2c93d3539672e0bf75bd9925f8778564",
+ "previous_trail_name": "8863c10c2c93d3539672e0bf75bd9925f8778564",
+ "previous_template_reference_name": "web"
},
- "commit_lead_time": 1333.0,
+ "commit_lead_time": 3595.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
"flow_name": "production-promotion",
- "trail_name": "promotion-one-62",
- "template_reference_name": "creator",
- "git_commit": "0f823ea52be90061b69b3f8f6056ca1203ac3d81",
- "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/0f823ea52be90061b69b3f8f6056ca1203ac3d81",
+ "trail_name": "promote-all-23",
+ "template_reference_name": "web",
+ "git_commit": "01dd4c6406d6655898ef2236875ec9f67091c792",
+ "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792",
"git_commit_info": {
- "sha1": "0f823ea52be90061b69b3f8f6056ca1203ac3d81",
- "message": "Bump kosli/setup-cli-action to v5, use latest version",
+ "sha1": "01dd4c6406d6655898ef2236875ec9f67091c792",
+ "message": "Update comment and help text",
"author": "JonJagger ",
"branch": "main",
- "timestamp": 1779364424.0,
- "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/0f823ea52be90061b69b3f8f6056ca1203ac3d81"
+ "timestamp": 1781413514.0,
+ "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792"
},
- "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035?artifact_id=97fad3b0-e932-4eb8-a59f-2e4e5901",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4?artifact_id=f3c729dc-26db-4c43-961c-1dd0d4d0",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion",
"deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/0f823ea52be90061b69b3f8f6056ca1203ac3d81...0f823ea52be90061b69b3f8f6056ca1203ac3d81",
- "previous_git_commit": "0f823ea52be90061b69b3f8f6056ca1203ac3d81",
- "previous_fingerprint": "bd66850aada99245f34fe2302aa00023d00c8165e8409e4f7be82f8fd768797e",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:3a06618@sha256:bd66850aada99245f34fe2302aa00023d00c8165e8409e4f7be82f8fd768797e",
- "previous_artifact_compliance_state": "COMPLIANT",
- "previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/0f823ea52be90061b69b3f8f6056ca1203ac3d81",
- "previous_trail_name": "promote-all-19",
- "previous_template_reference_name": "creator"
- },
- "commit_lead_time": 1025204.0,
- "artifact_compliance_in_flow": true,
- "flow_reasons_for_non_compliance": []
- },
- {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "creator-e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035",
- "template_reference_name": "creator",
- "git_commit": "ee081fb7be2ac7e2094bb4d02f3effdb9f73dd74",
- "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/ee081fb7be2ac7e2094bb4d02f3effdb9f73dd74",
- "git_commit_info": {
- "sha1": "ee081fb7be2ac7e2094bb4d02f3effdb9f73dd74",
- "message": "Fix deploy-swap race that clobbered per-vuln Snyk verdicts\n\n The live environment Snyk scan keys each per-vuln compliance trail by\n repo-severity-vulnid only. During a rolling deploy the env snapshot\n transiently holds two builds of the same repo, so env_snyk_test fans out a\n matrix job per build and both write the same trail's `snyk` attestation.\n Last-writer-wins, so the outgoing (older) build's verdict, computed against\n its older .snyk, could clobber the incoming build's correct one. That\n surfaced as runner showing non-compliant in aws-prod for x/net/html vulns\n that were in fact ignored, and (via a required trail-compliance env policy\n that spans every trail on the fingerprint) dragged aws-beta down too.\n\n Give each build's verdict its own identity on the shared trail rather than\n trying to pick a winner from the snapshot, which is unreliable: instance\n timestamps track restarts, not build recency (a flaky outgoing task can\n restart after the incoming one starts), and commit recency inverts on\n rollback.\n\n - combine_snyk.py: emit artifact_name and artifact_fingerprint per vuln.\n - artifact_snyk_test.yml: attest/read the per-vuln verdict as\n snyk- (VULN_ATTESTATION_NAME) and merge the fingerprint into\n the evaluate-trail rego params.\n - snyk-vuln-compliance.rego: select the status for data.params.fingerprint;\n an absent fingerprint leaves allow at its false default (fail toward\n non-compliant).\n - single-snyk-vuln.schema.json: document and require the new fields (also\n closes a pre-existing now/now_ts omission), guarded by a new contract test.\n\n Vuln age is unaffected: first_seen_ts stays the shared trail's created_at,\n which is why the trail key must not include the fingerprint.\n\n Also in this change:\n - test_rego_rules.sh: per-fingerprint inputs plus a two-build isolation test.\n - Convert test_find_expiring_vulns_logic.py from unittest to pytest functions.\n - Remove Makefile targets left dangling when 79ea32a moved scripts out of bin.\n - docs/: write up the race and the cross-environment trail-compliance effect.\n\n Co-Authored-By: Claude Opus 4.8 (1M context) ",
- "author": "JonJagger ",
- "branch": "main",
- "timestamp": 1780738845.0,
- "url": "https://github.com/cyber-dojo/snyk-scanning/commit/ee081fb7be2ac7e2094bb4d02f3effdb9f73dd74"
- },
- "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035?artifact_id=4e410286-9a56-4314-8490-5a4b1010",
- "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact",
- "deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/4cca3cf991dc8340b82c03e0a80b7b7a1b136bda...ee081fb7be2ac7e2094bb4d02f3effdb9f73dd74",
- "previous_git_commit": "4cca3cf991dc8340b82c03e0a80b7b7a1b136bda",
- "previous_fingerprint": "87c2ae3209e66bfb2470ffccfb9bff93a47bc7cbb215c2a68261bf13211dda41",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:dba05d3@sha256:87c2ae3209e66bfb2470ffccfb9bff93a47bc7cbb215c2a68261bf13211dda41",
+ "diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/8d5d7b8b19d97204eb0701a813fe53c68c21ccd0...01dd4c6406d6655898ef2236875ec9f67091c792",
+ "previous_git_commit": "8d5d7b8b19d97204eb0701a813fe53c68c21ccd0",
+ "previous_fingerprint": "443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:8863c10@sha256:443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/4cca3cf991dc8340b82c03e0a80b7b7a1b136bda",
- "previous_trail_name": "creator-87c2ae3209e66bfb2470ffccfb9bff93a47bc7cbb215c2a68261bf13211dda41",
- "previous_template_reference_name": "creator"
+ "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/8d5d7b8b19d97204eb0701a813fe53c68c21ccd0",
+ "previous_trail_name": "promotion-one-65",
+ "previous_template_reference_name": "web"
},
- "commit_lead_time": -349217.0,
+ "commit_lead_time": 11643.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "creator-e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035",
- "template_reference_name": "creator",
- "git_commit": "ae002419e71c05cc5c1a285b52afdcef23d927c7",
- "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/ae002419e71c05cc5c1a285b52afdcef23d927c7",
+ "trail_name": "web-29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4",
+ "template_reference_name": "web",
+ "git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26",
+ "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26",
"git_commit_info": {
- "sha1": "ae002419e71c05cc5c1a285b52afdcef23d927c7",
- "message": "Upgrade workflows to use kosli-cli-setup v5",
+ "sha1": "00c479764cb9eca038fdaaaef108672d0bb0ed26",
+ "message": "Shorten the per-vuln attestation name to a 10-char fingerprint\n\n The per-vuln attestation was named snyk-. A full\n SHA-256 fingerprint is 64 hex chars, which renders badly on the\n snyk--per-vuln flow page. The fingerprint is only there to keep two\n builds of the same artifact in one deploy snapshot from clobbering each\n other on the shared per-vuln trail, and the first 10 hex chars (40 bits)\n are far more than enough to keep distinct builds apart.\n\n GitHub Actions expressions have no substring function, so the name can\n no longer be built inline in the job-level env. Compute it in a shell\n step that truncates the fingerprint and exports VULN_ATTESTATION_NAME to\n $GITHUB_ENV, ahead of every step that reads it.\n\n Note: per-vuln trails that already carry a snyk-\n attestation will, on their next run, also gain a snyk-<10-char> one,\n since Kosli keys attestations by name. Only trails created after this\n change will have the short name alone.",
"author": "JonJagger ",
"branch": "main",
- "timestamp": 1780908047.0,
- "url": "https://github.com/cyber-dojo/snyk-scanning/commit/ae002419e71c05cc5c1a285b52afdcef23d927c7"
+ "timestamp": 1781594940.0,
+ "url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26"
},
- "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035?artifact_id=3fc1256c-7ba5-4869-830b-d5d5bd36",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4?artifact_id=60a2f8f5-0eb8-414a-8f17-e0516412",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact",
"deployment_diff": null,
- "commit_lead_time": -518419.0,
+ "commit_lead_time": -169783.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
}
],
"ecs_context": {
- "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/5c12e0e349eb44aa8049af6e45f4664d",
+ "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/f08f2c3460d64049a886ec5a8d334a95",
"cluster_name": null,
"service_name": null
}
},
{
- "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:f3c6791@sha256:9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
+ "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:8c84fac@sha256:f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419",
"compliant": true,
"deployments": [],
"policy_decisions": [
@@ -3294,24 +3169,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "dashboard-ci",
- "trail_name": "f3c679170776733c60dc485e076b7cb515caa7a4",
+ "flow_name": "saver-ci",
+ "trail_name": "8c84facc7fd6a663fe7d40a6b4aff8f13a94d600",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "saver-f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "dashboard-9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -3319,7 +3194,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "dashboard-9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
+ "trail_name": "saver-f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419",
"artifact_status": null
}
}
@@ -3339,24 +3214,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "dashboard-ci",
- "trail_name": "f3c679170776733c60dc485e076b7cb515caa7a4",
+ "flow_name": "saver-ci",
+ "trail_name": "8c84facc7fd6a663fe7d40a6b4aff8f13a94d600",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "saver-f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "dashboard-9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -3364,7 +3239,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "dashboard-9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
+ "trail_name": "saver-f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419",
"artifact_status": "COMPLIANT"
}
}
@@ -3389,24 +3264,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_satisfied",
"context": {
- "flow_name": "dashboard-ci",
- "trail_name": "f3c679170776733c60dc485e076b7cb515caa7a4",
+ "flow_name": "saver-ci",
+ "trail_name": "8c84facc7fd6a663fe7d40a6b4aff8f13a94d600",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "saver-f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "dashboard-9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -3414,7 +3289,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "dashboard-9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
+ "trail_name": "saver-f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419",
"artifact_status": null
}
}
@@ -3441,24 +3316,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_satisfied",
"context": {
- "flow_name": "dashboard-ci",
- "trail_name": "f3c679170776733c60dc485e076b7cb515caa7a4",
+ "flow_name": "saver-ci",
+ "trail_name": "8c84facc7fd6a663fe7d40a6b4aff8f13a94d600",
"artifact_status": null
}
},
{
"type": "rule_satisfied",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "saver-f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419",
"artifact_status": null
}
},
{
"type": "rule_satisfied",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "dashboard-9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -3466,7 +3341,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "dashboard-9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
+ "trail_name": "saver-f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419",
"artifact_status": null
}
}
@@ -3486,24 +3361,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "dashboard-ci",
- "trail_name": "f3c679170776733c60dc485e076b7cb515caa7a4",
+ "flow_name": "saver-ci",
+ "trail_name": "8c84facc7fd6a663fe7d40a6b4aff8f13a94d600",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "saver-f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "dashboard-9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -3511,7 +3386,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "dashboard-9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
+ "trail_name": "saver-f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419",
"artifact_status": "COMPLIANT"
}
}
@@ -3538,24 +3413,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "dashboard-ci",
- "trail_name": "f3c679170776733c60dc485e076b7cb515caa7a4",
+ "flow_name": "saver-ci",
+ "trail_name": "8c84facc7fd6a663fe7d40a6b4aff8f13a94d600",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "saver-f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "dashboard-9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -3563,7 +3438,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "dashboard-9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
+ "trail_name": "saver-f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419",
"artifact_status": null
}
}
@@ -3583,24 +3458,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "dashboard-ci",
- "trail_name": "f3c679170776733c60dc485e076b7cb515caa7a4",
+ "flow_name": "saver-ci",
+ "trail_name": "8c84facc7fd6a663fe7d40a6b4aff8f13a94d600",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "saver-f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "dashboard-9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -3608,7 +3483,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "dashboard-9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
+ "trail_name": "saver-f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419",
"artifact_status": "COMPLIANT"
}
}
@@ -3633,24 +3508,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "dashboard-ci",
- "trail_name": "f3c679170776733c60dc485e076b7cb515caa7a4",
+ "flow_name": "saver-ci",
+ "trail_name": "8c84facc7fd6a663fe7d40a6b4aff8f13a94d600",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "saver-f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "dashboard-9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -3658,7 +3533,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "dashboard-9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
+ "trail_name": "saver-f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419",
"artifact_status": null
}
}
@@ -3685,24 +3560,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "dashboard-ci",
- "trail_name": "f3c679170776733c60dc485e076b7cb515caa7a4",
+ "flow_name": "saver-ci",
+ "trail_name": "8c84facc7fd6a663fe7d40a6b4aff8f13a94d600",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "saver-f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "dashboard-9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -3710,7 +3585,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "dashboard-9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
+ "trail_name": "saver-f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419",
"artifact_status": null
}
}
@@ -3730,24 +3605,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "dashboard-ci",
- "trail_name": "f3c679170776733c60dc485e076b7cb515caa7a4",
+ "flow_name": "saver-ci",
+ "trail_name": "8c84facc7fd6a663fe7d40a6b4aff8f13a94d600",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "saver-f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "dashboard-9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -3755,7 +3630,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "dashboard-9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
+ "trail_name": "saver-f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419",
"artifact_status": "COMPLIANT"
}
}
@@ -3780,24 +3655,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "dashboard-ci",
- "trail_name": "f3c679170776733c60dc485e076b7cb515caa7a4",
+ "flow_name": "saver-ci",
+ "trail_name": "8c84facc7fd6a663fe7d40a6b4aff8f13a94d600",
"artifact_status": null
}
},
{
- "type": "rule_satisfied",
+ "type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "saver-f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419",
"artifact_status": null
}
},
{
- "type": "rule_not_applicable",
+ "type": "rule_satisfied",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "dashboard-9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -3805,7 +3680,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "dashboard-9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
+ "trail_name": "saver-f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419",
"artifact_status": null
}
}
@@ -3832,24 +3707,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "dashboard-ci",
- "trail_name": "f3c679170776733c60dc485e076b7cb515caa7a4",
+ "flow_name": "saver-ci",
+ "trail_name": "8c84facc7fd6a663fe7d40a6b4aff8f13a94d600",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "saver-f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "dashboard-9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -3857,7 +3732,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "dashboard-9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
+ "trail_name": "saver-f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419",
"artifact_status": null
}
}
@@ -3883,24 +3758,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "dashboard-ci",
- "trail_name": "f3c679170776733c60dc485e076b7cb515caa7a4",
+ "flow_name": "saver-ci",
+ "trail_name": "8c84facc7fd6a663fe7d40a6b4aff8f13a94d600",
"artifact_status": "COMPLIANT"
}
},
{
- "type": "rule_satisfied",
+ "type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "saver-f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419",
"artifact_status": "COMPLIANT"
}
},
{
- "type": "rule_not_applicable",
+ "type": "rule_satisfied",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "dashboard-9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -3908,7 +3783,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "dashboard-9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
+ "trail_name": "saver-f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419",
"artifact_status": "COMPLIANT"
}
}
@@ -3919,157 +3794,157 @@ kosli get snapshot aws-prod --output=json
}
],
"reasons_for_incompliance": [],
- "fingerprint": "9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
+ "fingerprint": "f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419",
"creationTimestamp": [
- 1780333321
+ 1781590483
],
"pods": null,
"annotation": {
- "type": "changed",
+ "type": "unchanged",
"was": 1,
"now": 1
},
- "flow_name": "dashboard-ci",
- "git_commit": "f3c679170776733c60dc485e076b7cb515caa7a4",
- "commit_url": "https://github.com/cyber-dojo/dashboard/commit/f3c679170776733c60dc485e076b7cb515caa7a4",
- "html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci/artifacts/9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349?artifact_id=a92f3bf6-3316-405e-aee8-51af645c",
- "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci",
+ "flow_name": "saver-ci",
+ "git_commit": "8c84facc7fd6a663fe7d40a6b4aff8f13a94d600",
+ "commit_url": "https://github.com/cyber-dojo/saver/commit/8c84facc7fd6a663fe7d40a6b4aff8f13a94d600",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci/artifacts/f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419?artifact_id=bf5cf82a-8413-437c-97b0-1977ba2c",
+ "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci",
"deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/dashboard/compare/0a839a472d41bf860d1d6dc3ded45ff63144018d...f3c679170776733c60dc485e076b7cb515caa7a4",
- "previous_git_commit": "0a839a472d41bf860d1d6dc3ded45ff63144018d",
- "previous_fingerprint": "3e17f5432489791b25c9b30a879b5542ca0999ef5597cab8c8485a30ebca8d39",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:0a839a4@sha256:3e17f5432489791b25c9b30a879b5542ca0999ef5597cab8c8485a30ebca8d39",
+ "diff_url": "https://github.com/cyber-dojo/saver/compare/68d791f93dc161fd8dba63e49b7fe9f909cbe758...8c84facc7fd6a663fe7d40a6b4aff8f13a94d600",
+ "previous_git_commit": "68d791f93dc161fd8dba63e49b7fe9f909cbe758",
+ "previous_fingerprint": "5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:68d791f@sha256:5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/dashboard/commit/0a839a472d41bf860d1d6dc3ded45ff63144018d",
- "previous_trail_name": "0a839a472d41bf860d1d6dc3ded45ff63144018d",
- "previous_template_reference_name": "dashboard"
+ "previous_git_commit_url": "https://github.com/cyber-dojo/saver/commit/68d791f93dc161fd8dba63e49b7fe9f909cbe758",
+ "previous_trail_name": "68d791f93dc161fd8dba63e49b7fe9f909cbe758",
+ "previous_template_reference_name": "saver"
},
- "commit_lead_time": 282213.0,
+ "commit_lead_time": 10730.0,
"flows": [
{
- "flow_name": "dashboard-ci",
- "trail_name": "f3c679170776733c60dc485e076b7cb515caa7a4",
- "template_reference_name": "dashboard",
- "git_commit": "f3c679170776733c60dc485e076b7cb515caa7a4",
- "commit_url": "https://github.com/cyber-dojo/dashboard/commit/f3c679170776733c60dc485e076b7cb515caa7a4",
+ "flow_name": "saver-ci",
+ "trail_name": "8c84facc7fd6a663fe7d40a6b4aff8f13a94d600",
+ "template_reference_name": "saver",
+ "git_commit": "8c84facc7fd6a663fe7d40a6b4aff8f13a94d600",
+ "commit_url": "https://github.com/cyber-dojo/saver/commit/8c84facc7fd6a663fe7d40a6b4aff8f13a94d600",
"git_commit_info": {
- "sha1": "f3c679170776733c60dc485e076b7cb515caa7a4",
- "message": "Improve demo reliability, hovertip UX, file-event display, and dash\u2026 (#386)\n\n* Improve demo reliability, hovertip UX, file-event display, and dashboard layout\n\n make demo now stops containers on any of our ports before tearing down the\n compose stack, preventing port-conflict failures when containers from other\n projects (e.g. test_web_saver) are already bound to the same ports.\n\n make demo now depends on image_server which depends on assets, so the\n pre-built JS/CSS are always regenerated before the server image is baked.\n Previously a stale pre-built-app.js was silently baked in, causing the\n diff_summary fetch to hit /differ/ instead of /dashboard/.\n\n Hovertip improvements:\n - Removed the duplicate traffic-light icon from the summary row\n - Removed the \"!\" type marker before each filename in the diff table\n - Diff line-count boxes are always coloured and always show the digit\n (including zero), matching the web repo's style; removed disabled attr\n whose [disabled] CSS rule was making digits invisible against the background\n - Test filenames shown in steel-blue via cd.lib.isTestFile() (ported from web)\n - Filename gets 6px left padding now the type-marker column is gone\n\n Inter-test file events (file_edit, file_create etc.) now render as\n file_test.png or file_code.png based on whether the filename is a test file,\n rather than the generic coloured icon. The filename is passed through\n light_json and Event#filename so the JS can make the distinction.\n\n Avatars with only inter-test file events (no test runs yet) now appear in\n both the dashboard and the progress dialog. Previously gatherer.rb required\n at least one light? event; it now uses a separate has_activity flag so the\n row is included whenever any non-create event exists.\n\n extra_file_edits in create_group_kata.rb now edits both hiker.sh and\n test_hiker.sh per loop iteration, giving the hovertip diff table something\n realistic to show for both file types.\n\n Dashboard table max-height changed from a fixed 520px to calc(100dvh - 90px)\n so all avatar rows are visible on typical screens without being clipped.\n\n* Bump test metrics",
+ "sha1": "8c84facc7fd6a663fe7d40a6b4aff8f13a94d600",
+ "message": "Force ci run to pick up changes in secure-docker-build workflow (#404)\n\nThe secure-docker-build now annotates the artifact with type=build\nand the intention is to use this annotation to improve the snyk\nscanning workflows determination of which flow among many in a\nenvironment snapshot is the build flow.",
"author": "Jon Jagger ",
- "branch": "main",
- "timestamp": 1780051108.0,
- "url": "https://github.com/cyber-dojo/dashboard/commit/f3c679170776733c60dc485e076b7cb515caa7a4"
+ "branch": "",
+ "timestamp": 1781414517.0,
+ "url": "https://github.com/cyber-dojo/saver/commit/8c84facc7fd6a663fe7d40a6b4aff8f13a94d600"
},
- "html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci/artifacts/9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349?artifact_id=a92f3bf6-3316-405e-aee8-51af645c",
- "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci/artifacts/f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419?artifact_id=bf5cf82a-8413-437c-97b0-1977ba2c",
+ "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci",
"deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/dashboard/compare/0a839a472d41bf860d1d6dc3ded45ff63144018d...f3c679170776733c60dc485e076b7cb515caa7a4",
- "previous_git_commit": "0a839a472d41bf860d1d6dc3ded45ff63144018d",
- "previous_fingerprint": "3e17f5432489791b25c9b30a879b5542ca0999ef5597cab8c8485a30ebca8d39",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:0a839a4@sha256:3e17f5432489791b25c9b30a879b5542ca0999ef5597cab8c8485a30ebca8d39",
+ "diff_url": "https://github.com/cyber-dojo/saver/compare/68d791f93dc161fd8dba63e49b7fe9f909cbe758...8c84facc7fd6a663fe7d40a6b4aff8f13a94d600",
+ "previous_git_commit": "68d791f93dc161fd8dba63e49b7fe9f909cbe758",
+ "previous_fingerprint": "5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:68d791f@sha256:5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/dashboard/commit/0a839a472d41bf860d1d6dc3ded45ff63144018d",
- "previous_trail_name": "0a839a472d41bf860d1d6dc3ded45ff63144018d",
- "previous_template_reference_name": "dashboard"
+ "previous_git_commit_url": "https://github.com/cyber-dojo/saver/commit/68d791f93dc161fd8dba63e49b7fe9f909cbe758",
+ "previous_trail_name": "68d791f93dc161fd8dba63e49b7fe9f909cbe758",
+ "previous_template_reference_name": "saver"
},
- "commit_lead_time": 282213.0,
+ "commit_lead_time": 10730.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
- "template_reference_name": "dashboard",
- "git_commit": "0f823ea52be90061b69b3f8f6056ca1203ac3d81",
- "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/0f823ea52be90061b69b3f8f6056ca1203ac3d81",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "saver-f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419",
+ "template_reference_name": "saver",
+ "git_commit": "7172cc22125f480a9f12127edb481a4d84aabea3",
+ "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/7172cc22125f480a9f12127edb481a4d84aabea3",
"git_commit_info": {
- "sha1": "0f823ea52be90061b69b3f8f6056ca1203ac3d81",
- "message": "Bump kosli/setup-cli-action to v5, use latest version",
+ "sha1": "7172cc22125f480a9f12127edb481a4d84aabea3",
+ "message": "Add notes on proposed refactoring to detecting a build flow [ci skip]",
"author": "JonJagger ",
"branch": "main",
- "timestamp": 1779364424.0,
- "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/0f823ea52be90061b69b3f8f6056ca1203ac3d81"
+ "timestamp": 1781416288.0,
+ "url": "https://github.com/cyber-dojo/snyk-scanning/commit/7172cc22125f480a9f12127edb481a4d84aabea3"
},
- "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349?artifact_id=61ae32cc-bd72-4d45-b577-00c7ebcc",
- "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419?artifact_id=d2a65e4e-2cc7-4f40-9a76-cc369677",
+ "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact",
"deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/0f823ea52be90061b69b3f8f6056ca1203ac3d81...0f823ea52be90061b69b3f8f6056ca1203ac3d81",
- "previous_git_commit": "0f823ea52be90061b69b3f8f6056ca1203ac3d81",
- "previous_fingerprint": "3e17f5432489791b25c9b30a879b5542ca0999ef5597cab8c8485a30ebca8d39",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:0a839a4@sha256:3e17f5432489791b25c9b30a879b5542ca0999ef5597cab8c8485a30ebca8d39",
+ "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4...7172cc22125f480a9f12127edb481a4d84aabea3",
+ "previous_git_commit": "c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4",
+ "previous_fingerprint": "5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:68d791f@sha256:5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/0f823ea52be90061b69b3f8f6056ca1203ac3d81",
- "previous_trail_name": "promotion-one-60",
- "previous_template_reference_name": "dashboard"
+ "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4",
+ "previous_trail_name": "saver-5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
+ "previous_template_reference_name": "saver"
},
- "commit_lead_time": 968897.0,
+ "commit_lead_time": 8959.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "dashboard-9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
- "template_reference_name": "dashboard",
- "git_commit": "c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4",
- "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
+ "template_reference_name": "saver",
+ "git_commit": "01dd4c6406d6655898ef2236875ec9f67091c792",
+ "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792",
"git_commit_info": {
- "sha1": "c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4",
- "message": "Delete dead step to force a trail to have empty template",
+ "sha1": "01dd4c6406d6655898ef2236875ec9f67091c792",
+ "message": "Update comment and help text",
"author": "JonJagger ",
"branch": "main",
- "timestamp": 1780329192.0,
- "url": "https://github.com/cyber-dojo/snyk-scanning/commit/c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4"
+ "timestamp": 1781413514.0,
+ "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792"
},
- "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349?artifact_id=62436f11-800d-4c82-8310-fea50750",
- "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419?artifact_id=e1457e4c-5b88-4bc6-930e-5d84b1c0",
+ "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion",
"deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/4cca3cf991dc8340b82c03e0a80b7b7a1b136bda...c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4",
- "previous_git_commit": "4cca3cf991dc8340b82c03e0a80b7b7a1b136bda",
- "previous_fingerprint": "ce124c6f3f157fb1e6e456cef8d7e518997b4612bd0f40608a5f2728b2d9a0c7",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:9cd9145@sha256:ce124c6f3f157fb1e6e456cef8d7e518997b4612bd0f40608a5f2728b2d9a0c7",
+ "diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/0f823ea52be90061b69b3f8f6056ca1203ac3d81...01dd4c6406d6655898ef2236875ec9f67091c792",
+ "previous_git_commit": "0f823ea52be90061b69b3f8f6056ca1203ac3d81",
+ "previous_fingerprint": "5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:68d791f@sha256:5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/4cca3cf991dc8340b82c03e0a80b7b7a1b136bda",
- "previous_trail_name": "dashboard-ce124c6f3f157fb1e6e456cef8d7e518997b4612bd0f40608a5f2728b2d9a0c7",
- "previous_template_reference_name": "dashboard"
+ "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/0f823ea52be90061b69b3f8f6056ca1203ac3d81",
+ "previous_trail_name": "promote-all-21",
+ "previous_template_reference_name": "saver"
},
- "commit_lead_time": 4129.0,
+ "commit_lead_time": 11733.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "dashboard-9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
- "template_reference_name": "dashboard",
- "git_commit": "ae002419e71c05cc5c1a285b52afdcef23d927c7",
- "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/ae002419e71c05cc5c1a285b52afdcef23d927c7",
+ "trail_name": "saver-f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419",
+ "template_reference_name": "saver",
+ "git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26",
+ "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26",
"git_commit_info": {
- "sha1": "ae002419e71c05cc5c1a285b52afdcef23d927c7",
- "message": "Upgrade workflows to use kosli-cli-setup v5",
+ "sha1": "00c479764cb9eca038fdaaaef108672d0bb0ed26",
+ "message": "Shorten the per-vuln attestation name to a 10-char fingerprint\n\n The per-vuln attestation was named snyk-. A full\n SHA-256 fingerprint is 64 hex chars, which renders badly on the\n snyk--per-vuln flow page. The fingerprint is only there to keep two\n builds of the same artifact in one deploy snapshot from clobbering each\n other on the shared per-vuln trail, and the first 10 hex chars (40 bits)\n are far more than enough to keep distinct builds apart.\n\n GitHub Actions expressions have no substring function, so the name can\n no longer be built inline in the job-level env. Compute it in a shell\n step that truncates the fingerprint and exports VULN_ATTESTATION_NAME to\n $GITHUB_ENV, ahead of every step that reads it.\n\n Note: per-vuln trails that already carry a snyk-\n attestation will, on their next run, also gain a snyk-<10-char> one,\n since Kosli keys attestations by name. Only trails created after this\n change will have the short name alone.",
"author": "JonJagger ",
"branch": "main",
- "timestamp": 1780908047.0,
- "url": "https://github.com/cyber-dojo/snyk-scanning/commit/ae002419e71c05cc5c1a285b52afdcef23d927c7"
+ "timestamp": 1781594940.0,
+ "url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26"
},
- "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349?artifact_id=79068d1a-ad50-4647-8a9e-7aaf8485",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419?artifact_id=4e422cd5-c6ed-4986-b4c4-514ff1ee",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact",
"deployment_diff": null,
- "commit_lead_time": -574726.0,
+ "commit_lead_time": -169693.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
}
],
"ecs_context": {
- "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/9e212cb69576480b973a361b12389554",
+ "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/8d72a550952c4512b8b9bd5b74565dfd",
"cluster_name": null,
"service_name": null
}
},
{
- "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:d3e5850@sha256:9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
+ "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:7e86fed@sha256:b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676",
"compliant": true,
"deployments": [],
"policy_decisions": [
@@ -4091,24 +3966,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "custom-start-points-ci",
- "trail_name": "d3e5850912655f2b18a68129f5f3a6480fe305ef",
+ "flow_name": "languages-start-points-ci",
+ "trail_name": "7e86fede3e42d573de92fed483559b8317ce2dda",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "languages-start-points-b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "custom-start-points-9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -4116,7 +3991,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "custom-start-points-9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
+ "trail_name": "languages-start-points-b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676",
"artifact_status": null
}
}
@@ -4136,24 +4011,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "custom-start-points-ci",
- "trail_name": "d3e5850912655f2b18a68129f5f3a6480fe305ef",
+ "flow_name": "languages-start-points-ci",
+ "trail_name": "7e86fede3e42d573de92fed483559b8317ce2dda",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "languages-start-points-b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "custom-start-points-9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -4161,7 +4036,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "custom-start-points-9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
+ "trail_name": "languages-start-points-b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676",
"artifact_status": "COMPLIANT"
}
}
@@ -4186,24 +4061,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_satisfied",
"context": {
- "flow_name": "custom-start-points-ci",
- "trail_name": "d3e5850912655f2b18a68129f5f3a6480fe305ef",
+ "flow_name": "languages-start-points-ci",
+ "trail_name": "7e86fede3e42d573de92fed483559b8317ce2dda",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "languages-start-points-b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "custom-start-points-9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -4211,7 +4086,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "custom-start-points-9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
+ "trail_name": "languages-start-points-b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676",
"artifact_status": null
}
}
@@ -4238,24 +4113,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_satisfied",
"context": {
- "flow_name": "custom-start-points-ci",
- "trail_name": "d3e5850912655f2b18a68129f5f3a6480fe305ef",
+ "flow_name": "languages-start-points-ci",
+ "trail_name": "7e86fede3e42d573de92fed483559b8317ce2dda",
"artifact_status": null
}
},
{
"type": "rule_satisfied",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "languages-start-points-b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676",
"artifact_status": null
}
},
{
"type": "rule_satisfied",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "custom-start-points-9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -4263,7 +4138,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "custom-start-points-9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
+ "trail_name": "languages-start-points-b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676",
"artifact_status": null
}
}
@@ -4283,24 +4158,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "custom-start-points-ci",
- "trail_name": "d3e5850912655f2b18a68129f5f3a6480fe305ef",
+ "flow_name": "languages-start-points-ci",
+ "trail_name": "7e86fede3e42d573de92fed483559b8317ce2dda",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "languages-start-points-b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "custom-start-points-9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -4308,7 +4183,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "custom-start-points-9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
+ "trail_name": "languages-start-points-b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676",
"artifact_status": "COMPLIANT"
}
}
@@ -4335,24 +4210,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "custom-start-points-ci",
- "trail_name": "d3e5850912655f2b18a68129f5f3a6480fe305ef",
+ "flow_name": "languages-start-points-ci",
+ "trail_name": "7e86fede3e42d573de92fed483559b8317ce2dda",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "languages-start-points-b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "custom-start-points-9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -4360,7 +4235,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "custom-start-points-9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
+ "trail_name": "languages-start-points-b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676",
"artifact_status": null
}
}
@@ -4380,24 +4255,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "custom-start-points-ci",
- "trail_name": "d3e5850912655f2b18a68129f5f3a6480fe305ef",
+ "flow_name": "languages-start-points-ci",
+ "trail_name": "7e86fede3e42d573de92fed483559b8317ce2dda",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "languages-start-points-b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "custom-start-points-9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -4405,7 +4280,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "custom-start-points-9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
+ "trail_name": "languages-start-points-b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676",
"artifact_status": "COMPLIANT"
}
}
@@ -4430,24 +4305,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "custom-start-points-ci",
- "trail_name": "d3e5850912655f2b18a68129f5f3a6480fe305ef",
+ "flow_name": "languages-start-points-ci",
+ "trail_name": "7e86fede3e42d573de92fed483559b8317ce2dda",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "languages-start-points-b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "custom-start-points-9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -4455,7 +4330,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "custom-start-points-9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
+ "trail_name": "languages-start-points-b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676",
"artifact_status": null
}
}
@@ -4482,24 +4357,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "custom-start-points-ci",
- "trail_name": "d3e5850912655f2b18a68129f5f3a6480fe305ef",
+ "flow_name": "languages-start-points-ci",
+ "trail_name": "7e86fede3e42d573de92fed483559b8317ce2dda",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "languages-start-points-b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "custom-start-points-9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -4507,7 +4382,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "custom-start-points-9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
+ "trail_name": "languages-start-points-b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676",
"artifact_status": null
}
}
@@ -4527,24 +4402,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "custom-start-points-ci",
- "trail_name": "d3e5850912655f2b18a68129f5f3a6480fe305ef",
+ "flow_name": "languages-start-points-ci",
+ "trail_name": "7e86fede3e42d573de92fed483559b8317ce2dda",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "languages-start-points-b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "custom-start-points-9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -4552,7 +4427,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "custom-start-points-9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
+ "trail_name": "languages-start-points-b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676",
"artifact_status": "COMPLIANT"
}
}
@@ -4577,24 +4452,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "custom-start-points-ci",
- "trail_name": "d3e5850912655f2b18a68129f5f3a6480fe305ef",
+ "flow_name": "languages-start-points-ci",
+ "trail_name": "7e86fede3e42d573de92fed483559b8317ce2dda",
"artifact_status": null
}
},
{
- "type": "rule_satisfied",
+ "type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "languages-start-points-b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676",
"artifact_status": null
}
},
{
- "type": "rule_not_applicable",
+ "type": "rule_satisfied",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "custom-start-points-9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -4602,7 +4477,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "custom-start-points-9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
+ "trail_name": "languages-start-points-b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676",
"artifact_status": null
}
}
@@ -4629,24 +4504,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "custom-start-points-ci",
- "trail_name": "d3e5850912655f2b18a68129f5f3a6480fe305ef",
+ "flow_name": "languages-start-points-ci",
+ "trail_name": "7e86fede3e42d573de92fed483559b8317ce2dda",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "languages-start-points-b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "custom-start-points-9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -4654,7 +4529,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "custom-start-points-9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
+ "trail_name": "languages-start-points-b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676",
"artifact_status": null
}
}
@@ -4680,24 +4555,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "custom-start-points-ci",
- "trail_name": "d3e5850912655f2b18a68129f5f3a6480fe305ef",
+ "flow_name": "languages-start-points-ci",
+ "trail_name": "7e86fede3e42d573de92fed483559b8317ce2dda",
"artifact_status": "COMPLIANT"
}
},
{
- "type": "rule_satisfied",
+ "type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "languages-start-points-b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676",
"artifact_status": "COMPLIANT"
}
},
{
- "type": "rule_not_applicable",
+ "type": "rule_satisfied",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "custom-start-points-9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -4705,7 +4580,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "custom-start-points-9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
+ "trail_name": "languages-start-points-b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676",
"artifact_status": "COMPLIANT"
}
}
@@ -4716,157 +4591,167 @@ kosli get snapshot aws-prod --output=json
}
],
"reasons_for_incompliance": [],
- "fingerprint": "9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
+ "fingerprint": "b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676",
"creationTimestamp": [
- 1780333290
+ 1781590480
],
"pods": null,
"annotation": {
- "type": "changed",
+ "type": "unchanged",
"was": 1,
"now": 1
},
- "flow_name": "custom-start-points-ci",
- "git_commit": "d3e5850912655f2b18a68129f5f3a6480fe305ef",
- "commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/d3e5850912655f2b18a68129f5f3a6480fe305ef",
- "html_url": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci/artifacts/9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6?artifact_id=7c413c73-ba1e-4707-b6d3-ced83312",
- "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci",
+ "flow_name": "languages-start-points-ci",
+ "git_commit": "7e86fede3e42d573de92fed483559b8317ce2dda",
+ "commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/7e86fede3e42d573de92fed483559b8317ce2dda",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci/artifacts/b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676?artifact_id=8f51b5c2-8561-491c-a91e-248d6452",
+ "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci",
"deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/custom-start-points/compare/a300e4c15cff321ef952a60bbc3a4729772a2419...d3e5850912655f2b18a68129f5f3a6480fe305ef",
- "previous_git_commit": "a300e4c15cff321ef952a60bbc3a4729772a2419",
- "previous_fingerprint": "434d14680ac3762f42c8ee761b801d8202776cf49389572e351955741b89be7d",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:a300e4c@sha256:434d14680ac3762f42c8ee761b801d8202776cf49389572e351955741b89be7d",
+ "diff_url": "https://github.com/cyber-dojo/languages-start-points/compare/9513e77858d775950f22173d0afd0634b2ac20b9...7e86fede3e42d573de92fed483559b8317ce2dda",
+ "previous_git_commit": "9513e77858d775950f22173d0afd0634b2ac20b9",
+ "previous_fingerprint": "31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:9513e77@sha256:31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/a300e4c15cff321ef952a60bbc3a4729772a2419",
- "previous_trail_name": "a300e4c15cff321ef952a60bbc3a4729772a2419",
- "previous_template_reference_name": "custom-start-points"
+ "previous_git_commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/9513e77858d775950f22173d0afd0634b2ac20b9",
+ "previous_trail_name": "9513e77858d775950f22173d0afd0634b2ac20b9",
+ "previous_template_reference_name": "languages-start-points"
},
- "commit_lead_time": 376736.0,
+ "commit_lead_time": 7951.0,
"flows": [
{
- "flow_name": "custom-start-points-ci",
- "trail_name": "d3e5850912655f2b18a68129f5f3a6480fe305ef",
- "template_reference_name": "custom-start-points",
- "git_commit": "d3e5850912655f2b18a68129f5f3a6480fe305ef",
- "commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/d3e5850912655f2b18a68129f5f3a6480fe305ef",
+ "flow_name": "languages-start-points-ci",
+ "trail_name": "7e86fede3e42d573de92fed483559b8317ce2dda",
+ "template_reference_name": "languages-start-points",
+ "git_commit": "7e86fede3e42d573de92fed483559b8317ce2dda",
+ "commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/7e86fede3e42d573de92fed483559b8317ce2dda",
"git_commit_info": {
- "sha1": "d3e5850912655f2b18a68129f5f3a6480fe305ef",
- "message": "Merge pull request #116 from cyber-dojo/tidy-workflow\n\nTidy workflow using composite actions",
+ "sha1": "7e86fede3e42d573de92fed483559b8317ce2dda",
+ "message": "Merge pull request #217 from cyber-dojo/annotate-build-attestation\n\nAdd --annotate type=build to kosli-attest-artifact",
"author": "Jon Jagger ",
"branch": "main",
- "timestamp": 1779956554.0,
- "url": "https://github.com/cyber-dojo/custom-start-points/commit/d3e5850912655f2b18a68129f5f3a6480fe305ef"
+ "timestamp": 1781417546.0,
+ "url": "https://github.com/cyber-dojo/languages-start-points/commit/7e86fede3e42d573de92fed483559b8317ce2dda"
},
- "html_url": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci/artifacts/9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6?artifact_id=7c413c73-ba1e-4707-b6d3-ced83312",
- "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci/artifacts/b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676?artifact_id=8f51b5c2-8561-491c-a91e-248d6452",
+ "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci",
"deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/custom-start-points/compare/a300e4c15cff321ef952a60bbc3a4729772a2419...d3e5850912655f2b18a68129f5f3a6480fe305ef",
- "previous_git_commit": "a300e4c15cff321ef952a60bbc3a4729772a2419",
- "previous_fingerprint": "434d14680ac3762f42c8ee761b801d8202776cf49389572e351955741b89be7d",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:a300e4c@sha256:434d14680ac3762f42c8ee761b801d8202776cf49389572e351955741b89be7d",
+ "diff_url": "https://github.com/cyber-dojo/languages-start-points/compare/9513e77858d775950f22173d0afd0634b2ac20b9...7e86fede3e42d573de92fed483559b8317ce2dda",
+ "previous_git_commit": "9513e77858d775950f22173d0afd0634b2ac20b9",
+ "previous_fingerprint": "31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:9513e77@sha256:31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/a300e4c15cff321ef952a60bbc3a4729772a2419",
- "previous_trail_name": "a300e4c15cff321ef952a60bbc3a4729772a2419",
- "previous_template_reference_name": "custom-start-points"
+ "previous_git_commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/9513e77858d775950f22173d0afd0634b2ac20b9",
+ "previous_trail_name": "9513e77858d775950f22173d0afd0634b2ac20b9",
+ "previous_template_reference_name": "languages-start-points"
},
- "commit_lead_time": 376736.0,
+ "commit_lead_time": 7951.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
- "template_reference_name": "custom-start-points",
- "git_commit": "0f823ea52be90061b69b3f8f6056ca1203ac3d81",
- "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/0f823ea52be90061b69b3f8f6056ca1203ac3d81",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "languages-start-points-b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676",
+ "template_reference_name": "languages-start-points",
+ "git_commit": "7172cc22125f480a9f12127edb481a4d84aabea3",
+ "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/7172cc22125f480a9f12127edb481a4d84aabea3",
"git_commit_info": {
- "sha1": "0f823ea52be90061b69b3f8f6056ca1203ac3d81",
- "message": "Bump kosli/setup-cli-action to v5, use latest version",
+ "sha1": "7172cc22125f480a9f12127edb481a4d84aabea3",
+ "message": "Add notes on proposed refactoring to detecting a build flow [ci skip]",
"author": "JonJagger ",
"branch": "main",
- "timestamp": 1779364424.0,
- "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/0f823ea52be90061b69b3f8f6056ca1203ac3d81"
+ "timestamp": 1781416288.0,
+ "url": "https://github.com/cyber-dojo/snyk-scanning/commit/7172cc22125f480a9f12127edb481a4d84aabea3"
},
- "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6?artifact_id=48c2d119-e488-4ba6-8c7e-27abb4f5",
- "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676?artifact_id=1358dc7a-956e-42d9-94f0-f80d43f4",
+ "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact",
"deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/5fd1b6bba27771e4c93b8c29b3ff69465dff1c26...0f823ea52be90061b69b3f8f6056ca1203ac3d81",
- "previous_git_commit": "5fd1b6bba27771e4c93b8c29b3ff69465dff1c26",
- "previous_fingerprint": "434d14680ac3762f42c8ee761b801d8202776cf49389572e351955741b89be7d",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:a300e4c@sha256:434d14680ac3762f42c8ee761b801d8202776cf49389572e351955741b89be7d",
+ "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4...7172cc22125f480a9f12127edb481a4d84aabea3",
+ "previous_git_commit": "c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4",
+ "previous_fingerprint": "31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:9513e77@sha256:31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/5fd1b6bba27771e4c93b8c29b3ff69465dff1c26",
- "previous_trail_name": "promote-all-18",
- "previous_template_reference_name": "custom-start-points"
+ "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4",
+ "previous_trail_name": "languages-start-points-31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
+ "previous_template_reference_name": "languages-start-points"
},
- "commit_lead_time": 968866.0,
+ "commit_lead_time": 9209.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "custom-start-points-9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
- "template_reference_name": "custom-start-points",
- "git_commit": "c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4",
- "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
+ "template_reference_name": "languages-start-points",
+ "git_commit": "01dd4c6406d6655898ef2236875ec9f67091c792",
+ "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792",
"git_commit_info": {
- "sha1": "c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4",
- "message": "Delete dead step to force a trail to have empty template",
+ "sha1": "01dd4c6406d6655898ef2236875ec9f67091c792",
+ "message": "Update comment and help text",
"author": "JonJagger ",
"branch": "main",
- "timestamp": 1780329192.0,
- "url": "https://github.com/cyber-dojo/snyk-scanning/commit/c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4"
+ "timestamp": 1781413514.0,
+ "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792"
},
- "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6?artifact_id=c151610f-8a0c-4ba7-b38d-b9cbd626",
- "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676?artifact_id=829046f2-8834-4970-b5e0-eeb47e59",
+ "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion",
"deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/822a5831653b0901ce5256c6e16d7eedb63ebc06...c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4",
- "previous_git_commit": "822a5831653b0901ce5256c6e16d7eedb63ebc06",
- "previous_fingerprint": "434d14680ac3762f42c8ee761b801d8202776cf49389572e351955741b89be7d",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:a300e4c@sha256:434d14680ac3762f42c8ee761b801d8202776cf49389572e351955741b89be7d",
+ "diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/0f823ea52be90061b69b3f8f6056ca1203ac3d81...01dd4c6406d6655898ef2236875ec9f67091c792",
+ "previous_git_commit": "0f823ea52be90061b69b3f8f6056ca1203ac3d81",
+ "previous_fingerprint": "31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:9513e77@sha256:31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/822a5831653b0901ce5256c6e16d7eedb63ebc06",
- "previous_trail_name": "custom-start-points-434d14680ac3762f42c8ee761b801d8202776cf49389572e351955741b89be7d",
- "previous_template_reference_name": "custom-start-points"
+ "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/0f823ea52be90061b69b3f8f6056ca1203ac3d81",
+ "previous_trail_name": "promote-all-21",
+ "previous_template_reference_name": "languages-start-points"
},
- "commit_lead_time": 4098.0,
+ "commit_lead_time": 11983.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "custom-start-points-9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
- "template_reference_name": "custom-start-points",
- "git_commit": "ae002419e71c05cc5c1a285b52afdcef23d927c7",
- "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/ae002419e71c05cc5c1a285b52afdcef23d927c7",
+ "trail_name": "languages-start-points-b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676",
+ "template_reference_name": "languages-start-points",
+ "git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26",
+ "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26",
"git_commit_info": {
- "sha1": "ae002419e71c05cc5c1a285b52afdcef23d927c7",
- "message": "Upgrade workflows to use kosli-cli-setup v5",
+ "sha1": "00c479764cb9eca038fdaaaef108672d0bb0ed26",
+ "message": "Shorten the per-vuln attestation name to a 10-char fingerprint\n\n The per-vuln attestation was named snyk-. A full\n SHA-256 fingerprint is 64 hex chars, which renders badly on the\n snyk--per-vuln flow page. The fingerprint is only there to keep two\n builds of the same artifact in one deploy snapshot from clobbering each\n other on the shared per-vuln trail, and the first 10 hex chars (40 bits)\n are far more than enough to keep distinct builds apart.\n\n GitHub Actions expressions have no substring function, so the name can\n no longer be built inline in the job-level env. Compute it in a shell\n step that truncates the fingerprint and exports VULN_ATTESTATION_NAME to\n $GITHUB_ENV, ahead of every step that reads it.\n\n Note: per-vuln trails that already carry a snyk-\n attestation will, on their next run, also gain a snyk-<10-char> one,\n since Kosli keys attestations by name. Only trails created after this\n change will have the short name alone.",
"author": "JonJagger ",
"branch": "main",
- "timestamp": 1780908047.0,
- "url": "https://github.com/cyber-dojo/snyk-scanning/commit/ae002419e71c05cc5c1a285b52afdcef23d927c7"
+ "timestamp": 1781594940.0,
+ "url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26"
},
- "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6?artifact_id=b0c2bef4-6074-4910-9c85-f9132902",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676?artifact_id=ff36b479-e375-4c03-8a1e-66d35e93",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact",
- "deployment_diff": null,
- "commit_lead_time": -574757.0,
+ "deployment_diff": {
+ "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/60fd5bffe45bc9618e81fabf8dd6793f92d10817...00c479764cb9eca038fdaaaef108672d0bb0ed26",
+ "previous_git_commit": "60fd5bffe45bc9618e81fabf8dd6793f92d10817",
+ "previous_fingerprint": "61efd6bdd33f8aefaca42f60b29303634cd82c912eecbce570abe2eca9bd20c7",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:20ff3f9@sha256:61efd6bdd33f8aefaca42f60b29303634cd82c912eecbce570abe2eca9bd20c7",
+ "previous_artifact_compliance_state": "COMPLIANT",
+ "previous_running": false,
+ "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/60fd5bffe45bc9618e81fabf8dd6793f92d10817",
+ "previous_trail_name": "languages-start-points-61efd6bdd33f8aefaca42f60b29303634cd82c912eecbce570abe2eca9bd20c7",
+ "previous_template_reference_name": "languages-start-points"
+ },
+ "commit_lead_time": -169443.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
}
],
"ecs_context": {
- "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/f8dea79e89ef4714a3d069452ce8aea0",
+ "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/a1f4adbbf9094ef88e2e8f7a05e50a65",
"cluster_name": null,
"service_name": null
}
},
{
- "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:9513e77@sha256:31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
+ "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:7065268@sha256:b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
"compliant": true,
"deployments": [],
"policy_decisions": [
@@ -4888,8 +4773,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "languages-start-points-ci",
- "trail_name": "9513e77858d775950f22173d0afd0634b2ac20b9",
+ "flow_name": "nginx-ci",
+ "trail_name": "706526874659341458da5bb21903a6423c0a5a29",
"artifact_status": null
}
},
@@ -4897,7 +4782,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -4905,7 +4790,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "languages-start-points-31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
+ "trail_name": "nginx-b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
"artifact_status": null
}
},
@@ -4913,7 +4798,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "languages-start-points-31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
+ "trail_name": "nginx-b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
"artifact_status": null
}
}
@@ -4933,8 +4818,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "languages-start-points-ci",
- "trail_name": "9513e77858d775950f22173d0afd0634b2ac20b9",
+ "flow_name": "nginx-ci",
+ "trail_name": "706526874659341458da5bb21903a6423c0a5a29",
"artifact_status": "COMPLIANT"
}
},
@@ -4942,7 +4827,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -4950,7 +4835,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "languages-start-points-31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
+ "trail_name": "nginx-b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
"artifact_status": "COMPLIANT"
}
},
@@ -4958,7 +4843,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "languages-start-points-31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
+ "trail_name": "nginx-b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
"artifact_status": "COMPLIANT"
}
}
@@ -4983,8 +4868,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_satisfied",
"context": {
- "flow_name": "languages-start-points-ci",
- "trail_name": "9513e77858d775950f22173d0afd0634b2ac20b9",
+ "flow_name": "nginx-ci",
+ "trail_name": "706526874659341458da5bb21903a6423c0a5a29",
"artifact_status": null
}
},
@@ -4992,7 +4877,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -5000,7 +4885,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "languages-start-points-31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
+ "trail_name": "nginx-b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
"artifact_status": null
}
},
@@ -5008,7 +4893,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "languages-start-points-31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
+ "trail_name": "nginx-b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
"artifact_status": null
}
}
@@ -5035,8 +4920,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_satisfied",
"context": {
- "flow_name": "languages-start-points-ci",
- "trail_name": "9513e77858d775950f22173d0afd0634b2ac20b9",
+ "flow_name": "nginx-ci",
+ "trail_name": "706526874659341458da5bb21903a6423c0a5a29",
"artifact_status": null
}
},
@@ -5044,7 +4929,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -5052,7 +4937,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "languages-start-points-31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
+ "trail_name": "nginx-b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
"artifact_status": null
}
},
@@ -5060,7 +4945,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "languages-start-points-31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
+ "trail_name": "nginx-b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
"artifact_status": null
}
}
@@ -5080,8 +4965,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "languages-start-points-ci",
- "trail_name": "9513e77858d775950f22173d0afd0634b2ac20b9",
+ "flow_name": "nginx-ci",
+ "trail_name": "706526874659341458da5bb21903a6423c0a5a29",
"artifact_status": "COMPLIANT"
}
},
@@ -5089,7 +4974,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -5097,7 +4982,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "languages-start-points-31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
+ "trail_name": "nginx-b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
"artifact_status": "COMPLIANT"
}
},
@@ -5105,7 +4990,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "languages-start-points-31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
+ "trail_name": "nginx-b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
"artifact_status": "COMPLIANT"
}
}
@@ -5132,8 +5017,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "languages-start-points-ci",
- "trail_name": "9513e77858d775950f22173d0afd0634b2ac20b9",
+ "flow_name": "nginx-ci",
+ "trail_name": "706526874659341458da5bb21903a6423c0a5a29",
"artifact_status": null
}
},
@@ -5141,7 +5026,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -5149,7 +5034,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "languages-start-points-31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
+ "trail_name": "nginx-b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
"artifact_status": null
}
},
@@ -5157,7 +5042,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "languages-start-points-31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
+ "trail_name": "nginx-b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
"artifact_status": null
}
}
@@ -5177,8 +5062,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "languages-start-points-ci",
- "trail_name": "9513e77858d775950f22173d0afd0634b2ac20b9",
+ "flow_name": "nginx-ci",
+ "trail_name": "706526874659341458da5bb21903a6423c0a5a29",
"artifact_status": "COMPLIANT"
}
},
@@ -5186,7 +5071,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -5194,7 +5079,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "languages-start-points-31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
+ "trail_name": "nginx-b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
"artifact_status": "COMPLIANT"
}
},
@@ -5202,7 +5087,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "languages-start-points-31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
+ "trail_name": "nginx-b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
"artifact_status": "COMPLIANT"
}
}
@@ -5227,8 +5112,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "languages-start-points-ci",
- "trail_name": "9513e77858d775950f22173d0afd0634b2ac20b9",
+ "flow_name": "nginx-ci",
+ "trail_name": "706526874659341458da5bb21903a6423c0a5a29",
"artifact_status": null
}
},
@@ -5236,7 +5121,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -5244,7 +5129,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "languages-start-points-31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
+ "trail_name": "nginx-b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
"artifact_status": null
}
},
@@ -5252,7 +5137,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "languages-start-points-31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
+ "trail_name": "nginx-b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
"artifact_status": null
}
}
@@ -5279,8 +5164,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "languages-start-points-ci",
- "trail_name": "9513e77858d775950f22173d0afd0634b2ac20b9",
+ "flow_name": "nginx-ci",
+ "trail_name": "706526874659341458da5bb21903a6423c0a5a29",
"artifact_status": null
}
},
@@ -5288,7 +5173,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -5296,7 +5181,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "languages-start-points-31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
+ "trail_name": "nginx-b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
"artifact_status": null
}
},
@@ -5304,7 +5189,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "languages-start-points-31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
+ "trail_name": "nginx-b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
"artifact_status": null
}
}
@@ -5324,8 +5209,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "languages-start-points-ci",
- "trail_name": "9513e77858d775950f22173d0afd0634b2ac20b9",
+ "flow_name": "nginx-ci",
+ "trail_name": "706526874659341458da5bb21903a6423c0a5a29",
"artifact_status": "COMPLIANT"
}
},
@@ -5333,7 +5218,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -5341,7 +5226,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "languages-start-points-31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
+ "trail_name": "nginx-b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
"artifact_status": "COMPLIANT"
}
},
@@ -5349,7 +5234,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "languages-start-points-31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
+ "trail_name": "nginx-b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
"artifact_status": "COMPLIANT"
}
}
@@ -5374,8 +5259,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "languages-start-points-ci",
- "trail_name": "9513e77858d775950f22173d0afd0634b2ac20b9",
+ "flow_name": "nginx-ci",
+ "trail_name": "706526874659341458da5bb21903a6423c0a5a29",
"artifact_status": null
}
},
@@ -5383,7 +5268,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -5391,7 +5276,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "languages-start-points-31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
+ "trail_name": "nginx-b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
"artifact_status": null
}
},
@@ -5399,7 +5284,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "languages-start-points-31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
+ "trail_name": "nginx-b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
"artifact_status": null
}
}
@@ -5426,8 +5311,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "languages-start-points-ci",
- "trail_name": "9513e77858d775950f22173d0afd0634b2ac20b9",
+ "flow_name": "nginx-ci",
+ "trail_name": "706526874659341458da5bb21903a6423c0a5a29",
"artifact_status": null
}
},
@@ -5435,7 +5320,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -5443,7 +5328,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "languages-start-points-31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
+ "trail_name": "nginx-b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
"artifact_status": null
}
},
@@ -5451,7 +5336,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "languages-start-points-31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
+ "trail_name": "nginx-b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
"artifact_status": null
}
}
@@ -5477,8 +5362,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "languages-start-points-ci",
- "trail_name": "9513e77858d775950f22173d0afd0634b2ac20b9",
+ "flow_name": "nginx-ci",
+ "trail_name": "706526874659341458da5bb21903a6423c0a5a29",
"artifact_status": "COMPLIANT"
}
},
@@ -5486,7 +5371,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -5494,7 +5379,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "languages-start-points-31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
+ "trail_name": "nginx-b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
"artifact_status": "COMPLIANT"
}
},
@@ -5502,7 +5387,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "languages-start-points-31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
+ "trail_name": "nginx-b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
"artifact_status": "COMPLIANT"
}
}
@@ -5513,167 +5398,157 @@ kosli get snapshot aws-prod --output=json
}
],
"reasons_for_incompliance": [],
- "fingerprint": "31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
+ "fingerprint": "b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
"creationTimestamp": [
- 1780333031
+ 1781590473
],
"pods": null,
"annotation": {
- "type": "changed",
+ "type": "unchanged",
"was": 1,
"now": 1
},
- "flow_name": "languages-start-points-ci",
- "git_commit": "9513e77858d775950f22173d0afd0634b2ac20b9",
- "commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/9513e77858d775950f22173d0afd0634b2ac20b9",
- "html_url": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci/artifacts/31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02?artifact_id=ed68d54a-2549-4822-9dc5-96dad6c1",
- "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci",
+ "flow_name": "nginx-ci",
+ "git_commit": "706526874659341458da5bb21903a6423c0a5a29",
+ "commit_url": "https://github.com/cyber-dojo/nginx/commit/706526874659341458da5bb21903a6423c0a5a29",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci/artifacts/b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8?artifact_id=0438395b-a9b0-4ee5-9b30-8cd146d9",
+ "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci",
"deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/languages-start-points/compare/16d155bdd120fe5a926504069dd18a98b8275fa8...9513e77858d775950f22173d0afd0634b2ac20b9",
- "previous_git_commit": "16d155bdd120fe5a926504069dd18a98b8275fa8",
- "previous_fingerprint": "83a90c5556aa83e18b36983267ed9d160f665cb35d9fb0572b0f7c410de5e2bd",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:16d155b@sha256:83a90c5556aa83e18b36983267ed9d160f665cb35d9fb0572b0f7c410de5e2bd",
+ "diff_url": "https://github.com/cyber-dojo/nginx/compare/cdaac807f3282bd0bba056d906d5536074297a04...706526874659341458da5bb21903a6423c0a5a29",
+ "previous_git_commit": "cdaac807f3282bd0bba056d906d5536074297a04",
+ "previous_fingerprint": "da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:cdaac80@sha256:da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/16d155bdd120fe5a926504069dd18a98b8275fa8",
- "previous_trail_name": "16d155bdd120fe5a926504069dd18a98b8275fa8",
- "previous_template_reference_name": "languages-start-points"
+ "previous_git_commit_url": "https://github.com/cyber-dojo/nginx/commit/cdaac807f3282bd0bba056d906d5536074297a04",
+ "previous_trail_name": "cdaac807f3282bd0bba056d906d5536074297a04",
+ "previous_template_reference_name": "nginx"
},
- "commit_lead_time": 376070.0,
+ "commit_lead_time": 8575.0,
"flows": [
{
- "flow_name": "languages-start-points-ci",
- "trail_name": "9513e77858d775950f22173d0afd0634b2ac20b9",
- "template_reference_name": "languages-start-points",
- "git_commit": "9513e77858d775950f22173d0afd0634b2ac20b9",
- "commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/9513e77858d775950f22173d0afd0634b2ac20b9",
+ "flow_name": "nginx-ci",
+ "trail_name": "706526874659341458da5bb21903a6423c0a5a29",
+ "template_reference_name": "nginx",
+ "git_commit": "706526874659341458da5bb21903a6423c0a5a29",
+ "commit_url": "https://github.com/cyber-dojo/nginx/commit/706526874659341458da5bb21903a6423c0a5a29",
"git_commit_info": {
- "sha1": "9513e77858d775950f22173d0afd0634b2ac20b9",
- "message": "Merge pull request #214 from cyber-dojo/tidy-workflow\n\nTidy workflow using composite actions",
+ "sha1": "706526874659341458da5bb21903a6423c0a5a29",
+ "message": "Merge pull request #132 from cyber-dojo/force-ci-run-34\n\nRun ci workflow to pickup new --annotation in secure-docker-build.yml",
"author": "Jon Jagger ",
- "branch": "main",
- "timestamp": 1779956961.0,
- "url": "https://github.com/cyber-dojo/languages-start-points/commit/9513e77858d775950f22173d0afd0634b2ac20b9"
+ "branch": "",
+ "timestamp": 1781416577.0,
+ "url": "https://github.com/cyber-dojo/nginx/commit/706526874659341458da5bb21903a6423c0a5a29"
},
- "html_url": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci/artifacts/31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02?artifact_id=ed68d54a-2549-4822-9dc5-96dad6c1",
- "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci/artifacts/b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8?artifact_id=0438395b-a9b0-4ee5-9b30-8cd146d9",
+ "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci",
"deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/languages-start-points/compare/16d155bdd120fe5a926504069dd18a98b8275fa8...9513e77858d775950f22173d0afd0634b2ac20b9",
- "previous_git_commit": "16d155bdd120fe5a926504069dd18a98b8275fa8",
- "previous_fingerprint": "83a90c5556aa83e18b36983267ed9d160f665cb35d9fb0572b0f7c410de5e2bd",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:16d155b@sha256:83a90c5556aa83e18b36983267ed9d160f665cb35d9fb0572b0f7c410de5e2bd",
+ "diff_url": "https://github.com/cyber-dojo/nginx/compare/cdaac807f3282bd0bba056d906d5536074297a04...706526874659341458da5bb21903a6423c0a5a29",
+ "previous_git_commit": "cdaac807f3282bd0bba056d906d5536074297a04",
+ "previous_fingerprint": "da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:cdaac80@sha256:da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/16d155bdd120fe5a926504069dd18a98b8275fa8",
- "previous_trail_name": "16d155bdd120fe5a926504069dd18a98b8275fa8",
- "previous_template_reference_name": "languages-start-points"
+ "previous_git_commit_url": "https://github.com/cyber-dojo/nginx/commit/cdaac807f3282bd0bba056d906d5536074297a04",
+ "previous_trail_name": "cdaac807f3282bd0bba056d906d5536074297a04",
+ "previous_template_reference_name": "nginx"
},
- "commit_lead_time": 376070.0,
+ "commit_lead_time": 8575.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
"flow_name": "production-promotion",
- "trail_name": "promote-all-21",
- "template_reference_name": "languages-start-points",
- "git_commit": "0f823ea52be90061b69b3f8f6056ca1203ac3d81",
- "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/0f823ea52be90061b69b3f8f6056ca1203ac3d81",
+ "trail_name": "promote-all-23",
+ "template_reference_name": "nginx",
+ "git_commit": "01dd4c6406d6655898ef2236875ec9f67091c792",
+ "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792",
"git_commit_info": {
- "sha1": "0f823ea52be90061b69b3f8f6056ca1203ac3d81",
- "message": "Bump kosli/setup-cli-action to v5, use latest version",
+ "sha1": "01dd4c6406d6655898ef2236875ec9f67091c792",
+ "message": "Update comment and help text",
"author": "JonJagger ",
"branch": "main",
- "timestamp": 1779364424.0,
- "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/0f823ea52be90061b69b3f8f6056ca1203ac3d81"
+ "timestamp": 1781413514.0,
+ "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792"
},
- "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02?artifact_id=8ef65f13-3f37-4cfd-8b36-dcf53855",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8?artifact_id=3c4dd232-3468-4345-a062-0bc37fd1",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion",
"deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/5fd1b6bba27771e4c93b8c29b3ff69465dff1c26...0f823ea52be90061b69b3f8f6056ca1203ac3d81",
- "previous_git_commit": "5fd1b6bba27771e4c93b8c29b3ff69465dff1c26",
- "previous_fingerprint": "83a90c5556aa83e18b36983267ed9d160f665cb35d9fb0572b0f7c410de5e2bd",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:16d155b@sha256:83a90c5556aa83e18b36983267ed9d160f665cb35d9fb0572b0f7c410de5e2bd",
+ "diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/8d5d7b8b19d97204eb0701a813fe53c68c21ccd0...01dd4c6406d6655898ef2236875ec9f67091c792",
+ "previous_git_commit": "8d5d7b8b19d97204eb0701a813fe53c68c21ccd0",
+ "previous_fingerprint": "da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:cdaac80@sha256:da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/5fd1b6bba27771e4c93b8c29b3ff69465dff1c26",
- "previous_trail_name": "promote-all-18",
- "previous_template_reference_name": "languages-start-points"
+ "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/8d5d7b8b19d97204eb0701a813fe53c68c21ccd0",
+ "previous_trail_name": "promotion-one-64",
+ "previous_template_reference_name": "nginx"
},
- "commit_lead_time": 968607.0,
+ "commit_lead_time": 11638.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
"flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "languages-start-points-31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
- "template_reference_name": "languages-start-points",
- "git_commit": "c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4",
- "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4",
+ "trail_name": "nginx-b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
+ "template_reference_name": "nginx",
+ "git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26",
+ "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26",
"git_commit_info": {
- "sha1": "c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4",
- "message": "Delete dead step to force a trail to have empty template",
+ "sha1": "00c479764cb9eca038fdaaaef108672d0bb0ed26",
+ "message": "Shorten the per-vuln attestation name to a 10-char fingerprint\n\n The per-vuln attestation was named snyk-. A full\n SHA-256 fingerprint is 64 hex chars, which renders badly on the\n snyk--per-vuln flow page. The fingerprint is only there to keep two\n builds of the same artifact in one deploy snapshot from clobbering each\n other on the shared per-vuln trail, and the first 10 hex chars (40 bits)\n are far more than enough to keep distinct builds apart.\n\n GitHub Actions expressions have no substring function, so the name can\n no longer be built inline in the job-level env. Compute it in a shell\n step that truncates the fingerprint and exports VULN_ATTESTATION_NAME to\n $GITHUB_ENV, ahead of every step that reads it.\n\n Note: per-vuln trails that already carry a snyk-\n attestation will, on their next run, also gain a snyk-<10-char> one,\n since Kosli keys attestations by name. Only trails created after this\n change will have the short name alone.",
"author": "JonJagger ",
"branch": "main",
- "timestamp": 1780329192.0,
- "url": "https://github.com/cyber-dojo/snyk-scanning/commit/c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4"
+ "timestamp": 1781594940.0,
+ "url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26"
},
- "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02?artifact_id=f597c1ad-e9f8-4c30-8af7-411b5a0d",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8?artifact_id=12da50dd-c783-4045-af67-71a8b222",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact",
"deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/822a5831653b0901ce5256c6e16d7eedb63ebc06...c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4",
- "previous_git_commit": "822a5831653b0901ce5256c6e16d7eedb63ebc06",
- "previous_fingerprint": "83a90c5556aa83e18b36983267ed9d160f665cb35d9fb0572b0f7c410de5e2bd",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:16d155b@sha256:83a90c5556aa83e18b36983267ed9d160f665cb35d9fb0572b0f7c410de5e2bd",
+ "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4...00c479764cb9eca038fdaaaef108672d0bb0ed26",
+ "previous_git_commit": "c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4",
+ "previous_fingerprint": "df695792109b605031fbe0c33d89afa13b3fb26b513e7576f5201e991fd95a62",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:ebf104f@sha256:df695792109b605031fbe0c33d89afa13b3fb26b513e7576f5201e991fd95a62",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/822a5831653b0901ce5256c6e16d7eedb63ebc06",
- "previous_trail_name": "languages-start-points-83a90c5556aa83e18b36983267ed9d160f665cb35d9fb0572b0f7c410de5e2bd",
- "previous_template_reference_name": "languages-start-points"
+ "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4",
+ "previous_trail_name": "nginx-df695792109b605031fbe0c33d89afa13b3fb26b513e7576f5201e991fd95a62",
+ "previous_template_reference_name": "nginx"
},
- "commit_lead_time": 3839.0,
+ "commit_lead_time": -169788.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "languages-start-points-31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
- "template_reference_name": "languages-start-points",
- "git_commit": "ae002419e71c05cc5c1a285b52afdcef23d927c7",
- "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/ae002419e71c05cc5c1a285b52afdcef23d927c7",
+ "trail_name": "nginx-b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
+ "template_reference_name": "nginx",
+ "git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26",
+ "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26",
"git_commit_info": {
- "sha1": "ae002419e71c05cc5c1a285b52afdcef23d927c7",
- "message": "Upgrade workflows to use kosli-cli-setup v5",
+ "sha1": "00c479764cb9eca038fdaaaef108672d0bb0ed26",
+ "message": "Shorten the per-vuln attestation name to a 10-char fingerprint\n\n The per-vuln attestation was named snyk-. A full\n SHA-256 fingerprint is 64 hex chars, which renders badly on the\n snyk--per-vuln flow page. The fingerprint is only there to keep two\n builds of the same artifact in one deploy snapshot from clobbering each\n other on the shared per-vuln trail, and the first 10 hex chars (40 bits)\n are far more than enough to keep distinct builds apart.\n\n GitHub Actions expressions have no substring function, so the name can\n no longer be built inline in the job-level env. Compute it in a shell\n step that truncates the fingerprint and exports VULN_ATTESTATION_NAME to\n $GITHUB_ENV, ahead of every step that reads it.\n\n Note: per-vuln trails that already carry a snyk-\n attestation will, on their next run, also gain a snyk-<10-char> one,\n since Kosli keys attestations by name. Only trails created after this\n change will have the short name alone.",
"author": "JonJagger ",
"branch": "main",
- "timestamp": 1780908047.0,
- "url": "https://github.com/cyber-dojo/snyk-scanning/commit/ae002419e71c05cc5c1a285b52afdcef23d927c7"
+ "timestamp": 1781594940.0,
+ "url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26"
},
- "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02?artifact_id=c7e63ee7-893c-415e-8129-c8d62efd",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8?artifact_id=655894cf-1a00-46fb-a6e9-5b538d4f",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact",
- "deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/60fd5bffe45bc9618e81fabf8dd6793f92d10817...ae002419e71c05cc5c1a285b52afdcef23d927c7",
- "previous_git_commit": "60fd5bffe45bc9618e81fabf8dd6793f92d10817",
- "previous_fingerprint": "61efd6bdd33f8aefaca42f60b29303634cd82c912eecbce570abe2eca9bd20c7",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:20ff3f9@sha256:61efd6bdd33f8aefaca42f60b29303634cd82c912eecbce570abe2eca9bd20c7",
- "previous_artifact_compliance_state": "COMPLIANT",
- "previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/60fd5bffe45bc9618e81fabf8dd6793f92d10817",
- "previous_trail_name": "languages-start-points-61efd6bdd33f8aefaca42f60b29303634cd82c912eecbce570abe2eca9bd20c7",
- "previous_template_reference_name": "languages-start-points"
- },
- "commit_lead_time": -575016.0,
+ "deployment_diff": null,
+ "commit_lead_time": -169788.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
}
],
"ecs_context": {
- "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/d7d2ece04ce2423aaa9dd7e9c25c1d30",
+ "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/f28f3838890949eb9661023a6ac67c44",
"cluster_name": null,
"service_name": null
}
},
{
- "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:68d791f@sha256:5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
+ "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:87f560f@sha256:45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c",
"compliant": true,
"deployments": [],
"policy_decisions": [
@@ -5695,24 +5570,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "saver-ci",
- "trail_name": "68d791f93dc161fd8dba63e49b7fe9f909cbe758",
+ "flow_name": "dashboard-ci",
+ "trail_name": "87f560f87fb2bc242ee5c58d74d0e209d71cd338",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "dashboard-45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "saver-5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -5720,7 +5595,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "saver-5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
+ "trail_name": "dashboard-45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c",
"artifact_status": null
}
}
@@ -5740,24 +5615,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "saver-ci",
- "trail_name": "68d791f93dc161fd8dba63e49b7fe9f909cbe758",
+ "flow_name": "dashboard-ci",
+ "trail_name": "87f560f87fb2bc242ee5c58d74d0e209d71cd338",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "dashboard-45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "saver-5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -5765,7 +5640,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "saver-5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
+ "trail_name": "dashboard-45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c",
"artifact_status": "COMPLIANT"
}
}
@@ -5790,24 +5665,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_satisfied",
"context": {
- "flow_name": "saver-ci",
- "trail_name": "68d791f93dc161fd8dba63e49b7fe9f909cbe758",
+ "flow_name": "dashboard-ci",
+ "trail_name": "87f560f87fb2bc242ee5c58d74d0e209d71cd338",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "dashboard-45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "saver-5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -5815,7 +5690,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "saver-5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
+ "trail_name": "dashboard-45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c",
"artifact_status": null
}
}
@@ -5842,24 +5717,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_satisfied",
"context": {
- "flow_name": "saver-ci",
- "trail_name": "68d791f93dc161fd8dba63e49b7fe9f909cbe758",
+ "flow_name": "dashboard-ci",
+ "trail_name": "87f560f87fb2bc242ee5c58d74d0e209d71cd338",
"artifact_status": null
}
},
{
"type": "rule_satisfied",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "dashboard-45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c",
"artifact_status": null
}
},
{
"type": "rule_satisfied",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "saver-5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -5867,7 +5742,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "saver-5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
+ "trail_name": "dashboard-45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c",
"artifact_status": null
}
}
@@ -5887,24 +5762,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "saver-ci",
- "trail_name": "68d791f93dc161fd8dba63e49b7fe9f909cbe758",
+ "flow_name": "dashboard-ci",
+ "trail_name": "87f560f87fb2bc242ee5c58d74d0e209d71cd338",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "dashboard-45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "saver-5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -5912,7 +5787,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "saver-5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
+ "trail_name": "dashboard-45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c",
"artifact_status": "COMPLIANT"
}
}
@@ -5939,24 +5814,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "saver-ci",
- "trail_name": "68d791f93dc161fd8dba63e49b7fe9f909cbe758",
+ "flow_name": "dashboard-ci",
+ "trail_name": "87f560f87fb2bc242ee5c58d74d0e209d71cd338",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "dashboard-45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "saver-5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -5964,7 +5839,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "saver-5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
+ "trail_name": "dashboard-45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c",
"artifact_status": null
}
}
@@ -5984,24 +5859,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "saver-ci",
- "trail_name": "68d791f93dc161fd8dba63e49b7fe9f909cbe758",
+ "flow_name": "dashboard-ci",
+ "trail_name": "87f560f87fb2bc242ee5c58d74d0e209d71cd338",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "dashboard-45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "saver-5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -6009,7 +5884,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "saver-5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
+ "trail_name": "dashboard-45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c",
"artifact_status": "COMPLIANT"
}
}
@@ -6034,24 +5909,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "saver-ci",
- "trail_name": "68d791f93dc161fd8dba63e49b7fe9f909cbe758",
+ "flow_name": "dashboard-ci",
+ "trail_name": "87f560f87fb2bc242ee5c58d74d0e209d71cd338",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "dashboard-45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "saver-5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -6059,7 +5934,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "saver-5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
+ "trail_name": "dashboard-45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c",
"artifact_status": null
}
}
@@ -6086,24 +5961,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "saver-ci",
- "trail_name": "68d791f93dc161fd8dba63e49b7fe9f909cbe758",
+ "flow_name": "dashboard-ci",
+ "trail_name": "87f560f87fb2bc242ee5c58d74d0e209d71cd338",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "dashboard-45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "saver-5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -6111,7 +5986,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "saver-5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
+ "trail_name": "dashboard-45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c",
"artifact_status": null
}
}
@@ -6131,24 +6006,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "saver-ci",
- "trail_name": "68d791f93dc161fd8dba63e49b7fe9f909cbe758",
+ "flow_name": "dashboard-ci",
+ "trail_name": "87f560f87fb2bc242ee5c58d74d0e209d71cd338",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "dashboard-45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "saver-5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -6156,7 +6031,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "saver-5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
+ "trail_name": "dashboard-45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c",
"artifact_status": "COMPLIANT"
}
}
@@ -6181,24 +6056,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "saver-ci",
- "trail_name": "68d791f93dc161fd8dba63e49b7fe9f909cbe758",
+ "flow_name": "dashboard-ci",
+ "trail_name": "87f560f87fb2bc242ee5c58d74d0e209d71cd338",
"artifact_status": null
}
},
{
- "type": "rule_satisfied",
+ "type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "dashboard-45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c",
"artifact_status": null
}
},
{
- "type": "rule_not_applicable",
+ "type": "rule_satisfied",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "saver-5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -6206,7 +6081,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "saver-5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
+ "trail_name": "dashboard-45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c",
"artifact_status": null
}
}
@@ -6233,24 +6108,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "saver-ci",
- "trail_name": "68d791f93dc161fd8dba63e49b7fe9f909cbe758",
+ "flow_name": "dashboard-ci",
+ "trail_name": "87f560f87fb2bc242ee5c58d74d0e209d71cd338",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "dashboard-45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "saver-5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -6258,7 +6133,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "saver-5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
+ "trail_name": "dashboard-45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c",
"artifact_status": null
}
}
@@ -6284,24 +6159,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "saver-ci",
- "trail_name": "68d791f93dc161fd8dba63e49b7fe9f909cbe758",
+ "flow_name": "dashboard-ci",
+ "trail_name": "87f560f87fb2bc242ee5c58d74d0e209d71cd338",
"artifact_status": "COMPLIANT"
}
},
{
- "type": "rule_satisfied",
+ "type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "dashboard-45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c",
"artifact_status": "COMPLIANT"
}
},
{
- "type": "rule_not_applicable",
+ "type": "rule_satisfied",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "saver-5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -6309,7 +6184,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "saver-5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
+ "trail_name": "dashboard-45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c",
"artifact_status": "COMPLIANT"
}
}
@@ -6320,157 +6195,157 @@ kosli get snapshot aws-prod --output=json
}
],
"reasons_for_incompliance": [],
- "fingerprint": "5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
+ "fingerprint": "45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c",
"creationTimestamp": [
- 1780332962
+ 1781590471
],
"pods": null,
"annotation": {
- "type": "changed",
+ "type": "unchanged",
"was": 1,
"now": 1
},
- "flow_name": "saver-ci",
- "git_commit": "68d791f93dc161fd8dba63e49b7fe9f909cbe758",
- "commit_url": "https://github.com/cyber-dojo/saver/commit/68d791f93dc161fd8dba63e49b7fe9f909cbe758",
- "html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci/artifacts/5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9?artifact_id=174dfb75-db2f-40b0-901a-8a02499c",
- "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci",
+ "flow_name": "dashboard-ci",
+ "git_commit": "87f560f87fb2bc242ee5c58d74d0e209d71cd338",
+ "commit_url": "https://github.com/cyber-dojo/dashboard/commit/87f560f87fb2bc242ee5c58d74d0e209d71cd338",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci/artifacts/45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c?artifact_id=bd23bb89-f867-46b2-9139-1f7fc8b3",
+ "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci",
"deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/saver/compare/a11b7588b2d2333e1346f1a2bb100395f11f42d2...68d791f93dc161fd8dba63e49b7fe9f909cbe758",
- "previous_git_commit": "a11b7588b2d2333e1346f1a2bb100395f11f42d2",
- "previous_fingerprint": "a6cf2805f1dd2105257cc0febeb475f707b7de3ee664d172957f71943b64c4bc",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:a11b758@sha256:a6cf2805f1dd2105257cc0febeb475f707b7de3ee664d172957f71943b64c4bc",
+ "diff_url": "https://github.com/cyber-dojo/dashboard/compare/f3c679170776733c60dc485e076b7cb515caa7a4...87f560f87fb2bc242ee5c58d74d0e209d71cd338",
+ "previous_git_commit": "f3c679170776733c60dc485e076b7cb515caa7a4",
+ "previous_fingerprint": "9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:f3c6791@sha256:9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/saver/commit/a11b7588b2d2333e1346f1a2bb100395f11f42d2",
- "previous_trail_name": "a11b7588b2d2333e1346f1a2bb100395f11f42d2",
- "previous_template_reference_name": "saver"
+ "previous_git_commit_url": "https://github.com/cyber-dojo/dashboard/commit/f3c679170776733c60dc485e076b7cb515caa7a4",
+ "previous_trail_name": "f3c679170776733c60dc485e076b7cb515caa7a4",
+ "previous_template_reference_name": "dashboard"
},
- "commit_lead_time": 375439.0,
+ "commit_lead_time": 8302.0,
"flows": [
{
- "flow_name": "saver-ci",
- "trail_name": "68d791f93dc161fd8dba63e49b7fe9f909cbe758",
- "template_reference_name": "saver",
- "git_commit": "68d791f93dc161fd8dba63e49b7fe9f909cbe758",
- "commit_url": "https://github.com/cyber-dojo/saver/commit/68d791f93dc161fd8dba63e49b7fe9f909cbe758",
+ "flow_name": "dashboard-ci",
+ "trail_name": "87f560f87fb2bc242ee5c58d74d0e209d71cd338",
+ "template_reference_name": "dashboard",
+ "git_commit": "87f560f87fb2bc242ee5c58d74d0e209d71cd338",
+ "commit_url": "https://github.com/cyber-dojo/dashboard/commit/87f560f87fb2bc242ee5c58d74d0e209d71cd338",
"git_commit_info": {
- "sha1": "68d791f93dc161fd8dba63e49b7fe9f909cbe758",
- "message": "Tidy workflow using composite actions (#382)",
+ "sha1": "87f560f87fb2bc242ee5c58d74d0e209d71cd338",
+ "message": "Run ci workflow to pickup new --annotation in secure-docker-build.yml (#390)",
"author": "Jon Jagger ",
- "branch": "main",
- "timestamp": 1779957523.0,
- "url": "https://github.com/cyber-dojo/saver/commit/68d791f93dc161fd8dba63e49b7fe9f909cbe758"
+ "branch": "",
+ "timestamp": 1781417198.0,
+ "url": "https://github.com/cyber-dojo/dashboard/commit/87f560f87fb2bc242ee5c58d74d0e209d71cd338"
},
- "html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci/artifacts/5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9?artifact_id=174dfb75-db2f-40b0-901a-8a02499c",
- "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci/artifacts/45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c?artifact_id=bd23bb89-f867-46b2-9139-1f7fc8b3",
+ "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci",
"deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/saver/compare/a11b7588b2d2333e1346f1a2bb100395f11f42d2...68d791f93dc161fd8dba63e49b7fe9f909cbe758",
- "previous_git_commit": "a11b7588b2d2333e1346f1a2bb100395f11f42d2",
- "previous_fingerprint": "a6cf2805f1dd2105257cc0febeb475f707b7de3ee664d172957f71943b64c4bc",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:a11b758@sha256:a6cf2805f1dd2105257cc0febeb475f707b7de3ee664d172957f71943b64c4bc",
+ "diff_url": "https://github.com/cyber-dojo/dashboard/compare/f3c679170776733c60dc485e076b7cb515caa7a4...87f560f87fb2bc242ee5c58d74d0e209d71cd338",
+ "previous_git_commit": "f3c679170776733c60dc485e076b7cb515caa7a4",
+ "previous_fingerprint": "9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:f3c6791@sha256:9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/saver/commit/a11b7588b2d2333e1346f1a2bb100395f11f42d2",
- "previous_trail_name": "a11b7588b2d2333e1346f1a2bb100395f11f42d2",
- "previous_template_reference_name": "saver"
+ "previous_git_commit_url": "https://github.com/cyber-dojo/dashboard/commit/f3c679170776733c60dc485e076b7cb515caa7a4",
+ "previous_trail_name": "f3c679170776733c60dc485e076b7cb515caa7a4",
+ "previous_template_reference_name": "dashboard"
},
- "commit_lead_time": 375439.0,
+ "commit_lead_time": 8302.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
- "template_reference_name": "saver",
- "git_commit": "0f823ea52be90061b69b3f8f6056ca1203ac3d81",
- "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/0f823ea52be90061b69b3f8f6056ca1203ac3d81",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "dashboard-45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c",
+ "template_reference_name": "dashboard",
+ "git_commit": "7172cc22125f480a9f12127edb481a4d84aabea3",
+ "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/7172cc22125f480a9f12127edb481a4d84aabea3",
"git_commit_info": {
- "sha1": "0f823ea52be90061b69b3f8f6056ca1203ac3d81",
- "message": "Bump kosli/setup-cli-action to v5, use latest version",
+ "sha1": "7172cc22125f480a9f12127edb481a4d84aabea3",
+ "message": "Add notes on proposed refactoring to detecting a build flow [ci skip]",
"author": "JonJagger ",
"branch": "main",
- "timestamp": 1779364424.0,
- "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/0f823ea52be90061b69b3f8f6056ca1203ac3d81"
+ "timestamp": 1781416288.0,
+ "url": "https://github.com/cyber-dojo/snyk-scanning/commit/7172cc22125f480a9f12127edb481a4d84aabea3"
},
- "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9?artifact_id=5e6ca9ae-d19c-4ed0-8fee-40daa67b",
- "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c?artifact_id=79a051e4-4e90-4286-a0db-b9ea21b7",
+ "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact",
"deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/0f823ea52be90061b69b3f8f6056ca1203ac3d81...0f823ea52be90061b69b3f8f6056ca1203ac3d81",
- "previous_git_commit": "0f823ea52be90061b69b3f8f6056ca1203ac3d81",
- "previous_fingerprint": "a6cf2805f1dd2105257cc0febeb475f707b7de3ee664d172957f71943b64c4bc",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:a11b758@sha256:a6cf2805f1dd2105257cc0febeb475f707b7de3ee664d172957f71943b64c4bc",
+ "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4...7172cc22125f480a9f12127edb481a4d84aabea3",
+ "previous_git_commit": "c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4",
+ "previous_fingerprint": "9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:f3c6791@sha256:9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/0f823ea52be90061b69b3f8f6056ca1203ac3d81",
- "previous_trail_name": "promotion-one-58",
- "previous_template_reference_name": "saver"
+ "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4",
+ "previous_trail_name": "dashboard-9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
+ "previous_template_reference_name": "dashboard"
},
- "commit_lead_time": 968538.0,
+ "commit_lead_time": 9212.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "saver-5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
- "template_reference_name": "saver",
- "git_commit": "c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4",
- "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
+ "template_reference_name": "dashboard",
+ "git_commit": "01dd4c6406d6655898ef2236875ec9f67091c792",
+ "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792",
"git_commit_info": {
- "sha1": "c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4",
- "message": "Delete dead step to force a trail to have empty template",
+ "sha1": "01dd4c6406d6655898ef2236875ec9f67091c792",
+ "message": "Update comment and help text",
"author": "JonJagger ",
"branch": "main",
- "timestamp": 1780329192.0,
- "url": "https://github.com/cyber-dojo/snyk-scanning/commit/c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4"
+ "timestamp": 1781413514.0,
+ "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792"
},
- "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9?artifact_id=c56512ee-6696-474c-8581-6fae3179",
- "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c?artifact_id=009a5042-4d7f-45e4-86e6-fc4fa29c",
+ "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion",
"deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/4cca3cf991dc8340b82c03e0a80b7b7a1b136bda...c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4",
- "previous_git_commit": "4cca3cf991dc8340b82c03e0a80b7b7a1b136bda",
- "previous_fingerprint": "e753a48a8a8f2a3a0b3c8429e786fa543d4c3298ed28a369cf7381435f113a1a",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:42c8baf@sha256:e753a48a8a8f2a3a0b3c8429e786fa543d4c3298ed28a369cf7381435f113a1a",
+ "diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/0f823ea52be90061b69b3f8f6056ca1203ac3d81...01dd4c6406d6655898ef2236875ec9f67091c792",
+ "previous_git_commit": "0f823ea52be90061b69b3f8f6056ca1203ac3d81",
+ "previous_fingerprint": "9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:f3c6791@sha256:9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/4cca3cf991dc8340b82c03e0a80b7b7a1b136bda",
- "previous_trail_name": "saver-e753a48a8a8f2a3a0b3c8429e786fa543d4c3298ed28a369cf7381435f113a1a",
- "previous_template_reference_name": "saver"
+ "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/0f823ea52be90061b69b3f8f6056ca1203ac3d81",
+ "previous_trail_name": "promote-all-21",
+ "previous_template_reference_name": "dashboard"
},
- "commit_lead_time": 3770.0,
+ "commit_lead_time": 11986.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "saver-5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
- "template_reference_name": "saver",
- "git_commit": "ae002419e71c05cc5c1a285b52afdcef23d927c7",
- "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/ae002419e71c05cc5c1a285b52afdcef23d927c7",
+ "trail_name": "dashboard-45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c",
+ "template_reference_name": "dashboard",
+ "git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26",
+ "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26",
"git_commit_info": {
- "sha1": "ae002419e71c05cc5c1a285b52afdcef23d927c7",
- "message": "Upgrade workflows to use kosli-cli-setup v5",
+ "sha1": "00c479764cb9eca038fdaaaef108672d0bb0ed26",
+ "message": "Shorten the per-vuln attestation name to a 10-char fingerprint\n\n The per-vuln attestation was named snyk-. A full\n SHA-256 fingerprint is 64 hex chars, which renders badly on the\n snyk--per-vuln flow page. The fingerprint is only there to keep two\n builds of the same artifact in one deploy snapshot from clobbering each\n other on the shared per-vuln trail, and the first 10 hex chars (40 bits)\n are far more than enough to keep distinct builds apart.\n\n GitHub Actions expressions have no substring function, so the name can\n no longer be built inline in the job-level env. Compute it in a shell\n step that truncates the fingerprint and exports VULN_ATTESTATION_NAME to\n $GITHUB_ENV, ahead of every step that reads it.\n\n Note: per-vuln trails that already carry a snyk-\n attestation will, on their next run, also gain a snyk-<10-char> one,\n since Kosli keys attestations by name. Only trails created after this\n change will have the short name alone.",
"author": "JonJagger ",
"branch": "main",
- "timestamp": 1780908047.0,
- "url": "https://github.com/cyber-dojo/snyk-scanning/commit/ae002419e71c05cc5c1a285b52afdcef23d927c7"
+ "timestamp": 1781594940.0,
+ "url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26"
},
- "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9?artifact_id=7eb15577-130a-4b76-bd36-99e827ba",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c?artifact_id=6a20b693-7b8d-449d-9275-2956bd48",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact",
"deployment_diff": null,
- "commit_lead_time": -575085.0,
+ "commit_lead_time": -169440.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
}
],
"ecs_context": {
- "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/11fcee940f3043768b79125a4a47d51b",
+ "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/eebdec81e47f486cbe1c50abf06472ce",
"cluster_name": null,
"service_name": null
}
},
{
- "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:43d2a72@sha256:d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
+ "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:b8e5cbf@sha256:f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8",
"compliant": true,
"deployments": [],
"policy_decisions": [
@@ -6492,24 +6367,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "differ-ci",
- "trail_name": "43d2a72431124e9fcf47bf866621ba3fd8e7f618",
+ "flow_name": "exercises-start-points-ci",
+ "trail_name": "b8e5cbf56e7fc03becdeee6a1d493c0231fa2d0d",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "exercises-start-points-f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "differ-d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -6517,7 +6392,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "differ-d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
+ "trail_name": "exercises-start-points-f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8",
"artifact_status": null
}
}
@@ -6537,24 +6412,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "differ-ci",
- "trail_name": "43d2a72431124e9fcf47bf866621ba3fd8e7f618",
+ "flow_name": "exercises-start-points-ci",
+ "trail_name": "b8e5cbf56e7fc03becdeee6a1d493c0231fa2d0d",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "exercises-start-points-f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "differ-d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -6562,7 +6437,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "differ-d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
+ "trail_name": "exercises-start-points-f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8",
"artifact_status": "COMPLIANT"
}
}
@@ -6587,24 +6462,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_satisfied",
"context": {
- "flow_name": "differ-ci",
- "trail_name": "43d2a72431124e9fcf47bf866621ba3fd8e7f618",
+ "flow_name": "exercises-start-points-ci",
+ "trail_name": "b8e5cbf56e7fc03becdeee6a1d493c0231fa2d0d",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "exercises-start-points-f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "differ-d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -6612,7 +6487,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "differ-d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
+ "trail_name": "exercises-start-points-f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8",
"artifact_status": null
}
}
@@ -6639,24 +6514,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_satisfied",
"context": {
- "flow_name": "differ-ci",
- "trail_name": "43d2a72431124e9fcf47bf866621ba3fd8e7f618",
+ "flow_name": "exercises-start-points-ci",
+ "trail_name": "b8e5cbf56e7fc03becdeee6a1d493c0231fa2d0d",
"artifact_status": null
}
},
{
"type": "rule_satisfied",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "exercises-start-points-f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8",
"artifact_status": null
}
},
{
"type": "rule_satisfied",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "differ-d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -6664,7 +6539,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "differ-d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
+ "trail_name": "exercises-start-points-f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8",
"artifact_status": null
}
}
@@ -6684,24 +6559,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "differ-ci",
- "trail_name": "43d2a72431124e9fcf47bf866621ba3fd8e7f618",
+ "flow_name": "exercises-start-points-ci",
+ "trail_name": "b8e5cbf56e7fc03becdeee6a1d493c0231fa2d0d",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "exercises-start-points-f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "differ-d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -6709,7 +6584,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "differ-d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
+ "trail_name": "exercises-start-points-f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8",
"artifact_status": "COMPLIANT"
}
}
@@ -6736,24 +6611,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "differ-ci",
- "trail_name": "43d2a72431124e9fcf47bf866621ba3fd8e7f618",
+ "flow_name": "exercises-start-points-ci",
+ "trail_name": "b8e5cbf56e7fc03becdeee6a1d493c0231fa2d0d",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "exercises-start-points-f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "differ-d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -6761,7 +6636,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "differ-d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
+ "trail_name": "exercises-start-points-f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8",
"artifact_status": null
}
}
@@ -6781,24 +6656,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "differ-ci",
- "trail_name": "43d2a72431124e9fcf47bf866621ba3fd8e7f618",
+ "flow_name": "exercises-start-points-ci",
+ "trail_name": "b8e5cbf56e7fc03becdeee6a1d493c0231fa2d0d",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "exercises-start-points-f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "differ-d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -6806,7 +6681,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "differ-d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
+ "trail_name": "exercises-start-points-f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8",
"artifact_status": "COMPLIANT"
}
}
@@ -6831,24 +6706,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "differ-ci",
- "trail_name": "43d2a72431124e9fcf47bf866621ba3fd8e7f618",
+ "flow_name": "exercises-start-points-ci",
+ "trail_name": "b8e5cbf56e7fc03becdeee6a1d493c0231fa2d0d",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "exercises-start-points-f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "differ-d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -6856,7 +6731,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "differ-d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
+ "trail_name": "exercises-start-points-f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8",
"artifact_status": null
}
}
@@ -6883,24 +6758,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "differ-ci",
- "trail_name": "43d2a72431124e9fcf47bf866621ba3fd8e7f618",
+ "flow_name": "exercises-start-points-ci",
+ "trail_name": "b8e5cbf56e7fc03becdeee6a1d493c0231fa2d0d",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "exercises-start-points-f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "differ-d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -6908,7 +6783,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "differ-d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
+ "trail_name": "exercises-start-points-f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8",
"artifact_status": null
}
}
@@ -6928,24 +6803,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "differ-ci",
- "trail_name": "43d2a72431124e9fcf47bf866621ba3fd8e7f618",
+ "flow_name": "exercises-start-points-ci",
+ "trail_name": "b8e5cbf56e7fc03becdeee6a1d493c0231fa2d0d",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "exercises-start-points-f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8",
"artifact_status": "COMPLIANT"
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "differ-d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -6953,7 +6828,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "differ-d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
+ "trail_name": "exercises-start-points-f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8",
"artifact_status": "COMPLIANT"
}
}
@@ -6978,24 +6853,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "differ-ci",
- "trail_name": "43d2a72431124e9fcf47bf866621ba3fd8e7f618",
+ "flow_name": "exercises-start-points-ci",
+ "trail_name": "b8e5cbf56e7fc03becdeee6a1d493c0231fa2d0d",
"artifact_status": null
}
},
{
- "type": "rule_satisfied",
+ "type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "exercises-start-points-f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8",
"artifact_status": null
}
},
{
- "type": "rule_not_applicable",
+ "type": "rule_satisfied",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "differ-d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -7003,7 +6878,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "differ-d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
+ "trail_name": "exercises-start-points-f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8",
"artifact_status": null
}
}
@@ -7030,24 +6905,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "differ-ci",
- "trail_name": "43d2a72431124e9fcf47bf866621ba3fd8e7f618",
+ "flow_name": "exercises-start-points-ci",
+ "trail_name": "b8e5cbf56e7fc03becdeee6a1d493c0231fa2d0d",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "exercises-start-points-f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8",
"artifact_status": null
}
},
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "differ-d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -7055,7 +6930,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "differ-d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
+ "trail_name": "exercises-start-points-f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8",
"artifact_status": null
}
}
@@ -7081,24 +6956,24 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "differ-ci",
- "trail_name": "43d2a72431124e9fcf47bf866621ba3fd8e7f618",
+ "flow_name": "exercises-start-points-ci",
+ "trail_name": "b8e5cbf56e7fc03becdeee6a1d493c0231fa2d0d",
"artifact_status": "COMPLIANT"
}
},
{
- "type": "rule_satisfied",
+ "type": "rule_not_applicable",
"context": {
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "exercises-start-points-f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8",
"artifact_status": "COMPLIANT"
}
},
{
- "type": "rule_not_applicable",
+ "type": "rule_satisfied",
"context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "differ-d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -7106,7 +6981,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "differ-d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
+ "trail_name": "exercises-start-points-f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8",
"artifact_status": "COMPLIANT"
}
}
@@ -7117,157 +6992,167 @@ kosli get snapshot aws-prod --output=json
}
],
"reasons_for_incompliance": [],
- "fingerprint": "d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
+ "fingerprint": "f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8",
"creationTimestamp": [
- 1780332956
+ 1781590465
],
"pods": null,
"annotation": {
- "type": "changed",
+ "type": "unchanged",
"was": 1,
"now": 1
},
- "flow_name": "differ-ci",
- "git_commit": "43d2a72431124e9fcf47bf866621ba3fd8e7f618",
- "commit_url": "https://github.com/cyber-dojo/differ/commit/43d2a72431124e9fcf47bf866621ba3fd8e7f618",
- "html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci/artifacts/d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9?artifact_id=66b5c45a-22d2-4f37-8688-beeeb449",
- "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci",
+ "flow_name": "exercises-start-points-ci",
+ "git_commit": "b8e5cbf56e7fc03becdeee6a1d493c0231fa2d0d",
+ "commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/b8e5cbf56e7fc03becdeee6a1d493c0231fa2d0d",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci/artifacts/f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8?artifact_id=4d62c06d-f9a2-4bfb-a8aa-a8d36ab8",
+ "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci",
"deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/differ/compare/f2e8fa718ca3b72527625bd182beb2950bea3a77...43d2a72431124e9fcf47bf866621ba3fd8e7f618",
- "previous_git_commit": "f2e8fa718ca3b72527625bd182beb2950bea3a77",
- "previous_fingerprint": "6c4c72c37b15c0261309b65400bb60d78b2071c9f8a82d2ec6d050399834762d",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:f2e8fa7@sha256:6c4c72c37b15c0261309b65400bb60d78b2071c9f8a82d2ec6d050399834762d",
+ "diff_url": "https://github.com/cyber-dojo/exercises-start-points/compare/76355112651c4ee66d6ee47f67e35459616f0dae...b8e5cbf56e7fc03becdeee6a1d493c0231fa2d0d",
+ "previous_git_commit": "76355112651c4ee66d6ee47f67e35459616f0dae",
+ "previous_fingerprint": "12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:7635511@sha256:12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/differ/commit/f2e8fa718ca3b72527625bd182beb2950bea3a77",
- "previous_trail_name": "f2e8fa718ca3b72527625bd182beb2950bea3a77",
- "previous_template_reference_name": "differ"
+ "previous_git_commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/76355112651c4ee66d6ee47f67e35459616f0dae",
+ "previous_trail_name": "76355112651c4ee66d6ee47f67e35459616f0dae",
+ "previous_template_reference_name": "exercises-start-points"
},
- "commit_lead_time": 371812.0,
+ "commit_lead_time": 7905.0,
"flows": [
{
- "flow_name": "differ-ci",
- "trail_name": "43d2a72431124e9fcf47bf866621ba3fd8e7f618",
- "template_reference_name": "differ",
- "git_commit": "43d2a72431124e9fcf47bf866621ba3fd8e7f618",
- "commit_url": "https://github.com/cyber-dojo/differ/commit/43d2a72431124e9fcf47bf866621ba3fd8e7f618",
+ "flow_name": "exercises-start-points-ci",
+ "trail_name": "b8e5cbf56e7fc03becdeee6a1d493c0231fa2d0d",
+ "template_reference_name": "exercises-start-points",
+ "git_commit": "b8e5cbf56e7fc03becdeee6a1d493c0231fa2d0d",
+ "commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/b8e5cbf56e7fc03becdeee6a1d493c0231fa2d0d",
"git_commit_info": {
- "sha1": "43d2a72431124e9fcf47bf866621ba3fd8e7f618",
- "message": "Tidy workflow by pushing common steps into composite actions (#390)",
+ "sha1": "b8e5cbf56e7fc03becdeee6a1d493c0231fa2d0d",
+ "message": "Merge pull request #128 from cyber-dojo/annotate-build-attestation\n\nAdd --annotate type=build to kosli-attest-artifact",
"author": "Jon Jagger ",
"branch": "main",
- "timestamp": 1779961144.0,
- "url": "https://github.com/cyber-dojo/differ/commit/43d2a72431124e9fcf47bf866621ba3fd8e7f618"
+ "timestamp": 1781417251.0,
+ "url": "https://github.com/cyber-dojo/exercises-start-points/commit/b8e5cbf56e7fc03becdeee6a1d493c0231fa2d0d"
},
- "html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci/artifacts/d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9?artifact_id=66b5c45a-22d2-4f37-8688-beeeb449",
- "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci/artifacts/f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8?artifact_id=4d62c06d-f9a2-4bfb-a8aa-a8d36ab8",
+ "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci",
"deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/differ/compare/f2e8fa718ca3b72527625bd182beb2950bea3a77...43d2a72431124e9fcf47bf866621ba3fd8e7f618",
- "previous_git_commit": "f2e8fa718ca3b72527625bd182beb2950bea3a77",
- "previous_fingerprint": "6c4c72c37b15c0261309b65400bb60d78b2071c9f8a82d2ec6d050399834762d",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:f2e8fa7@sha256:6c4c72c37b15c0261309b65400bb60d78b2071c9f8a82d2ec6d050399834762d",
+ "diff_url": "https://github.com/cyber-dojo/exercises-start-points/compare/76355112651c4ee66d6ee47f67e35459616f0dae...b8e5cbf56e7fc03becdeee6a1d493c0231fa2d0d",
+ "previous_git_commit": "76355112651c4ee66d6ee47f67e35459616f0dae",
+ "previous_fingerprint": "12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:7635511@sha256:12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/differ/commit/f2e8fa718ca3b72527625bd182beb2950bea3a77",
- "previous_trail_name": "f2e8fa718ca3b72527625bd182beb2950bea3a77",
- "previous_template_reference_name": "differ"
+ "previous_git_commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/76355112651c4ee66d6ee47f67e35459616f0dae",
+ "previous_trail_name": "76355112651c4ee66d6ee47f67e35459616f0dae",
+ "previous_template_reference_name": "exercises-start-points"
},
- "commit_lead_time": 371812.0,
+ "commit_lead_time": 7905.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
- "flow_name": "production-promotion",
- "trail_name": "promote-all-21",
- "template_reference_name": "differ",
- "git_commit": "0f823ea52be90061b69b3f8f6056ca1203ac3d81",
- "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/0f823ea52be90061b69b3f8f6056ca1203ac3d81",
+ "flow_name": "snyk-aws-beta-per-artifact",
+ "trail_name": "exercises-start-points-f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8",
+ "template_reference_name": "exercises-start-points",
+ "git_commit": "7172cc22125f480a9f12127edb481a4d84aabea3",
+ "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/7172cc22125f480a9f12127edb481a4d84aabea3",
"git_commit_info": {
- "sha1": "0f823ea52be90061b69b3f8f6056ca1203ac3d81",
- "message": "Bump kosli/setup-cli-action to v5, use latest version",
+ "sha1": "7172cc22125f480a9f12127edb481a4d84aabea3",
+ "message": "Add notes on proposed refactoring to detecting a build flow [ci skip]",
"author": "JonJagger ",
"branch": "main",
- "timestamp": 1779364424.0,
- "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/0f823ea52be90061b69b3f8f6056ca1203ac3d81"
+ "timestamp": 1781416288.0,
+ "url": "https://github.com/cyber-dojo/snyk-scanning/commit/7172cc22125f480a9f12127edb481a4d84aabea3"
},
- "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9?artifact_id=b07368f4-ee48-449e-9670-dd0317d6",
- "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8?artifact_id=880ae39c-9b28-48f1-8e1d-58d9722f",
+ "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact",
"deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/0f823ea52be90061b69b3f8f6056ca1203ac3d81...0f823ea52be90061b69b3f8f6056ca1203ac3d81",
- "previous_git_commit": "0f823ea52be90061b69b3f8f6056ca1203ac3d81",
- "previous_fingerprint": "6c4c72c37b15c0261309b65400bb60d78b2071c9f8a82d2ec6d050399834762d",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:f2e8fa7@sha256:6c4c72c37b15c0261309b65400bb60d78b2071c9f8a82d2ec6d050399834762d",
+ "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4...7172cc22125f480a9f12127edb481a4d84aabea3",
+ "previous_git_commit": "c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4",
+ "previous_fingerprint": "12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:7635511@sha256:12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/0f823ea52be90061b69b3f8f6056ca1203ac3d81",
- "previous_trail_name": "promote-all-20",
- "previous_template_reference_name": "differ"
+ "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4",
+ "previous_trail_name": "exercises-start-points-12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
+ "previous_template_reference_name": "exercises-start-points"
},
- "commit_lead_time": 968532.0,
+ "commit_lead_time": 8868.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "differ-d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
- "template_reference_name": "differ",
- "git_commit": "ee081fb7be2ac7e2094bb4d02f3effdb9f73dd74",
- "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/ee081fb7be2ac7e2094bb4d02f3effdb9f73dd74",
+ "flow_name": "production-promotion",
+ "trail_name": "promote-all-23",
+ "template_reference_name": "exercises-start-points",
+ "git_commit": "01dd4c6406d6655898ef2236875ec9f67091c792",
+ "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792",
"git_commit_info": {
- "sha1": "ee081fb7be2ac7e2094bb4d02f3effdb9f73dd74",
- "message": "Fix deploy-swap race that clobbered per-vuln Snyk verdicts\n\n The live environment Snyk scan keys each per-vuln compliance trail by\n repo-severity-vulnid only. During a rolling deploy the env snapshot\n transiently holds two builds of the same repo, so env_snyk_test fans out a\n matrix job per build and both write the same trail's `snyk` attestation.\n Last-writer-wins, so the outgoing (older) build's verdict, computed against\n its older .snyk, could clobber the incoming build's correct one. That\n surfaced as runner showing non-compliant in aws-prod for x/net/html vulns\n that were in fact ignored, and (via a required trail-compliance env policy\n that spans every trail on the fingerprint) dragged aws-beta down too.\n\n Give each build's verdict its own identity on the shared trail rather than\n trying to pick a winner from the snapshot, which is unreliable: instance\n timestamps track restarts, not build recency (a flaky outgoing task can\n restart after the incoming one starts), and commit recency inverts on\n rollback.\n\n - combine_snyk.py: emit artifact_name and artifact_fingerprint per vuln.\n - artifact_snyk_test.yml: attest/read the per-vuln verdict as\n snyk- (VULN_ATTESTATION_NAME) and merge the fingerprint into\n the evaluate-trail rego params.\n - snyk-vuln-compliance.rego: select the status for data.params.fingerprint;\n an absent fingerprint leaves allow at its false default (fail toward\n non-compliant).\n - single-snyk-vuln.schema.json: document and require the new fields (also\n closes a pre-existing now/now_ts omission), guarded by a new contract test.\n\n Vuln age is unaffected: first_seen_ts stays the shared trail's created_at,\n which is why the trail key must not include the fingerprint.\n\n Also in this change:\n - test_rego_rules.sh: per-fingerprint inputs plus a two-build isolation test.\n - Convert test_find_expiring_vulns_logic.py from unittest to pytest functions.\n - Remove Makefile targets left dangling when 79ea32a moved scripts out of bin.\n - docs/: write up the race and the cross-environment trail-compliance effect.\n\n Co-Authored-By: Claude Opus 4.8 (1M context) ",
+ "sha1": "01dd4c6406d6655898ef2236875ec9f67091c792",
+ "message": "Update comment and help text",
"author": "JonJagger ",
"branch": "main",
- "timestamp": 1780738845.0,
- "url": "https://github.com/cyber-dojo/snyk-scanning/commit/ee081fb7be2ac7e2094bb4d02f3effdb9f73dd74"
+ "timestamp": 1781413514.0,
+ "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792"
},
- "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9?artifact_id=42f20991-cd1e-40eb-acad-10f6c1f6",
- "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8?artifact_id=4ea0353c-31ad-4235-a5e9-362c5bd2",
+ "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion",
"deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/4cca3cf991dc8340b82c03e0a80b7b7a1b136bda...ee081fb7be2ac7e2094bb4d02f3effdb9f73dd74",
- "previous_git_commit": "4cca3cf991dc8340b82c03e0a80b7b7a1b136bda",
- "previous_fingerprint": "dc7e55a08ec45a9ab4a2323ce7b1aae3a9f4a0742bb44b06b7bc1370f5c11a6b",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:fd71a71@sha256:dc7e55a08ec45a9ab4a2323ce7b1aae3a9f4a0742bb44b06b7bc1370f5c11a6b",
+ "diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/0f823ea52be90061b69b3f8f6056ca1203ac3d81...01dd4c6406d6655898ef2236875ec9f67091c792",
+ "previous_git_commit": "0f823ea52be90061b69b3f8f6056ca1203ac3d81",
+ "previous_fingerprint": "12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:7635511@sha256:12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/4cca3cf991dc8340b82c03e0a80b7b7a1b136bda",
- "previous_trail_name": "differ-dc7e55a08ec45a9ab4a2323ce7b1aae3a9f4a0742bb44b06b7bc1370f5c11a6b",
- "previous_template_reference_name": "differ"
+ "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/0f823ea52be90061b69b3f8f6056ca1203ac3d81",
+ "previous_trail_name": "promote-all-21",
+ "previous_template_reference_name": "exercises-start-points"
},
- "commit_lead_time": -405889.0,
+ "commit_lead_time": 11642.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "differ-d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
- "template_reference_name": "differ",
- "git_commit": "ae002419e71c05cc5c1a285b52afdcef23d927c7",
- "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/ae002419e71c05cc5c1a285b52afdcef23d927c7",
+ "trail_name": "exercises-start-points-f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8",
+ "template_reference_name": "exercises-start-points",
+ "git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26",
+ "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26",
"git_commit_info": {
- "sha1": "ae002419e71c05cc5c1a285b52afdcef23d927c7",
- "message": "Upgrade workflows to use kosli-cli-setup v5",
+ "sha1": "00c479764cb9eca038fdaaaef108672d0bb0ed26",
+ "message": "Shorten the per-vuln attestation name to a 10-char fingerprint\n\n The per-vuln attestation was named snyk-. A full\n SHA-256 fingerprint is 64 hex chars, which renders badly on the\n snyk--per-vuln flow page. The fingerprint is only there to keep two\n builds of the same artifact in one deploy snapshot from clobbering each\n other on the shared per-vuln trail, and the first 10 hex chars (40 bits)\n are far more than enough to keep distinct builds apart.\n\n GitHub Actions expressions have no substring function, so the name can\n no longer be built inline in the job-level env. Compute it in a shell\n step that truncates the fingerprint and exports VULN_ATTESTATION_NAME to\n $GITHUB_ENV, ahead of every step that reads it.\n\n Note: per-vuln trails that already carry a snyk-\n attestation will, on their next run, also gain a snyk-<10-char> one,\n since Kosli keys attestations by name. Only trails created after this\n change will have the short name alone.",
"author": "JonJagger ",
"branch": "main",
- "timestamp": 1780908047.0,
- "url": "https://github.com/cyber-dojo/snyk-scanning/commit/ae002419e71c05cc5c1a285b52afdcef23d927c7"
+ "timestamp": 1781594940.0,
+ "url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26"
},
- "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9?artifact_id=39fa69ea-a921-40ab-9311-1d4611ae",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8?artifact_id=3164998a-5527-40ba-8712-4fe7988d",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact",
- "deployment_diff": null,
- "commit_lead_time": -575091.0,
+ "deployment_diff": {
+ "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/4cca3cf991dc8340b82c03e0a80b7b7a1b136bda...00c479764cb9eca038fdaaaef108672d0bb0ed26",
+ "previous_git_commit": "4cca3cf991dc8340b82c03e0a80b7b7a1b136bda",
+ "previous_fingerprint": "f08c1b6607812ab5357032dd6acbf94348247d37901a409c721696b6d11ba6e4",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:f3cf3ba@sha256:f08c1b6607812ab5357032dd6acbf94348247d37901a409c721696b6d11ba6e4",
+ "previous_artifact_compliance_state": "COMPLIANT",
+ "previous_running": false,
+ "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/4cca3cf991dc8340b82c03e0a80b7b7a1b136bda",
+ "previous_trail_name": "exercises-start-points-f08c1b6607812ab5357032dd6acbf94348247d37901a409c721696b6d11ba6e4",
+ "previous_template_reference_name": "exercises-start-points"
+ },
+ "commit_lead_time": -169784.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
}
],
"ecs_context": {
- "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/ad1c0143190c42c3b102659c4481e2b9",
+ "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/d3d45fdbeeb14a9bb070d4dd19887138",
"cluster_name": null,
"service_name": null
}
},
{
- "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:7635511@sha256:12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
+ "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:981dcfc@sha256:902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b",
"compliant": true,
"deployments": [],
"policy_decisions": [
@@ -7289,8 +7174,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "exercises-start-points-ci",
- "trail_name": "76355112651c4ee66d6ee47f67e35459616f0dae",
+ "flow_name": "differ-ci",
+ "trail_name": "981dcfc34f584d46afb46b217b47ce68f2f14a08",
"artifact_status": null
}
},
@@ -7298,15 +7183,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promote-all-21",
- "artifact_status": null
- }
- },
- {
- "type": "rule_not_applicable",
- "context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "exercises-start-points-12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -7314,7 +7191,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "exercises-start-points-12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
+ "trail_name": "differ-902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b",
"artifact_status": null
}
}
@@ -7334,8 +7211,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "exercises-start-points-ci",
- "trail_name": "76355112651c4ee66d6ee47f67e35459616f0dae",
+ "flow_name": "differ-ci",
+ "trail_name": "981dcfc34f584d46afb46b217b47ce68f2f14a08",
"artifact_status": "COMPLIANT"
}
},
@@ -7343,15 +7220,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promote-all-21",
- "artifact_status": "COMPLIANT"
- }
- },
- {
- "type": "rule_not_applicable",
- "context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "exercises-start-points-12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -7359,7 +7228,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "exercises-start-points-12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
+ "trail_name": "differ-902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b",
"artifact_status": "COMPLIANT"
}
}
@@ -7384,8 +7253,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_satisfied",
"context": {
- "flow_name": "exercises-start-points-ci",
- "trail_name": "76355112651c4ee66d6ee47f67e35459616f0dae",
+ "flow_name": "differ-ci",
+ "trail_name": "981dcfc34f584d46afb46b217b47ce68f2f14a08",
"artifact_status": null
}
},
@@ -7393,15 +7262,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promote-all-21",
- "artifact_status": null
- }
- },
- {
- "type": "rule_not_applicable",
- "context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "exercises-start-points-12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -7409,7 +7270,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "exercises-start-points-12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
+ "trail_name": "differ-902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b",
"artifact_status": null
}
}
@@ -7436,8 +7297,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_satisfied",
"context": {
- "flow_name": "exercises-start-points-ci",
- "trail_name": "76355112651c4ee66d6ee47f67e35459616f0dae",
+ "flow_name": "differ-ci",
+ "trail_name": "981dcfc34f584d46afb46b217b47ce68f2f14a08",
"artifact_status": null
}
},
@@ -7445,15 +7306,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promote-all-21",
- "artifact_status": null
- }
- },
- {
- "type": "rule_satisfied",
- "context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "exercises-start-points-12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -7461,7 +7314,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "exercises-start-points-12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
+ "trail_name": "differ-902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b",
"artifact_status": null
}
}
@@ -7481,8 +7334,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "exercises-start-points-ci",
- "trail_name": "76355112651c4ee66d6ee47f67e35459616f0dae",
+ "flow_name": "differ-ci",
+ "trail_name": "981dcfc34f584d46afb46b217b47ce68f2f14a08",
"artifact_status": "COMPLIANT"
}
},
@@ -7490,15 +7343,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promote-all-21",
- "artifact_status": "COMPLIANT"
- }
- },
- {
- "type": "rule_not_applicable",
- "context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "exercises-start-points-12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -7506,7 +7351,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "exercises-start-points-12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
+ "trail_name": "differ-902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b",
"artifact_status": "COMPLIANT"
}
}
@@ -7533,8 +7378,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "exercises-start-points-ci",
- "trail_name": "76355112651c4ee66d6ee47f67e35459616f0dae",
+ "flow_name": "differ-ci",
+ "trail_name": "981dcfc34f584d46afb46b217b47ce68f2f14a08",
"artifact_status": null
}
},
@@ -7542,15 +7387,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promote-all-21",
- "artifact_status": null
- }
- },
- {
- "type": "rule_not_applicable",
- "context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "exercises-start-points-12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -7558,7 +7395,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "exercises-start-points-12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
+ "trail_name": "differ-902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b",
"artifact_status": null
}
}
@@ -7578,8 +7415,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "exercises-start-points-ci",
- "trail_name": "76355112651c4ee66d6ee47f67e35459616f0dae",
+ "flow_name": "differ-ci",
+ "trail_name": "981dcfc34f584d46afb46b217b47ce68f2f14a08",
"artifact_status": "COMPLIANT"
}
},
@@ -7587,15 +7424,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promote-all-21",
- "artifact_status": "COMPLIANT"
- }
- },
- {
- "type": "rule_not_applicable",
- "context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "exercises-start-points-12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -7603,7 +7432,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "exercises-start-points-12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
+ "trail_name": "differ-902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b",
"artifact_status": "COMPLIANT"
}
}
@@ -7628,8 +7457,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "exercises-start-points-ci",
- "trail_name": "76355112651c4ee66d6ee47f67e35459616f0dae",
+ "flow_name": "differ-ci",
+ "trail_name": "981dcfc34f584d46afb46b217b47ce68f2f14a08",
"artifact_status": null
}
},
@@ -7637,15 +7466,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promote-all-21",
- "artifact_status": null
- }
- },
- {
- "type": "rule_not_applicable",
- "context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "exercises-start-points-12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -7653,7 +7474,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "exercises-start-points-12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
+ "trail_name": "differ-902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b",
"artifact_status": null
}
}
@@ -7680,8 +7501,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "exercises-start-points-ci",
- "trail_name": "76355112651c4ee66d6ee47f67e35459616f0dae",
+ "flow_name": "differ-ci",
+ "trail_name": "981dcfc34f584d46afb46b217b47ce68f2f14a08",
"artifact_status": null
}
},
@@ -7689,15 +7510,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promote-all-21",
- "artifact_status": null
- }
- },
- {
- "type": "rule_not_applicable",
- "context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "exercises-start-points-12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -7705,7 +7518,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "exercises-start-points-12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
+ "trail_name": "differ-902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b",
"artifact_status": null
}
}
@@ -7725,8 +7538,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "exercises-start-points-ci",
- "trail_name": "76355112651c4ee66d6ee47f67e35459616f0dae",
+ "flow_name": "differ-ci",
+ "trail_name": "981dcfc34f584d46afb46b217b47ce68f2f14a08",
"artifact_status": "COMPLIANT"
}
},
@@ -7734,15 +7547,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promote-all-21",
- "artifact_status": "COMPLIANT"
- }
- },
- {
- "type": "rule_not_applicable",
- "context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "exercises-start-points-12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -7750,7 +7555,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "exercises-start-points-12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
+ "trail_name": "differ-902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b",
"artifact_status": "COMPLIANT"
}
}
@@ -7775,8 +7580,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "exercises-start-points-ci",
- "trail_name": "76355112651c4ee66d6ee47f67e35459616f0dae",
+ "flow_name": "differ-ci",
+ "trail_name": "981dcfc34f584d46afb46b217b47ce68f2f14a08",
"artifact_status": null
}
},
@@ -7784,15 +7589,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promote-all-21",
- "artifact_status": null
- }
- },
- {
- "type": "rule_not_applicable",
- "context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "exercises-start-points-12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -7800,7 +7597,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "exercises-start-points-12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
+ "trail_name": "differ-902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b",
"artifact_status": null
}
}
@@ -7827,8 +7624,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "exercises-start-points-ci",
- "trail_name": "76355112651c4ee66d6ee47f67e35459616f0dae",
+ "flow_name": "differ-ci",
+ "trail_name": "981dcfc34f584d46afb46b217b47ce68f2f14a08",
"artifact_status": null
}
},
@@ -7836,15 +7633,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promote-all-21",
- "artifact_status": null
- }
- },
- {
- "type": "rule_not_applicable",
- "context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "exercises-start-points-12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
+ "trail_name": "promote-all-23",
"artifact_status": null
}
},
@@ -7852,7 +7641,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_not_applicable",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "exercises-start-points-12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
+ "trail_name": "differ-902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b",
"artifact_status": null
}
}
@@ -7878,8 +7667,8 @@ kosli get snapshot aws-prod --output=json
{
"type": "rule_not_applicable",
"context": {
- "flow_name": "exercises-start-points-ci",
- "trail_name": "76355112651c4ee66d6ee47f67e35459616f0dae",
+ "flow_name": "differ-ci",
+ "trail_name": "981dcfc34f584d46afb46b217b47ce68f2f14a08",
"artifact_status": "COMPLIANT"
}
},
@@ -7887,15 +7676,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "production-promotion",
- "trail_name": "promote-all-21",
- "artifact_status": "COMPLIANT"
- }
- },
- {
- "type": "rule_not_applicable",
- "context": {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "exercises-start-points-12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
+ "trail_name": "promote-all-23",
"artifact_status": "COMPLIANT"
}
},
@@ -7903,7 +7684,7 @@ kosli get snapshot aws-prod --output=json
"type": "rule_satisfied",
"context": {
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "exercises-start-points-12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
+ "trail_name": "differ-902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b",
"artifact_status": "COMPLIANT"
}
}
@@ -7914,161 +7695,120 @@ kosli get snapshot aws-prod --output=json
}
],
"reasons_for_incompliance": [],
- "fingerprint": "12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
+ "fingerprint": "902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b",
"creationTimestamp": [
- 1780332951
+ 1781590460
],
"pods": null,
"annotation": {
- "type": "changed",
+ "type": "unchanged",
"was": 1,
"now": 1
},
- "flow_name": "exercises-start-points-ci",
- "git_commit": "76355112651c4ee66d6ee47f67e35459616f0dae",
- "commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/76355112651c4ee66d6ee47f67e35459616f0dae",
- "html_url": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci/artifacts/12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc?artifact_id=f94caaee-8681-4ead-acb2-8ea7c803",
- "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci",
+ "flow_name": "differ-ci",
+ "git_commit": "981dcfc34f584d46afb46b217b47ce68f2f14a08",
+ "commit_url": "https://github.com/cyber-dojo/differ/commit/981dcfc34f584d46afb46b217b47ce68f2f14a08",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci/artifacts/902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b?artifact_id=03312679-db2a-4f55-a323-7cdb2c89",
+ "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci",
"deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/exercises-start-points/compare/545cccbc91f4030fb4004421e1076bd7c2abbc93...76355112651c4ee66d6ee47f67e35459616f0dae",
- "previous_git_commit": "545cccbc91f4030fb4004421e1076bd7c2abbc93",
- "previous_fingerprint": "a1e2d8e458a3813b1f8ab835befba1c1dea56a6fcc6ae2e165e7d7c6e3665c90",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:545cccb@sha256:a1e2d8e458a3813b1f8ab835befba1c1dea56a6fcc6ae2e165e7d7c6e3665c90",
+ "diff_url": "https://github.com/cyber-dojo/differ/compare/43d2a72431124e9fcf47bf866621ba3fd8e7f618...981dcfc34f584d46afb46b217b47ce68f2f14a08",
+ "previous_git_commit": "43d2a72431124e9fcf47bf866621ba3fd8e7f618",
+ "previous_fingerprint": "d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:43d2a72@sha256:d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/545cccbc91f4030fb4004421e1076bd7c2abbc93",
- "previous_trail_name": "545cccbc91f4030fb4004421e1076bd7c2abbc93",
- "previous_template_reference_name": "exercises-start-points"
+ "previous_git_commit_url": "https://github.com/cyber-dojo/differ/commit/43d2a72431124e9fcf47bf866621ba3fd8e7f618",
+ "previous_trail_name": "43d2a72431124e9fcf47bf866621ba3fd8e7f618",
+ "previous_template_reference_name": "differ"
},
- "commit_lead_time": 376587.0,
+ "commit_lead_time": 5387.0,
"flows": [
{
- "flow_name": "exercises-start-points-ci",
- "trail_name": "76355112651c4ee66d6ee47f67e35459616f0dae",
- "template_reference_name": "exercises-start-points",
- "git_commit": "76355112651c4ee66d6ee47f67e35459616f0dae",
- "commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/76355112651c4ee66d6ee47f67e35459616f0dae",
+ "flow_name": "differ-ci",
+ "trail_name": "981dcfc34f584d46afb46b217b47ce68f2f14a08",
+ "template_reference_name": "differ",
+ "git_commit": "981dcfc34f584d46afb46b217b47ce68f2f14a08",
+ "commit_url": "https://github.com/cyber-dojo/differ/commit/981dcfc34f584d46afb46b217b47ce68f2f14a08",
"git_commit_info": {
- "sha1": "76355112651c4ee66d6ee47f67e35459616f0dae",
- "message": "Merge pull request #125 from cyber-dojo/delete-dead-code\n\nDelete unused job outputs",
+ "sha1": "981dcfc34f584d46afb46b217b47ce68f2f14a08",
+ "message": "Run ci workflow to pickup new --annotation in secure-docker-build.yml (#403)",
"author": "Jon Jagger ",
- "branch": "main",
- "timestamp": 1779956364.0,
- "url": "https://github.com/cyber-dojo/exercises-start-points/commit/76355112651c4ee66d6ee47f67e35459616f0dae"
+ "branch": "",
+ "timestamp": 1781420097.0,
+ "url": "https://github.com/cyber-dojo/differ/commit/981dcfc34f584d46afb46b217b47ce68f2f14a08"
},
- "html_url": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci/artifacts/12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc?artifact_id=f94caaee-8681-4ead-acb2-8ea7c803",
- "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci/artifacts/902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b?artifact_id=03312679-db2a-4f55-a323-7cdb2c89",
+ "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci",
"deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/exercises-start-points/compare/545cccbc91f4030fb4004421e1076bd7c2abbc93...76355112651c4ee66d6ee47f67e35459616f0dae",
- "previous_git_commit": "545cccbc91f4030fb4004421e1076bd7c2abbc93",
- "previous_fingerprint": "a1e2d8e458a3813b1f8ab835befba1c1dea56a6fcc6ae2e165e7d7c6e3665c90",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:545cccb@sha256:a1e2d8e458a3813b1f8ab835befba1c1dea56a6fcc6ae2e165e7d7c6e3665c90",
+ "diff_url": "https://github.com/cyber-dojo/differ/compare/43d2a72431124e9fcf47bf866621ba3fd8e7f618...981dcfc34f584d46afb46b217b47ce68f2f14a08",
+ "previous_git_commit": "43d2a72431124e9fcf47bf866621ba3fd8e7f618",
+ "previous_fingerprint": "d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:43d2a72@sha256:d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/545cccbc91f4030fb4004421e1076bd7c2abbc93",
- "previous_trail_name": "545cccbc91f4030fb4004421e1076bd7c2abbc93",
- "previous_template_reference_name": "exercises-start-points"
+ "previous_git_commit_url": "https://github.com/cyber-dojo/differ/commit/43d2a72431124e9fcf47bf866621ba3fd8e7f618",
+ "previous_trail_name": "43d2a72431124e9fcf47bf866621ba3fd8e7f618",
+ "previous_template_reference_name": "differ"
},
- "commit_lead_time": 376587.0,
+ "commit_lead_time": 5387.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
"flow_name": "production-promotion",
- "trail_name": "promote-all-21",
- "template_reference_name": "exercises-start-points",
- "git_commit": "0f823ea52be90061b69b3f8f6056ca1203ac3d81",
- "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/0f823ea52be90061b69b3f8f6056ca1203ac3d81",
+ "trail_name": "promote-all-23",
+ "template_reference_name": "differ",
+ "git_commit": "01dd4c6406d6655898ef2236875ec9f67091c792",
+ "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792",
"git_commit_info": {
- "sha1": "0f823ea52be90061b69b3f8f6056ca1203ac3d81",
- "message": "Bump kosli/setup-cli-action to v5, use latest version",
+ "sha1": "01dd4c6406d6655898ef2236875ec9f67091c792",
+ "message": "Update comment and help text",
"author": "JonJagger ",
"branch": "main",
- "timestamp": 1779364424.0,
- "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/0f823ea52be90061b69b3f8f6056ca1203ac3d81"
+ "timestamp": 1781413514.0,
+ "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792"
},
- "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc?artifact_id=5ca58609-53a7-4173-a5ca-c2f57006",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b?artifact_id=5105b3dd-9a43-47c6-b724-375ecf8c",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion",
"deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/5fd1b6bba27771e4c93b8c29b3ff69465dff1c26...0f823ea52be90061b69b3f8f6056ca1203ac3d81",
- "previous_git_commit": "5fd1b6bba27771e4c93b8c29b3ff69465dff1c26",
- "previous_fingerprint": "a1e2d8e458a3813b1f8ab835befba1c1dea56a6fcc6ae2e165e7d7c6e3665c90",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:545cccb@sha256:a1e2d8e458a3813b1f8ab835befba1c1dea56a6fcc6ae2e165e7d7c6e3665c90",
- "previous_artifact_compliance_state": "COMPLIANT",
- "previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/5fd1b6bba27771e4c93b8c29b3ff69465dff1c26",
- "previous_trail_name": "promote-all-18",
- "previous_template_reference_name": "exercises-start-points"
- },
- "commit_lead_time": 968527.0,
- "artifact_compliance_in_flow": true,
- "flow_reasons_for_non_compliance": []
- },
- {
- "flow_name": "snyk-aws-beta-per-artifact",
- "trail_name": "exercises-start-points-12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
- "template_reference_name": "exercises-start-points",
- "git_commit": "c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4",
- "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4",
- "git_commit_info": {
- "sha1": "c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4",
- "message": "Delete dead step to force a trail to have empty template",
- "author": "JonJagger ",
- "branch": "main",
- "timestamp": 1780329192.0,
- "url": "https://github.com/cyber-dojo/snyk-scanning/commit/c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4"
- },
- "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc?artifact_id=d3a5612c-c22b-46e5-b367-cd2d7f79",
- "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact",
- "deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/822a5831653b0901ce5256c6e16d7eedb63ebc06...c96bbe5f1b3c4cf747f77fc9a81210e1fd2c30e4",
- "previous_git_commit": "822a5831653b0901ce5256c6e16d7eedb63ebc06",
- "previous_fingerprint": "a1e2d8e458a3813b1f8ab835befba1c1dea56a6fcc6ae2e165e7d7c6e3665c90",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:545cccb@sha256:a1e2d8e458a3813b1f8ab835befba1c1dea56a6fcc6ae2e165e7d7c6e3665c90",
+ "diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/0f823ea52be90061b69b3f8f6056ca1203ac3d81...01dd4c6406d6655898ef2236875ec9f67091c792",
+ "previous_git_commit": "0f823ea52be90061b69b3f8f6056ca1203ac3d81",
+ "previous_fingerprint": "d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
+ "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:43d2a72@sha256:d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
"previous_artifact_compliance_state": "COMPLIANT",
"previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/822a5831653b0901ce5256c6e16d7eedb63ebc06",
- "previous_trail_name": "exercises-start-points-a1e2d8e458a3813b1f8ab835befba1c1dea56a6fcc6ae2e165e7d7c6e3665c90",
- "previous_template_reference_name": "exercises-start-points"
+ "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/0f823ea52be90061b69b3f8f6056ca1203ac3d81",
+ "previous_trail_name": "promote-all-21",
+ "previous_template_reference_name": "differ"
},
- "commit_lead_time": 3759.0,
+ "commit_lead_time": 11970.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
},
{
"flow_name": "snyk-aws-prod-per-artifact",
- "trail_name": "exercises-start-points-12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
- "template_reference_name": "exercises-start-points",
- "git_commit": "ae002419e71c05cc5c1a285b52afdcef23d927c7",
- "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/ae002419e71c05cc5c1a285b52afdcef23d927c7",
+ "trail_name": "differ-902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b",
+ "template_reference_name": "differ",
+ "git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26",
+ "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26",
"git_commit_info": {
- "sha1": "ae002419e71c05cc5c1a285b52afdcef23d927c7",
- "message": "Upgrade workflows to use kosli-cli-setup v5",
+ "sha1": "00c479764cb9eca038fdaaaef108672d0bb0ed26",
+ "message": "Shorten the per-vuln attestation name to a 10-char fingerprint\n\n The per-vuln attestation was named snyk-. A full\n SHA-256 fingerprint is 64 hex chars, which renders badly on the\n snyk--per-vuln flow page. The fingerprint is only there to keep two\n builds of the same artifact in one deploy snapshot from clobbering each\n other on the shared per-vuln trail, and the first 10 hex chars (40 bits)\n are far more than enough to keep distinct builds apart.\n\n GitHub Actions expressions have no substring function, so the name can\n no longer be built inline in the job-level env. Compute it in a shell\n step that truncates the fingerprint and exports VULN_ATTESTATION_NAME to\n $GITHUB_ENV, ahead of every step that reads it.\n\n Note: per-vuln trails that already carry a snyk-\n attestation will, on their next run, also gain a snyk-<10-char> one,\n since Kosli keys attestations by name. Only trails created after this\n change will have the short name alone.",
"author": "JonJagger ",
"branch": "main",
- "timestamp": 1780908047.0,
- "url": "https://github.com/cyber-dojo/snyk-scanning/commit/ae002419e71c05cc5c1a285b52afdcef23d927c7"
+ "timestamp": 1781594940.0,
+ "url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26"
},
- "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc?artifact_id=2c5ce5d7-642c-48c3-bd41-3f69d62e",
+ "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b?artifact_id=c3ced9a1-6a7a-4708-a10d-de37693a",
"flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact",
- "deployment_diff": {
- "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/4cca3cf991dc8340b82c03e0a80b7b7a1b136bda...ae002419e71c05cc5c1a285b52afdcef23d927c7",
- "previous_git_commit": "4cca3cf991dc8340b82c03e0a80b7b7a1b136bda",
- "previous_fingerprint": "f08c1b6607812ab5357032dd6acbf94348247d37901a409c721696b6d11ba6e4",
- "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:f3cf3ba@sha256:f08c1b6607812ab5357032dd6acbf94348247d37901a409c721696b6d11ba6e4",
- "previous_artifact_compliance_state": "COMPLIANT",
- "previous_running": false,
- "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/4cca3cf991dc8340b82c03e0a80b7b7a1b136bda",
- "previous_trail_name": "exercises-start-points-f08c1b6607812ab5357032dd6acbf94348247d37901a409c721696b6d11ba6e4",
- "previous_template_reference_name": "exercises-start-points"
- },
- "commit_lead_time": -575096.0,
+ "deployment_diff": null,
+ "commit_lead_time": -169456.0,
"artifact_compliance_in_flow": true,
"flow_reasons_for_non_compliance": []
}
],
"ecs_context": {
- "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/2097842cf82f4e7383ee9e950c9bf355",
+ "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/1163f1ac7b424e038fca08fee39f5c4c",
"cluster_name": null,
"service_name": null
}
diff --git a/client_reference/kosli_get_trail.md b/client_reference/kosli_get_trail.md
index be34dfc..8301916 100644
--- a/client_reference/kosli_get_trail.md
+++ b/client_reference/kosli_get_trail.md
@@ -187,7 +187,9 @@ kosli get trail dashboard-ci 1159a6f1193150681b8484545150334e89de6c1c --output=j
"branch": "main",
"timestamp": 1711534976.0,
"url": "https://github.com/cyber-dojo/dashboard/commit/1159a6f1193150681b8484545150334e89de6c1c",
- "parents": null
+ "parents": null,
+ "verified": null,
+ "signature_state": null
},
"repo_info": null,
"setting_user_id": "da5d4ee8-aec0-4264-ab85-c491040c",
@@ -224,7 +226,9 @@ kosli get trail dashboard-ci 1159a6f1193150681b8484545150334e89de6c1c --output=j
"branch": "main",
"timestamp": 1711534976.0,
"url": "https://github.com/cyber-dojo/dashboard/commit/1159a6f1193150681b8484545150334e89de6c1c",
- "parents": null
+ "parents": null,
+ "verified": null,
+ "signature_state": null
},
"repo_info": null,
"attestation_type": "pull_request",
@@ -246,7 +250,9 @@ kosli get trail dashboard-ci 1159a6f1193150681b8484545150334e89de6c1c --output=j
"branch": "main",
"timestamp": 1711534976.0,
"url": "https://github.com/cyber-dojo/dashboard/commit/1159a6f1193150681b8484545150334e89de6c1c",
- "parents": null
+ "parents": null,
+ "verified": null,
+ "signature_state": null
},
"repo_info": null,
"attestation_type": "generic",
@@ -269,7 +275,9 @@ kosli get trail dashboard-ci 1159a6f1193150681b8484545150334e89de6c1c --output=j
"branch": "main",
"timestamp": 1711534976.0,
"url": "https://github.com/cyber-dojo/dashboard/commit/1159a6f1193150681b8484545150334e89de6c1c",
- "parents": null
+ "parents": null,
+ "verified": null,
+ "signature_state": null
},
"repo_info": null,
"artifact_fingerprint": "dddd83bf5038e81c228b222f01a0184ce2a8492cb45075b66be5baf5be803ca1",
@@ -292,7 +300,9 @@ kosli get trail dashboard-ci 1159a6f1193150681b8484545150334e89de6c1c --output=j
"branch": "main",
"timestamp": 1711534976.0,
"url": "https://github.com/cyber-dojo/dashboard/commit/1159a6f1193150681b8484545150334e89de6c1c",
- "parents": null
+ "parents": null,
+ "verified": null,
+ "signature_state": null
},
"repo_info": null,
"attestation_type": "snyk",
@@ -317,7 +327,9 @@ kosli get trail dashboard-ci 1159a6f1193150681b8484545150334e89de6c1c --output=j
"branch": "main",
"timestamp": 1711534976.0,
"url": "https://github.com/cyber-dojo/dashboard/commit/1159a6f1193150681b8484545150334e89de6c1c",
- "parents": null
+ "parents": null,
+ "verified": null,
+ "signature_state": null
},
"repo_info": null,
"attestation_type": "snyk",
@@ -402,7 +414,9 @@ kosli get trail dashboard-ci 1159a6f1193150681b8484545150334e89de6c1c --output=j
"branch": "main",
"timestamp": 1711195944.0,
"url": "https://github.com/cyber-dojo/live-snyk-scans/commit/cf3896a8bbd2f74c9e36336b69d8ee64eae1ff25",
- "parents": null
+ "parents": null,
+ "verified": null,
+ "signature_state": null
},
"repo_info": null,
"attestation_type": "snyk",
@@ -427,7 +441,9 @@ kosli get trail dashboard-ci 1159a6f1193150681b8484545150334e89de6c1c --output=j
"branch": "main",
"timestamp": 1711195944.0,
"url": "https://github.com/cyber-dojo/live-snyk-scans/commit/cf3896a8bbd2f74c9e36336b69d8ee64eae1ff25",
- "parents": null
+ "parents": null,
+ "verified": null,
+ "signature_state": null
},
"repo_info": null,
"attestation_type": "snyk",
@@ -452,7 +468,9 @@ kosli get trail dashboard-ci 1159a6f1193150681b8484545150334e89de6c1c --output=j
"branch": "main",
"timestamp": 1711195944.0,
"url": "https://github.com/cyber-dojo/live-snyk-scans/commit/cf3896a8bbd2f74c9e36336b69d8ee64eae1ff25",
- "parents": null
+ "parents": null,
+ "verified": null,
+ "signature_state": null
},
"repo_info": null,
"attestation_type": "snyk",
@@ -477,7 +495,9 @@ kosli get trail dashboard-ci 1159a6f1193150681b8484545150334e89de6c1c --output=j
"branch": "main",
"timestamp": 1711195944.0,
"url": "https://github.com/cyber-dojo/live-snyk-scans/commit/cf3896a8bbd2f74c9e36336b69d8ee64eae1ff25",
- "parents": null
+ "parents": null,
+ "verified": null,
+ "signature_state": null
},
"repo_info": null,
"attestation_type": "snyk",
@@ -502,7 +522,9 @@ kosli get trail dashboard-ci 1159a6f1193150681b8484545150334e89de6c1c --output=j
"branch": "main",
"timestamp": 1711195944.0,
"url": "https://github.com/cyber-dojo/live-snyk-scans/commit/cf3896a8bbd2f74c9e36336b69d8ee64eae1ff25",
- "parents": null
+ "parents": null,
+ "verified": null,
+ "signature_state": null
},
"repo_info": null,
"attestation_type": "snyk",
@@ -527,7 +549,9 @@ kosli get trail dashboard-ci 1159a6f1193150681b8484545150334e89de6c1c --output=j
"branch": "main",
"timestamp": 1711195944.0,
"url": "https://github.com/cyber-dojo/live-snyk-scans/commit/cf3896a8bbd2f74c9e36336b69d8ee64eae1ff25",
- "parents": null
+ "parents": null,
+ "verified": null,
+ "signature_state": null
},
"repo_info": null,
"attestation_type": "snyk",
@@ -552,7 +576,9 @@ kosli get trail dashboard-ci 1159a6f1193150681b8484545150334e89de6c1c --output=j
"branch": "main",
"timestamp": 1711195944.0,
"url": "https://github.com/cyber-dojo/live-snyk-scans/commit/cf3896a8bbd2f74c9e36336b69d8ee64eae1ff25",
- "parents": null
+ "parents": null,
+ "verified": null,
+ "signature_state": null
},
"repo_info": null,
"attestation_type": "snyk",
@@ -577,7 +603,9 @@ kosli get trail dashboard-ci 1159a6f1193150681b8484545150334e89de6c1c --output=j
"branch": "main",
"timestamp": 1711195944.0,
"url": "https://github.com/cyber-dojo/live-snyk-scans/commit/cf3896a8bbd2f74c9e36336b69d8ee64eae1ff25",
- "parents": null
+ "parents": null,
+ "verified": null,
+ "signature_state": null
},
"repo_info": null,
"attestation_type": "snyk",
@@ -602,7 +630,9 @@ kosli get trail dashboard-ci 1159a6f1193150681b8484545150334e89de6c1c --output=j
"branch": "main",
"timestamp": 1711195944.0,
"url": "https://github.com/cyber-dojo/live-snyk-scans/commit/cf3896a8bbd2f74c9e36336b69d8ee64eae1ff25",
- "parents": null
+ "parents": null,
+ "verified": null,
+ "signature_state": null
},
"repo_info": null,
"attestation_type": "snyk",
@@ -627,7 +657,9 @@ kosli get trail dashboard-ci 1159a6f1193150681b8484545150334e89de6c1c --output=j
"branch": "main",
"timestamp": 1711195944.0,
"url": "https://github.com/cyber-dojo/live-snyk-scans/commit/cf3896a8bbd2f74c9e36336b69d8ee64eae1ff25",
- "parents": null
+ "parents": null,
+ "verified": null,
+ "signature_state": null
},
"repo_info": null,
"attestation_type": "snyk",
@@ -681,7 +713,9 @@ kosli get trail dashboard-ci 1159a6f1193150681b8484545150334e89de6c1c --output=j
"branch": "main",
"timestamp": 1711195944.0,
"url": "https://github.com/cyber-dojo/live-snyk-scans/commit/cf3896a8bbd2f74c9e36336b69d8ee64eae1ff25",
- "parents": null
+ "parents": null,
+ "verified": null,
+ "signature_state": null
},
"repo_info": null,
"attestation_type": "snyk",
@@ -706,7 +740,9 @@ kosli get trail dashboard-ci 1159a6f1193150681b8484545150334e89de6c1c --output=j
"branch": "main",
"timestamp": 1711195944.0,
"url": "https://github.com/cyber-dojo/live-snyk-scans/commit/cf3896a8bbd2f74c9e36336b69d8ee64eae1ff25",
- "parents": null
+ "parents": null,
+ "verified": null,
+ "signature_state": null
},
"repo_info": null,
"attestation_type": "snyk",
diff --git a/client_reference/kosli_list_environments.md b/client_reference/kosli_list_environments.md
index d547828..b02f1d3 100644
--- a/client_reference/kosli_list_environments.md
+++ b/client_reference/kosli_list_environments.md
@@ -65,9 +65,9 @@ kosli list environments --output=json
"name": "aws-beta",
"type": "ECS",
"description": "The ECS cluster for staging cyber-dojo",
- "last_modified_at": 1781173644.1939907,
- "last_reported_at": 1781173644.1939907,
- "last_changed_at": 1781171423.8723896,
+ "last_modified_at": 1781604264.0449266,
+ "last_reported_at": 1781604264.0449266,
+ "last_changed_at": 1781597303.9477544,
"state": true,
"include_scaling": false,
"tags": {
@@ -86,9 +86,9 @@ kosli list environments --output=json
"name": "aws-prod",
"type": "ECS",
"description": "The ECS cluster for production cyber-dojo",
- "last_modified_at": 1781173678.7227857,
- "last_reported_at": 1781173678.7227857,
- "last_changed_at": 1781167678.669744,
+ "last_modified_at": 1781604298.5932145,
+ "last_reported_at": 1781604298.5932145,
+ "last_changed_at": 1781596438.4966626,
"state": true,
"include_scaling": false,
"tags": {
@@ -108,9 +108,9 @@ kosli list environments --output=json
"name": "production",
"type": "logical",
"description": "Production environments for cyber-dojo",
- "last_modified_at": 1781167678.669744,
+ "last_modified_at": 1781596438.4966626,
"last_reported_at": null,
- "last_changed_at": 1781167678.669744,
+ "last_changed_at": 1781596438.4966626,
"state": true,
"include_scaling": false,
"tags": {},
diff --git a/client_reference/kosli_list_flows.md b/client_reference/kosli_list_flows.md
index 1d77106..3d27505 100644
--- a/client_reference/kosli_list_flows.md
+++ b/client_reference/kosli_list_flows.md
@@ -152,6 +152,42 @@ kosli list flows --output=json
"env": "aws-beta"
}
},
+ {
+ "name": "monorepo-co-deployment",
+ "description": "Bind shared commit deployments",
+ "visibility": "private",
+ "org": "cyber-dojo",
+ "template": "version: 1",
+ "repo_url": "https://github.com/cyber-dojo/monorepo",
+ "tags": {}
+ },
+ {
+ "name": "monorepo-creator",
+ "description": "UX for Group/Kata creation",
+ "visibility": "public",
+ "org": "cyber-dojo",
+ "template": "\nversion: 1\ntrail:\n attestations:\n - { name: pull-request, type: pull_request }\n artifacts:\n - name: creator\n attestations:\n - { name: unit-test, type: junit }\n",
+ "repo_url": "https://github.com/cyber-dojo/monorepo",
+ "tags": {}
+ },
+ {
+ "name": "monorepo-dashboard",
+ "description": "UX for a group practice dashboard",
+ "visibility": "public",
+ "org": "cyber-dojo",
+ "template": "\nversion: 1\ntrail:\n attestations:\n - { name: pull-request, type: pull_request }\n artifacts:\n - name: dashboard\n attestations:\n - { name: rubocop, type: junit }\n - { name: snyk-container-scan, type: generic }\n",
+ "repo_url": "https://github.com/cyber-dojo/monorepo",
+ "tags": {}
+ },
+ {
+ "name": "monorepo-web",
+ "description": "UX for practicing TDD",
+ "visibility": "public",
+ "org": "cyber-dojo",
+ "template": "\nversion: 1\ntrail:\n attestations:\n - { name: pull-request, type: pull_request }\n artifacts:\n - name: web\n attestations:\n - { name: lint, type: generic }\n - { name: unit-test, type: junit }\n",
+ "repo_url": "https://github.com/cyber-dojo/monorepo",
+ "tags": {}
+ },
{
"name": "nginx-ci",
"description": "Reverse proxy",
@@ -253,9 +289,9 @@ kosli list flows --output=json
"repo_url": "",
"tags": {
"ci": "github",
+ "env": "aws-beta",
"kind": "run",
- "workflow_url": "https://github.com/cyber-dojo/snyk-scanning/blob/main/.github/workflows/artifact_snyk_test.yml",
- "env": "aws-beta"
+ "workflow_url": "https://github.com/cyber-dojo/snyk-scanning/blob/main/.github/workflows/artifact_snyk_test.yml"
}
},
{
@@ -281,9 +317,9 @@ kosli list flows --output=json
"repo_url": "",
"tags": {
"ci": "github",
+ "env": "aws-prod",
"kind": "run",
- "workflow_url": "https://github.com/cyber-dojo/snyk-scanning/blob/main/.github/workflows/artifact_snyk_test.yml",
- "env": "aws-prod"
+ "workflow_url": "https://github.com/cyber-dojo/snyk-scanning/blob/main/.github/workflows/artifact_snyk_test.yml"
}
},
{
diff --git a/client_reference/kosli_list_snapshots.md b/client_reference/kosli_list_snapshots.md
index 914e418..68f78e1 100644
--- a/client_reference/kosli_list_snapshots.md
+++ b/client_reference/kosli_list_snapshots.md
@@ -66,109 +66,109 @@ kosli list snapshots aws-prod --output=json
```json
[
{
- "index": 4749,
- "from": 1781167678.669744,
+ "index": 4781,
+ "from": 1781596438.4966626,
"to": 0.0,
"compliant": true,
- "duration": 6018.875128746033
+ "duration": 7872.4069356918335
},
{
- "index": 4748,
- "from": 1781159278.7947195,
- "to": 1781167678.669744,
+ "index": 4780,
+ "from": 1781596378.6927845,
+ "to": 1781596438.4966626,
"compliant": true,
- "duration": 8399.875024557114
+ "duration": 59.80387806892395
},
{
- "index": 4747,
- "from": 1781159218.5704055,
- "to": 1781159278.7947195,
+ "index": 4779,
+ "from": 1781596318.7251499,
+ "to": 1781596378.6927845,
"compliant": true,
- "duration": 60.22431397438049
+ "duration": 59.96763467788696
},
{
- "index": 4746,
- "from": 1781071618.6346955,
- "to": 1781159218.5704055,
+ "index": 4778,
+ "from": 1781596198.6164858,
+ "to": 1781596318.7251499,
"compliant": true,
- "duration": 87599.93570995331
+ "duration": 120.10866403579712
},
{
- "index": 4745,
- "from": 1781071558.3442817,
- "to": 1781071618.6346955,
+ "index": 4777,
+ "from": 1781596138.474564,
+ "to": 1781596198.6164858,
"compliant": true,
- "duration": 60.29041385650635
+ "duration": 60.14192175865173
},
{
- "index": 4744,
- "from": 1780984438.437869,
- "to": 1781071558.3442817,
+ "index": 4776,
+ "from": 1781596078.5283337,
+ "to": 1781596138.474564,
"compliant": true,
- "duration": 87119.90641260147
+ "duration": 59.94623041152954
},
{
- "index": 4743,
- "from": 1780984378.7307086,
- "to": 1780984438.437869,
+ "index": 4775,
+ "from": 1781595178.5604763,
+ "to": 1781596078.5283337,
"compliant": true,
- "duration": 59.70716047286987
+ "duration": 899.9678573608398
},
{
- "index": 4742,
- "from": 1780984318.462322,
- "to": 1780984378.7307086,
+ "index": 4774,
+ "from": 1781593978.426208,
+ "to": 1781595178.5604763,
"compliant": true,
- "duration": 60.26838660240173
+ "duration": 1200.134268283844
},
{
- "index": 4741,
- "from": 1780934518.864066,
- "to": 1780984318.462322,
+ "index": 4773,
+ "from": 1781593799.0334685,
+ "to": 1781593978.426208,
"compliant": true,
- "duration": 49799.598256111145
+ "duration": 179.39273953437805
},
{
- "index": 4740,
- "from": 1780934458.6713858,
- "to": 1780934518.864066,
+ "index": 4772,
+ "from": 1781593738.5721767,
+ "to": 1781593799.0334685,
"compliant": true,
- "duration": 60.19268012046814
+ "duration": 60.461291790008545
},
{
- "index": 4739,
- "from": 1780934398.9164453,
- "to": 1780934458.6713858,
+ "index": 4771,
+ "from": 1781592238.465858,
+ "to": 1781593738.5721767,
"compliant": true,
- "duration": 59.75494050979614
+ "duration": 1500.1063187122345
},
{
- "index": 4738,
- "from": 1780933918.5023239,
- "to": 1780934398.9164453,
+ "index": 4770,
+ "from": 1781592178.6246305,
+ "to": 1781592238.465858,
"compliant": true,
- "duration": 480.41412138938904
+ "duration": 59.841227531433105
},
{
- "index": 4737,
- "from": 1780899838.5880492,
- "to": 1780933918.5023239,
+ "index": 4769,
+ "from": 1781590498.431212,
+ "to": 1781592178.6246305,
"compliant": true,
- "duration": 34079.914274692535
+ "duration": 1680.1934185028076
},
{
- "index": 4736,
- "from": 1780898638.4568684,
- "to": 1780899838.5880492,
- "compliant": true,
- "duration": 1200.1311807632446
+ "index": 4768,
+ "from": 1781590138.5979598,
+ "to": 1781590498.431212,
+ "compliant": false,
+ "duration": 359.8332521915436
},
{
- "index": 4735,
- "from": 1780898578.8734438,
- "to": 1780898638.4568684,
+ "index": 4767,
+ "from": 1781535898.6708055,
+ "to": 1781590138.5979598,
"compliant": true,
- "duration": 59.58342456817627
+ "duration": 54239.9271543026
}
]
```
diff --git a/client_reference/kosli_log_environment.md b/client_reference/kosli_log_environment.md
index 660df34..57b476c 100644
--- a/client_reference/kosli_log_environment.md
+++ b/client_reference/kosli_log_environment.md
@@ -74,16 +74,16 @@ kosli log environment aws-prod --output=json
[
{
"environment_name": "aws-prod",
- "snapshot_index": 4749,
- "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:9513e77@sha256:31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
- "sha256": "31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
- "description": "1 instance changed",
- "reported_at": 1781167678.669744,
- "pipeline": "languages-start-points-ci",
+ "snapshot_index": 4781,
+ "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:9cc2a80@sha256:414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06",
+ "sha256": "414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06",
+ "description": "3 instances changed",
+ "reported_at": 1781596438.4966626,
+ "pipeline": "runner-ci",
"deployments": [],
"flows": [
{
- "flow_name": "languages-start-points-ci",
+ "flow_name": "runner-ci",
"deployments": null
},
{
@@ -101,39 +101,39 @@ kosli log environment aws-prod --output=json
],
"artifact_compliance": true,
"snapshot_compliance": true,
- "type": "changed",
- "code_diff": "https://github.com/cyber-dojo/languages-start-points/compare/16d155bdd120fe5a926504069dd18a98b8275fa8...9513e77858d775950f22173d0afd0634b2ac20b9",
+ "type": "updated-provenance",
+ "code_diff": "https://github.com/cyber-dojo/runner/compare/bc5fbc14361ce7a6281b6110049d90a03f69d786...9cc2a80e1306376b88039715dfdcfc161a0e3904",
"_links": {
"artifact": {
- "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/languages-start-points-ci/fingerprint/31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02",
- "html": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci/artifacts/31af583cc43761df4e53ffaabeafb6fa378af6af45f92d9cd12d76e48d4ceb02?artifact_id=ed68d54a-2549-4822-9dc5-96dad6c1"
+ "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/runner-ci/fingerprint/414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06",
+ "html": "https://app.kosli.com/cyber-dojo/flows/runner-ci/artifacts/414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06?artifact_id=73a8e588-a383-4eb5-a88c-a1db6160"
},
"snapshot": {
- "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4749",
- "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4749"
+ "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4781",
+ "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4781"
}
}
},
{
"environment_name": "aws-prod",
- "snapshot_index": 4749,
- "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:43d2a72@sha256:d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
- "sha256": "d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
+ "snapshot_index": 4781,
+ "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:6b5c159@sha256:b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928",
+ "sha256": "b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928",
"description": "1 instance changed",
- "reported_at": 1781167678.669744,
- "pipeline": "differ-ci",
+ "reported_at": 1781596438.4966626,
+ "pipeline": "custom-start-points-ci",
"deployments": [],
"flows": [
{
- "flow_name": "differ-ci",
+ "flow_name": "custom-start-points-ci",
"deployments": null
},
{
- "flow_name": "production-promotion",
+ "flow_name": "snyk-aws-beta-per-artifact",
"deployments": null
},
{
- "flow_name": "snyk-aws-beta-per-artifact",
+ "flow_name": "production-promotion",
"deployments": null
},
{
@@ -143,41 +143,37 @@ kosli log environment aws-prod --output=json
],
"artifact_compliance": true,
"snapshot_compliance": true,
- "type": "changed",
- "code_diff": "https://github.com/cyber-dojo/differ/compare/f2e8fa718ca3b72527625bd182beb2950bea3a77...43d2a72431124e9fcf47bf866621ba3fd8e7f618",
+ "type": "updated-provenance",
+ "code_diff": "https://github.com/cyber-dojo/custom-start-points/compare/d3e5850912655f2b18a68129f5f3a6480fe305ef...6b5c1598cc13c388a0fec71852e6b03bf0696e0b",
"_links": {
"artifact": {
- "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/differ-ci/fingerprint/d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9",
- "html": "https://app.kosli.com/cyber-dojo/flows/differ-ci/artifacts/d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9?artifact_id=66b5c45a-22d2-4f37-8688-beeeb449"
+ "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/custom-start-points-ci/fingerprint/b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928",
+ "html": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci/artifacts/b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928?artifact_id=954d759d-077a-4359-b51f-54c7f182"
},
"snapshot": {
- "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4749",
- "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4749"
+ "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4781",
+ "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4781"
}
}
},
{
"environment_name": "aws-prod",
- "snapshot_index": 4749,
- "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:68d791f@sha256:5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
- "sha256": "5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
- "description": "1 instance changed",
- "reported_at": 1781167678.669744,
- "pipeline": "saver-ci",
+ "snapshot_index": 4780,
+ "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:f66cc5c@sha256:29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4",
+ "sha256": "29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4",
+ "description": "3 instances changed",
+ "reported_at": 1781596378.6927845,
+ "pipeline": "web-ci",
"deployments": [],
"flows": [
{
- "flow_name": "saver-ci",
+ "flow_name": "web-ci",
"deployments": null
},
{
"flow_name": "production-promotion",
"deployments": null
},
- {
- "flow_name": "snyk-aws-beta-per-artifact",
- "deployments": null
- },
{
"flow_name": "snyk-aws-prod-per-artifact",
"deployments": null
@@ -185,39 +181,39 @@ kosli log environment aws-prod --output=json
],
"artifact_compliance": true,
"snapshot_compliance": true,
- "type": "changed",
- "code_diff": "https://github.com/cyber-dojo/saver/compare/a11b7588b2d2333e1346f1a2bb100395f11f42d2...68d791f93dc161fd8dba63e49b7fe9f909cbe758",
+ "type": "updated-provenance",
+ "code_diff": "https://github.com/cyber-dojo/web/compare/8863c10c2c93d3539672e0bf75bd9925f8778564...f66cc5c51fcc19b04b36e0542b36b6cc52515d3c",
"_links": {
"artifact": {
- "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/saver-ci/fingerprint/5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9",
- "html": "https://app.kosli.com/cyber-dojo/flows/saver-ci/artifacts/5ee9f19010bb3ae0bbd97098f83c9f652254eda1d1a488a057adedf02af9fbc9?artifact_id=174dfb75-db2f-40b0-901a-8a02499c"
+ "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/web-ci/fingerprint/29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4",
+ "html": "https://app.kosli.com/cyber-dojo/flows/web-ci/artifacts/29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4?artifact_id=ed664433-201f-41ac-938b-5931b5f4"
},
"snapshot": {
- "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4749",
- "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4749"
+ "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4780",
+ "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4780"
}
}
},
{
"environment_name": "aws-prod",
- "snapshot_index": 4749,
- "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:8863c10@sha256:443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
- "sha256": "443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
- "description": "3 instances changed",
- "reported_at": 1781167678.669744,
- "pipeline": "web-ci",
+ "snapshot_index": 4780,
+ "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:87f560f@sha256:45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c",
+ "sha256": "45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c",
+ "description": "1 instance changed",
+ "reported_at": 1781596378.6927845,
+ "pipeline": "dashboard-ci",
"deployments": [],
"flows": [
{
- "flow_name": "web-ci",
+ "flow_name": "dashboard-ci",
"deployments": null
},
{
- "flow_name": "production-promotion",
+ "flow_name": "snyk-aws-beta-per-artifact",
"deployments": null
},
{
- "flow_name": "snyk-aws-beta-per-artifact",
+ "flow_name": "production-promotion",
"deployments": null
},
{
@@ -227,26 +223,26 @@ kosli log environment aws-prod --output=json
],
"artifact_compliance": true,
"snapshot_compliance": true,
- "type": "changed",
- "code_diff": "https://github.com/cyber-dojo/web/compare/517657b9dec6ac7ff431ca5d9b2de72fded5c295...8863c10c2c93d3539672e0bf75bd9925f8778564",
+ "type": "updated-provenance",
+ "code_diff": "https://github.com/cyber-dojo/dashboard/compare/f3c679170776733c60dc485e076b7cb515caa7a4...87f560f87fb2bc242ee5c58d74d0e209d71cd338",
"_links": {
"artifact": {
- "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/web-ci/fingerprint/443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
- "html": "https://app.kosli.com/cyber-dojo/flows/web-ci/artifacts/443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735?artifact_id=65fd4674-3e05-441a-8bd3-71492624"
+ "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/dashboard-ci/fingerprint/45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c",
+ "html": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci/artifacts/45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c?artifact_id=bd23bb89-f867-46b2-9139-1f7fc8b3"
},
"snapshot": {
- "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4749",
- "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4749"
+ "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4780",
+ "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4780"
}
}
},
{
"environment_name": "aws-prod",
- "snapshot_index": 4749,
- "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:7635511@sha256:12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
- "sha256": "12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
+ "snapshot_index": 4780,
+ "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:b8e5cbf@sha256:f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8",
+ "sha256": "f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8",
"description": "1 instance changed",
- "reported_at": 1781167678.669744,
+ "reported_at": 1781596378.6927845,
"pipeline": "exercises-start-points-ci",
"deployments": [],
"flows": [
@@ -255,11 +251,11 @@ kosli log environment aws-prod --output=json
"deployments": null
},
{
- "flow_name": "production-promotion",
+ "flow_name": "snyk-aws-beta-per-artifact",
"deployments": null
},
{
- "flow_name": "snyk-aws-beta-per-artifact",
+ "flow_name": "production-promotion",
"deployments": null
},
{
@@ -269,39 +265,39 @@ kosli log environment aws-prod --output=json
],
"artifact_compliance": true,
"snapshot_compliance": true,
- "type": "changed",
- "code_diff": "https://github.com/cyber-dojo/exercises-start-points/compare/545cccbc91f4030fb4004421e1076bd7c2abbc93...76355112651c4ee66d6ee47f67e35459616f0dae",
+ "type": "updated-provenance",
+ "code_diff": "https://github.com/cyber-dojo/exercises-start-points/compare/76355112651c4ee66d6ee47f67e35459616f0dae...b8e5cbf56e7fc03becdeee6a1d493c0231fa2d0d",
"_links": {
"artifact": {
- "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/exercises-start-points-ci/fingerprint/12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc",
- "html": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci/artifacts/12c8c3b837fc9fef8c25c7c0fc905f8537877f674a93ebd18cf4ff804594a3bc?artifact_id=f94caaee-8681-4ead-acb2-8ea7c803"
+ "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/exercises-start-points-ci/fingerprint/f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8",
+ "html": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci/artifacts/f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8?artifact_id=4d62c06d-f9a2-4bfb-a8aa-a8d36ab8"
},
"snapshot": {
- "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4749",
- "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4749"
+ "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4780",
+ "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4780"
}
}
},
{
"environment_name": "aws-prod",
- "snapshot_index": 4749,
- "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:bc5fbc1@sha256:bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
- "sha256": "bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
- "description": "3 instances changed",
- "reported_at": 1781167678.669744,
- "pipeline": "runner-ci",
+ "snapshot_index": 4780,
+ "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:7e86fed@sha256:b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676",
+ "sha256": "b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676",
+ "description": "1 instance changed",
+ "reported_at": 1781596378.6927845,
+ "pipeline": "languages-start-points-ci",
"deployments": [],
"flows": [
{
- "flow_name": "runner-ci",
+ "flow_name": "languages-start-points-ci",
"deployments": null
},
{
- "flow_name": "production-promotion",
+ "flow_name": "snyk-aws-beta-per-artifact",
"deployments": null
},
{
- "flow_name": "snyk-aws-beta-per-artifact",
+ "flow_name": "production-promotion",
"deployments": null
},
{
@@ -311,41 +307,37 @@ kosli log environment aws-prod --output=json
],
"artifact_compliance": true,
"snapshot_compliance": true,
- "type": "changed",
- "code_diff": "https://github.com/cyber-dojo/runner/compare/bc8fb51346a42e17a4d3669f3ea11908782a43d1...bc5fbc14361ce7a6281b6110049d90a03f69d786",
+ "type": "updated-provenance",
+ "code_diff": "https://github.com/cyber-dojo/languages-start-points/compare/9513e77858d775950f22173d0afd0634b2ac20b9...7e86fede3e42d573de92fed483559b8317ce2dda",
"_links": {
"artifact": {
- "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/runner-ci/fingerprint/bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
- "html": "https://app.kosli.com/cyber-dojo/flows/runner-ci/artifacts/bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1?artifact_id=665ba644-8f04-4330-a5e7-7a9c03ba"
+ "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/languages-start-points-ci/fingerprint/b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676",
+ "html": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci/artifacts/b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676?artifact_id=8f51b5c2-8561-491c-a91e-248d6452"
},
"snapshot": {
- "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4749",
- "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4749"
+ "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4780",
+ "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4780"
}
}
},
{
"environment_name": "aws-prod",
- "snapshot_index": 4749,
- "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:cdaac80@sha256:da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
- "sha256": "da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
+ "snapshot_index": 4779,
+ "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:981dcfc@sha256:902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b",
+ "sha256": "902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b",
"description": "1 instance changed",
- "reported_at": 1781167678.669744,
- "pipeline": "nginx-ci",
+ "reported_at": 1781596318.7251499,
+ "pipeline": "differ-ci",
"deployments": [],
"flows": [
{
- "flow_name": "nginx-ci",
+ "flow_name": "differ-ci",
"deployments": null
},
{
"flow_name": "production-promotion",
"deployments": null
},
- {
- "flow_name": "snyk-aws-beta-per-artifact",
- "deployments": null
- },
{
"flow_name": "snyk-aws-prod-per-artifact",
"deployments": null
@@ -353,39 +345,39 @@ kosli log environment aws-prod --output=json
],
"artifact_compliance": true,
"snapshot_compliance": true,
- "type": "changed",
- "code_diff": "https://github.com/cyber-dojo/nginx/compare/ebf104fc1c073c7462a6ec381af70f639e4b8ba0...cdaac807f3282bd0bba056d906d5536074297a04",
+ "type": "updated-provenance",
+ "code_diff": "https://github.com/cyber-dojo/differ/compare/43d2a72431124e9fcf47bf866621ba3fd8e7f618...981dcfc34f584d46afb46b217b47ce68f2f14a08",
"_links": {
"artifact": {
- "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/nginx-ci/fingerprint/da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
- "html": "https://app.kosli.com/cyber-dojo/flows/nginx-ci/artifacts/da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4?artifact_id=daaf8e44-a0d4-46df-af10-a134861d"
+ "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/differ-ci/fingerprint/902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b",
+ "html": "https://app.kosli.com/cyber-dojo/flows/differ-ci/artifacts/902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b?artifact_id=03312679-db2a-4f55-a323-7cdb2c89"
},
"snapshot": {
- "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4749",
- "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4749"
+ "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4779",
+ "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4779"
}
}
},
{
"environment_name": "aws-prod",
- "snapshot_index": 4749,
- "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:d3e5850@sha256:9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
- "sha256": "9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
+ "snapshot_index": 4778,
+ "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:8c84fac@sha256:f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419",
+ "sha256": "f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419",
"description": "1 instance changed",
- "reported_at": 1781167678.669744,
- "pipeline": "custom-start-points-ci",
+ "reported_at": 1781596198.6164858,
+ "pipeline": "saver-ci",
"deployments": [],
"flows": [
{
- "flow_name": "custom-start-points-ci",
+ "flow_name": "saver-ci",
"deployments": null
},
{
- "flow_name": "production-promotion",
+ "flow_name": "snyk-aws-beta-per-artifact",
"deployments": null
},
{
- "flow_name": "snyk-aws-beta-per-artifact",
+ "flow_name": "production-promotion",
"deployments": null
},
{
@@ -395,26 +387,26 @@ kosli log environment aws-prod --output=json
],
"artifact_compliance": true,
"snapshot_compliance": true,
- "type": "changed",
- "code_diff": "https://github.com/cyber-dojo/custom-start-points/compare/a300e4c15cff321ef952a60bbc3a4729772a2419...d3e5850912655f2b18a68129f5f3a6480fe305ef",
+ "type": "updated-provenance",
+ "code_diff": "https://github.com/cyber-dojo/saver/compare/68d791f93dc161fd8dba63e49b7fe9f909cbe758...8c84facc7fd6a663fe7d40a6b4aff8f13a94d600",
"_links": {
"artifact": {
- "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/custom-start-points-ci/fingerprint/9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6",
- "html": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci/artifacts/9452c2f85c1d539974227f7e201f734934dce7b7dcbd2e056fcf9678454895e6?artifact_id=7c413c73-ba1e-4707-b6d3-ced83312"
+ "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/saver-ci/fingerprint/f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419",
+ "html": "https://app.kosli.com/cyber-dojo/flows/saver-ci/artifacts/f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419?artifact_id=bf5cf82a-8413-437c-97b0-1977ba2c"
},
"snapshot": {
- "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4749",
- "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4749"
+ "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4778",
+ "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4778"
}
}
},
{
"environment_name": "aws-prod",
- "snapshot_index": 4749,
- "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:2036886@sha256:e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035",
- "sha256": "e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035",
+ "snapshot_index": 4778,
+ "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:34f14b6@sha256:f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
+ "sha256": "f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
"description": "1 instance changed",
- "reported_at": 1781167678.669744,
+ "reported_at": 1781596198.6164858,
"pipeline": "creator-ci",
"deployments": [],
"flows": [
@@ -437,31 +429,31 @@ kosli log environment aws-prod --output=json
],
"artifact_compliance": true,
"snapshot_compliance": true,
- "type": "changed",
- "code_diff": "https://gitlab.com/cyber-dojo/creator/-/compare/3a066186b7fbbcec0130419518c5bb81b50e71db...20368865b1ba0532f99f69641bbb96e6334cb545",
+ "type": "updated-provenance",
+ "code_diff": "https://github.com/cyber-dojo/creator/compare/a288de54e3751244517d5e04fc73622e5363257d...34f14b6fc5d87ff95426046716ec8a09141c13a7",
"_links": {
"artifact": {
- "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/creator-ci/fingerprint/e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035",
- "html": "https://app.kosli.com/cyber-dojo/flows/creator-ci/artifacts/e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035?artifact_id=d5d4dc83-f3c0-4a50-b5cb-fdc4f610"
+ "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/creator-ci/fingerprint/f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
+ "html": "https://app.kosli.com/cyber-dojo/flows/creator-ci/artifacts/f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43?artifact_id=bafbb0d0-e794-4acf-bdf5-81262268"
},
"snapshot": {
- "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4749",
- "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4749"
+ "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4778",
+ "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4778"
}
}
},
{
"environment_name": "aws-prod",
- "snapshot_index": 4749,
- "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:f3c6791@sha256:9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
- "sha256": "9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
+ "snapshot_index": 4778,
+ "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:7065268@sha256:b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
+ "sha256": "b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
"description": "1 instance changed",
- "reported_at": 1781167678.669744,
- "pipeline": "dashboard-ci",
+ "reported_at": 1781596198.6164858,
+ "pipeline": "nginx-ci",
"deployments": [],
"flows": [
{
- "flow_name": "dashboard-ci",
+ "flow_name": "nginx-ci",
"deployments": null
},
{
@@ -479,31 +471,31 @@ kosli log environment aws-prod --output=json
],
"artifact_compliance": true,
"snapshot_compliance": true,
- "type": "changed",
- "code_diff": "https://github.com/cyber-dojo/dashboard/compare/0a839a472d41bf860d1d6dc3ded45ff63144018d...f3c679170776733c60dc485e076b7cb515caa7a4",
+ "type": "updated-provenance",
+ "code_diff": "https://github.com/cyber-dojo/nginx/compare/cdaac807f3282bd0bba056d906d5536074297a04...706526874659341458da5bb21903a6423c0a5a29",
"_links": {
"artifact": {
- "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/dashboard-ci/fingerprint/9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
- "html": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci/artifacts/9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349?artifact_id=a92f3bf6-3316-405e-aee8-51af645c"
+ "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/nginx-ci/fingerprint/b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
+ "html": "https://app.kosli.com/cyber-dojo/flows/nginx-ci/artifacts/b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8?artifact_id=0438395b-a9b0-4ee5-9b30-8cd146d9"
},
"snapshot": {
- "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4749",
- "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4749"
+ "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4778",
+ "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4778"
}
}
},
{
"environment_name": "aws-prod",
- "snapshot_index": 4748,
- "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:f3c6791@sha256:9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
- "sha256": "9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
+ "snapshot_index": 4777,
+ "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:7065268@sha256:b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
+ "sha256": "b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
"description": "1 instance changed",
- "reported_at": 1781159278.7947195,
- "pipeline": "dashboard-ci",
+ "reported_at": 1781596138.474564,
+ "pipeline": "nginx-ci",
"deployments": [],
"flows": [
{
- "flow_name": "dashboard-ci",
+ "flow_name": "nginx-ci",
"deployments": null
},
{
@@ -511,41 +503,41 @@ kosli log environment aws-prod --output=json
"deployments": null
},
{
- "flow_name": "snyk-aws-beta-per-artifact",
+ "flow_name": "snyk-aws-prod-per-artifact",
"deployments": null
},
{
- "flow_name": "snyk-aws-prod-per-artifact",
+ "flow_name": "snyk-aws-beta-per-artifact",
"deployments": null
}
],
"artifact_compliance": true,
"snapshot_compliance": true,
"type": "changed",
- "code_diff": "https://github.com/cyber-dojo/dashboard/compare/0a839a472d41bf860d1d6dc3ded45ff63144018d...f3c679170776733c60dc485e076b7cb515caa7a4",
+ "code_diff": "https://github.com/cyber-dojo/nginx/compare/cdaac807f3282bd0bba056d906d5536074297a04...706526874659341458da5bb21903a6423c0a5a29",
"_links": {
"artifact": {
- "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/dashboard-ci/fingerprint/9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349",
- "html": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci/artifacts/9aa8b29c6163d8d454fdc63f896d1d0d8dec8f74ad364004e47727db3c1d3349?artifact_id=a92f3bf6-3316-405e-aee8-51af645c"
+ "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/nginx-ci/fingerprint/b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
+ "html": "https://app.kosli.com/cyber-dojo/flows/nginx-ci/artifacts/b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8?artifact_id=0438395b-a9b0-4ee5-9b30-8cd146d9"
},
"snapshot": {
- "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4748",
- "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4748"
+ "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4777",
+ "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4777"
}
}
},
{
"environment_name": "aws-prod",
- "snapshot_index": 4748,
- "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:8863c10@sha256:443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
- "sha256": "443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
- "description": "3 instances changed",
- "reported_at": 1781159278.7947195,
- "pipeline": "web-ci",
+ "snapshot_index": 4776,
+ "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:34f14b6@sha256:f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
+ "sha256": "f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
+ "description": "1 instance changed",
+ "reported_at": 1781596078.5283337,
+ "pipeline": "creator-ci",
"deployments": [],
"flows": [
{
- "flow_name": "web-ci",
+ "flow_name": "creator-ci",
"deployments": null
},
{
@@ -553,41 +545,41 @@ kosli log environment aws-prod --output=json
"deployments": null
},
{
- "flow_name": "snyk-aws-beta-per-artifact",
+ "flow_name": "snyk-aws-prod-per-artifact",
"deployments": null
},
{
- "flow_name": "snyk-aws-prod-per-artifact",
+ "flow_name": "snyk-aws-beta-per-artifact",
"deployments": null
}
],
"artifact_compliance": true,
"snapshot_compliance": true,
"type": "changed",
- "code_diff": "https://github.com/cyber-dojo/web/compare/517657b9dec6ac7ff431ca5d9b2de72fded5c295...8863c10c2c93d3539672e0bf75bd9925f8778564",
+ "code_diff": "https://github.com/cyber-dojo/creator/compare/a288de54e3751244517d5e04fc73622e5363257d...34f14b6fc5d87ff95426046716ec8a09141c13a7",
"_links": {
"artifact": {
- "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/web-ci/fingerprint/443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735",
- "html": "https://app.kosli.com/cyber-dojo/flows/web-ci/artifacts/443fe71ccfa84a1b7eb1ebe4cf8931c43371843201f540e5f6a8c55154fdb735?artifact_id=65fd4674-3e05-441a-8bd3-71492624"
+ "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/creator-ci/fingerprint/f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
+ "html": "https://app.kosli.com/cyber-dojo/flows/creator-ci/artifacts/f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43?artifact_id=bafbb0d0-e794-4acf-bdf5-81262268"
},
"snapshot": {
- "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4748",
- "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4748"
+ "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4776",
+ "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4776"
}
}
},
{
"environment_name": "aws-prod",
- "snapshot_index": 4748,
- "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:2036886@sha256:e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035",
- "sha256": "e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035",
+ "snapshot_index": 4775,
+ "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:7065268@sha256:b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
+ "sha256": "b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
"description": "1 instance changed",
- "reported_at": 1781159278.7947195,
- "pipeline": "creator-ci",
+ "reported_at": 1781595178.5604763,
+ "pipeline": "nginx-ci",
"deployments": [],
"flows": [
{
- "flow_name": "creator-ci",
+ "flow_name": "nginx-ci",
"deployments": null
},
{
@@ -595,41 +587,41 @@ kosli log environment aws-prod --output=json
"deployments": null
},
{
- "flow_name": "snyk-aws-beta-per-artifact",
+ "flow_name": "snyk-aws-prod-per-artifact",
"deployments": null
},
{
- "flow_name": "snyk-aws-prod-per-artifact",
+ "flow_name": "snyk-aws-beta-per-artifact",
"deployments": null
}
],
"artifact_compliance": true,
"snapshot_compliance": true,
- "type": "changed",
- "code_diff": "https://gitlab.com/cyber-dojo/creator/-/compare/3a066186b7fbbcec0130419518c5bb81b50e71db...20368865b1ba0532f99f69641bbb96e6334cb545",
+ "type": "updated-provenance",
+ "code_diff": "https://github.com/cyber-dojo/nginx/compare/cdaac807f3282bd0bba056d906d5536074297a04...706526874659341458da5bb21903a6423c0a5a29",
"_links": {
"artifact": {
- "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/creator-ci/fingerprint/e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035",
- "html": "https://app.kosli.com/cyber-dojo/flows/creator-ci/artifacts/e433c4e99e5191290a2b36c72acdf86806a960381309e11dab902e4db8bfb035?artifact_id=d5d4dc83-f3c0-4a50-b5cb-fdc4f610"
+ "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/nginx-ci/fingerprint/b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8",
+ "html": "https://app.kosli.com/cyber-dojo/flows/nginx-ci/artifacts/b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8?artifact_id=0438395b-a9b0-4ee5-9b30-8cd146d9"
},
"snapshot": {
- "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4748",
- "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4748"
+ "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4775",
+ "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4775"
}
}
},
{
"environment_name": "aws-prod",
- "snapshot_index": 4748,
- "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:bc5fbc1@sha256:bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
- "sha256": "bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
- "description": "3 instances changed",
- "reported_at": 1781159278.7947195,
- "pipeline": "runner-ci",
+ "snapshot_index": 4775,
+ "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:34f14b6@sha256:f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
+ "sha256": "f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
+ "description": "1 instance changed",
+ "reported_at": 1781595178.5604763,
+ "pipeline": "creator-ci",
"deployments": [],
"flows": [
{
- "flow_name": "runner-ci",
+ "flow_name": "creator-ci",
"deployments": null
},
{
@@ -637,51 +629,47 @@ kosli log environment aws-prod --output=json
"deployments": null
},
{
- "flow_name": "snyk-aws-beta-per-artifact",
+ "flow_name": "snyk-aws-prod-per-artifact",
"deployments": null
},
{
- "flow_name": "snyk-aws-prod-per-artifact",
+ "flow_name": "snyk-aws-beta-per-artifact",
"deployments": null
}
],
"artifact_compliance": true,
"snapshot_compliance": true,
- "type": "changed",
- "code_diff": "https://github.com/cyber-dojo/runner/compare/bc8fb51346a42e17a4d3669f3ea11908782a43d1...bc5fbc14361ce7a6281b6110049d90a03f69d786",
+ "type": "updated-provenance",
+ "code_diff": "https://github.com/cyber-dojo/creator/compare/a288de54e3751244517d5e04fc73622e5363257d...34f14b6fc5d87ff95426046716ec8a09141c13a7",
"_links": {
"artifact": {
- "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/runner-ci/fingerprint/bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1",
- "html": "https://app.kosli.com/cyber-dojo/flows/runner-ci/artifacts/bdc8eb7fd4717d25b74f5bae58316e66c24283f17a03ce0256ea04fe7eee72b1?artifact_id=665ba644-8f04-4330-a5e7-7a9c03ba"
+ "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/creator-ci/fingerprint/f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43",
+ "html": "https://app.kosli.com/cyber-dojo/flows/creator-ci/artifacts/f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43?artifact_id=bafbb0d0-e794-4acf-bdf5-81262268"
},
"snapshot": {
- "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4748",
- "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4748"
+ "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4775",
+ "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4775"
}
}
},
{
"environment_name": "aws-prod",
- "snapshot_index": 4748,
- "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:cdaac80@sha256:da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
- "sha256": "da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
- "description": "1 instance changed",
- "reported_at": 1781159278.7947195,
- "pipeline": "nginx-ci",
+ "snapshot_index": 4774,
+ "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:f66cc5c@sha256:29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4",
+ "sha256": "29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4",
+ "description": "3 instances changed",
+ "reported_at": 1781593978.426208,
+ "pipeline": "web-ci",
"deployments": [],
"flows": [
{
- "flow_name": "nginx-ci",
+ "flow_name": "web-ci",
"deployments": null
},
{
"flow_name": "production-promotion",
"deployments": null
},
- {
- "flow_name": "snyk-aws-beta-per-artifact",
- "deployments": null
- },
{
"flow_name": "snyk-aws-prod-per-artifact",
"deployments": null
@@ -689,16 +677,16 @@ kosli log environment aws-prod --output=json
],
"artifact_compliance": true,
"snapshot_compliance": true,
- "type": "changed",
- "code_diff": "https://github.com/cyber-dojo/nginx/compare/ebf104fc1c073c7462a6ec381af70f639e4b8ba0...cdaac807f3282bd0bba056d906d5536074297a04",
+ "type": "updated-provenance",
+ "code_diff": "https://github.com/cyber-dojo/web/compare/8863c10c2c93d3539672e0bf75bd9925f8778564...f66cc5c51fcc19b04b36e0542b36b6cc52515d3c",
"_links": {
"artifact": {
- "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/nginx-ci/fingerprint/da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4",
- "html": "https://app.kosli.com/cyber-dojo/flows/nginx-ci/artifacts/da15b4868e6a3d31647edb8be04f3ef47878315068bd5f15ea78c8da09eba2b4?artifact_id=daaf8e44-a0d4-46df-af10-a134861d"
+ "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/web-ci/fingerprint/29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4",
+ "html": "https://app.kosli.com/cyber-dojo/flows/web-ci/artifacts/29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4?artifact_id=ed664433-201f-41ac-938b-5931b5f4"
},
"snapshot": {
- "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4748",
- "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4748"
+ "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4774",
+ "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4774"
}
}
}
diff --git a/client_reference/kosli_tag.md b/client_reference/kosli_tag.md
index 5e6de9b..92d9aa6 100644
--- a/client_reference/kosli_tag.md
+++ b/client_reference/kosli_tag.md
@@ -43,7 +43,7 @@ use --set to add or update tags, and --unset to remove tags.
View an example of the `kosli tag` command in GitHub.
- In [this YAML file](https://github.com/cyber-dojo/aws-prod-co-promotion/blob/b8cebb868c7b188ca28222ca21a4678524eca206/.github/workflows/promote_one.yml#L73)
+ In [this YAML file](https://github.com/cyber-dojo/aws-prod-co-promotion/blob/01dd4c6406d6655898ef2236875ec9f67091c792/.github/workflows/promote_one.yml#L73)
View an example of the `kosli tag` command in GitLab.
diff --git a/client_reference/overview.md b/client_reference/overview.md
index 815e1a0..e5cc562 100644
--- a/client_reference/overview.md
+++ b/client_reference/overview.md
@@ -4,7 +4,7 @@ description: "Reference documentation for the Kosli CLI."
---
- This reference was generated from Kosli CLI **v2.26.0**.
+ This reference was generated from Kosli CLI **v2.27.0**.
The Kosli CLI allows you to interact with Kosli from your terminal and CI/CD pipelines.