diff --git a/client_reference/kosli_assert_artifact.md b/client_reference/kosli_assert_artifact.md index eb3f61d..1441b2f 100644 --- a/client_reference/kosli_assert_artifact.md +++ b/client_reference/kosli_assert_artifact.md @@ -68,7 +68,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/3ab1ef84cb2243f184502ddb7f491e24d4ced1c1/.github/workflows/main.yml#L270) + In [this YAML file](https://github.com/cyber-dojo/differ/blob/3e563eacf76b48caaf2f19f29472544199df8a00/.github/workflows/main.yml#L271) 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 79134b4..5297756 100644 --- a/client_reference/kosli_attest_artifact.md +++ b/client_reference/kosli_attest_artifact.md @@ -79,12 +79,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/2d5cf6095a77931bc6eb6d525e4db2d1be1a8cb2/.github/workflows/secure-docker-build.yml#L219), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/differ-ci/trails/3ab1ef84cb2243f184502ddb7f491e24d4ced1c1?attestation_id=c25bc6ba-cbfd-4ad5-b5ab-d4bca4e9). + 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/3e563eacf76b48caaf2f19f29472544199df8a00?attestation_id=68ef150a-fe86-4b14-845b-7bcb814f). View an example of the `kosli attest artifact` command in GitLab. - 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). + 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/9034c75cdb2846757cff32d24e1c5e91f40060a8?attestation_id=e8a01a2b-b310-4700-bd41-33c1c4f0). diff --git a/client_reference/kosli_attest_custom.md b/client_reference/kosli_attest_custom.md index 866fc08..e3aa6a1 100644 --- a/client_reference/kosli_attest_custom.md +++ b/client_reference/kosli_attest_custom.md @@ -77,7 +77,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/3ab1ef84cb2243f184502ddb7f491e24d4ced1c1/.github/workflows/main.yml#L168), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/differ-ci/trails/3ab1ef84cb2243f184502ddb7f491e24d4ced1c1?attestation_id=e76820c2-28e3-47a4-b047-fd78c0e6). + In [this YAML file](https://github.com/cyber-dojo/differ/blob/3e563eacf76b48caaf2f19f29472544199df8a00/.github/workflows/main.yml#L168), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/differ-ci/trails/3e563eacf76b48caaf2f19f29472544199df8a00?attestation_id=483fda9c-4381-4c76-ba42-494856b6). diff --git a/client_reference/kosli_attest_generic.md b/client_reference/kosli_attest_generic.md index 28a690b..d8b7b5f 100644 --- a/client_reference/kosli_attest_generic.md +++ b/client_reference/kosli_attest_generic.md @@ -73,12 +73,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/ff89dd9bd1bfc5441854450adcf25d5aad9508f4/.github/workflows/main.yml#L197), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/dashboard-ci/trails/ff89dd9bd1bfc5441854450adcf25d5aad9508f4?attestation_id=13206cf1-58ef-44b2-abd5-7ba7dd52). + In [this YAML file](https://github.com/cyber-dojo/dashboard/blob/0e0b4c1c45ffb25251bbd2b27d892c2e3f810efa/.github/workflows/main.yml#L197), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/dashboard-ci/trails/0e0b4c1c45ffb25251bbd2b27d892c2e3f810efa?attestation_id=fe257259-f600-4195-9d2c-076362a0). View an example of the `kosli attest generic` command in GitLab. - 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). + 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/9034c75cdb2846757cff32d24e1c5e91f40060a8?attestation_id=3cc56ca1-69e8-4618-8fa4-e1738f3f). diff --git a/client_reference/kosli_attest_junit.md b/client_reference/kosli_attest_junit.md index ef74491..ceaeeb1 100644 --- a/client_reference/kosli_attest_junit.md +++ b/client_reference/kosli_attest_junit.md @@ -78,12 +78,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/3ab1ef84cb2243f184502ddb7f491e24d4ced1c1/.github/workflows/main.yml#L101), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/differ-ci/trails/3ab1ef84cb2243f184502ddb7f491e24d4ced1c1?attestation_id=1943de12-81c4-4493-b83c-6a6d8613). + In [this YAML file](https://github.com/cyber-dojo/differ/blob/3e563eacf76b48caaf2f19f29472544199df8a00/.github/workflows/main.yml#L101), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/differ-ci/trails/3e563eacf76b48caaf2f19f29472544199df8a00?attestation_id=2750332b-d869-4a42-b164-b7644306). View an example of the `kosli attest junit` command in GitLab. - 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). + 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/9034c75cdb2846757cff32d24e1c5e91f40060a8?attestation_id=01e2e589-0233-45ee-9414-68c00090). diff --git a/client_reference/kosli_attest_pullrequest_github.md b/client_reference/kosli_attest_pullrequest_github.md index f2c8e20..ac62732 100644 --- a/client_reference/kosli_attest_pullrequest_github.md +++ b/client_reference/kosli_attest_pullrequest_github.md @@ -70,7 +70,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/3ab1ef84cb2243f184502ddb7f491e24d4ced1c1/.github/workflows/main.yml#L81), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/differ-ci/trails/3ab1ef84cb2243f184502ddb7f491e24d4ced1c1?attestation_id=8f8068e0-2e48-4f20-b5a2-3869516e). + In [this YAML file](https://github.com/cyber-dojo/differ/blob/3e563eacf76b48caaf2f19f29472544199df8a00/.github/workflows/main.yml#L81), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/differ-ci/trails/3e563eacf76b48caaf2f19f29472544199df8a00?attestation_id=8ce50c5d-b210-4e3c-b93f-1bc22f01). diff --git a/client_reference/kosli_attest_pullrequest_gitlab.md b/client_reference/kosli_attest_pullrequest_gitlab.md index ab41d62..712b066 100644 --- a/client_reference/kosli_attest_pullrequest_gitlab.md +++ b/client_reference/kosli_attest_pullrequest_gitlab.md @@ -70,7 +70,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/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). + 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/9034c75cdb2846757cff32d24e1c5e91f40060a8?attestation_id=fc60da37-e166-464a-8f84-7ceeedbf). diff --git a/client_reference/kosli_attest_sonar.md b/client_reference/kosli_attest_sonar.md index 5d8ef99..9e1a876 100644 --- a/client_reference/kosli_attest_sonar.md +++ b/client_reference/kosli_attest_sonar.md @@ -98,7 +98,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/ff89dd9bd1bfc5441854450adcf25d5aad9508f4/.github/workflows/main.yml#L122), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/dashboard-ci/trails/ff89dd9bd1bfc5441854450adcf25d5aad9508f4?attestation_id=c8a0c20f-2037-4668-af96-6dcaaf73). + In [this YAML file](https://github.com/cyber-dojo/dashboard/blob/0e0b4c1c45ffb25251bbd2b27d892c2e3f810efa/.github/workflows/main.yml#L122), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/dashboard-ci/trails/0e0b4c1c45ffb25251bbd2b27d892c2e3f810efa?attestation_id=5f629aa0-6650-4b6f-9975-d18f74a7). diff --git a/client_reference/kosli_begin_trail.md b/client_reference/kosli_begin_trail.md index 1610904..eb98cc6 100644 --- a/client_reference/kosli_begin_trail.md +++ b/client_reference/kosli_begin_trail.md @@ -60,12 +60,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/c248c8e2175307f6906e4a016d09b21d177923bd/.github/workflows/main.yml#L78), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/runner-ci/trails/c248c8e2175307f6906e4a016d09b21d177923bd?attestation_id=1). + In [this YAML file](https://github.com/cyber-dojo/runner/blob/05fa6c14db21fa6a6f61c0e8ce08e929a28d13cd/.github/workflows/main.yml#L78), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/runner-ci/trails/05fa6c14db21fa6a6f61c0e8ce08e929a28d13cd?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/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). + 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/9034c75cdb2846757cff32d24e1c5e91f40060a8?attestation_id=1). diff --git a/client_reference/kosli_create_flow.md b/client_reference/kosli_create_flow.md index 027ba79..a4cf73b 100644 --- a/client_reference/kosli_create_flow.md +++ b/client_reference/kosli_create_flow.md @@ -45,7 +45,7 @@ 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/c248c8e2175307f6906e4a016d09b21d177923bd/.github/workflows/main.yml#L62) + In [this YAML file](https://github.com/cyber-dojo/runner/blob/05fa6c14db21fa6a6f61c0e8ce08e929a28d13cd/.github/workflows/main.yml#L62) View an example of the `kosli create flow` command in GitLab. diff --git a/client_reference/kosli_diff_snapshots.md b/client_reference/kosli_diff_snapshots.md index 8fb7bc4..79f69cf 100644 --- a/client_reference/kosli_diff_snapshots.md +++ b/client_reference/kosli_diff_snapshots.md @@ -66,122 +66,96 @@ kosli diff snapshots aws-beta aws-prod --output=json ```json { "snappish1": { - "snapshot_id": "aws-beta#7287", - "artifacts": [ - { - "fingerprint": "1645999c4f6c31a2bd0d756b6159026398e52f3fa809d435fc3981c46d9f635a", - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:b3e2ba9@sha256:1645999c4f6c31a2bd0d756b6159026398e52f3fa809d435fc3981c46d9f635a", - "most_recent_timestamp": 1781958201, - "flow": "custom-start-points-ci", - "commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/b3e2ba9a56fb9c61a6b9254a5fc722c37e533f04", - "instance_count": 1 - }, - { - "fingerprint": "1778152eb6389d7f527fc23d11cdf0a8c7eb3cc507b2c6cd48781209d685cec5", - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:69b6408@sha256:1778152eb6389d7f527fc23d11cdf0a8c7eb3cc507b2c6cd48781209d685cec5", - "most_recent_timestamp": 1781958220, - "flow": "exercises-start-points-ci", - "commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/69b64089d9326a09d8dee2e50035906c2ff78aef", - "instance_count": 1 - }, - { - "fingerprint": "58b212faa812ce9cf34e01e00ae7a827448568788d59c115898b69404e4066cb", - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:0906f8c@sha256:58b212faa812ce9cf34e01e00ae7a827448568788d59c115898b69404e4066cb", - "most_recent_timestamp": 1782042223, - "flow": "saver-ci", - "commit_url": "https://github.com/cyber-dojo/saver/commit/0906f8c20295bb8998449b05ed3855021ca5710e", - "instance_count": 1 - } - ] + "snapshot_id": "aws-beta#7328", + "artifacts": [] }, "snappish2": { - "snapshot_id": "aws-prod#4814", + "snapshot_id": "aws-prod#4833", + "artifacts": [] + }, + "changed": { + "artifacts": [] + }, + "not-changed": { "artifacts": [ { - "fingerprint": "58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:843d655@sha256:58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", - "most_recent_timestamp": 1781862431, + "fingerprint": "311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:514f79a@sha256:311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", + "most_recent_timestamp": 1782291042, "flow": "custom-start-points-ci", - "commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/843d6556ec718da1a1f51ce906c8c5bd6366d691", + "commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/514f79a280dee08bf889a4a4fdf41c9d2f231348", "instance_count": 1 }, { - "fingerprint": "b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:fbae360@sha256:b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", - "most_recent_timestamp": 1781862763, - "flow": "saver-ci", - "commit_url": "https://github.com/cyber-dojo/saver/commit/fbae360261d949b25a66a927921e757d4d064543", + "fingerprint": "4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:9034c75@sha256:4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6", + "most_recent_timestamp": 1782291138, + "flow": "creator-ci", + "commit_url": "https://github.com/cyber-dojo/creator/commit/9034c75cdb2846757cff32d24e1c5e91f40060a8", "instance_count": 1 }, { - "fingerprint": "df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:11fb356@sha256:df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", - "most_recent_timestamp": 1781862518, - "flow": "exercises-start-points-ci", - "commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/11fb35642d6c79603c1979f01d4fae7c1f7f0ce1", + "fingerprint": "5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:a35d092@sha256:5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e", + "most_recent_timestamp": 1782291046, + "flow": "saver-ci", + "commit_url": "https://github.com/cyber-dojo/saver/commit/a35d09232116daff39d0f939cb133edc5750e2a1", "instance_count": 1 - } - ] - }, - "changed": { - "artifacts": [] - }, - "not-changed": { - "artifacts": [ + }, { - "fingerprint": "7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:7eeaac4@sha256:7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", - "most_recent_timestamp": 1782044766, + "fingerprint": "5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:bb8a712@sha256:5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", + "most_recent_timestamp": 1782291119, "flow": "languages-start-points-ci", - "commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/7eeaac4c57e26887e4d027aa3c815bc2f214f934", + "commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/bb8a712de74f2fe3edf48169ca072d4eff997564", "instance_count": 1 }, { - "fingerprint": "82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:47ef6ca@sha256:82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", - "most_recent_timestamp": 1781862427, - "flow": "web-ci", - "commit_url": "https://github.com/cyber-dojo/web/commit/47ef6ca4f22445ca7138a4818f8fe3a8b69b81f1", - "instance_count": 3 - }, - { - "fingerprint": "a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:c248c8e@sha256:a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", - "most_recent_timestamp": 1781862576, + "fingerprint": "5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:05fa6c1@sha256:5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f", + "most_recent_timestamp": 1782291406, "flow": "runner-ci", - "commit_url": "https://github.com/cyber-dojo/runner/commit/c248c8e2175307f6906e4a016d09b21d177923bd", + "commit_url": "https://github.com/cyber-dojo/runner/commit/05fa6c14db21fa6a6f61c0e8ce08e929a28d13cd", "instance_count": 3 }, { - "fingerprint": "c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:3ab1ef8@sha256:c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", - "most_recent_timestamp": 1781862426, - "flow": "differ-ci", - "commit_url": "https://github.com/cyber-dojo/differ/commit/3ab1ef84cb2243f184502ddb7f491e24d4ced1c1", + "fingerprint": "76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:0e0b4c1@sha256:76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f", + "most_recent_timestamp": 1782291377, + "flow": "dashboard-ci", + "commit_url": "https://github.com/cyber-dojo/dashboard/commit/0e0b4c1c45ffb25251bbd2b27d892c2e3f810efa", "instance_count": 1 }, { - "fingerprint": "c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:ff89dd9@sha256:c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", - "most_recent_timestamp": 1781862505, - "flow": "dashboard-ci", - "commit_url": "https://github.com/cyber-dojo/dashboard/commit/ff89dd9bd1bfc5441854450adcf25d5aad9508f4", + "fingerprint": "c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:33b1b15@sha256:c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3", + "most_recent_timestamp": 1782291127, + "flow": "nginx-ci", + "commit_url": "https://github.com/cyber-dojo/nginx/commit/33b1b15247724eee83ab795f3d586b4eac93b456", "instance_count": 1 }, { - "fingerprint": "d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:6350271@sha256:d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", - "most_recent_timestamp": 1782044328, - "flow": "nginx-ci", - "commit_url": "https://github.com/cyber-dojo/nginx/commit/635027125d65a253a9c98bfd97d22cb3abbefa5a", + "fingerprint": "d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:42ca333@sha256:d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685", + "most_recent_timestamp": 1782291036, + "flow": "web-ci", + "commit_url": "https://github.com/cyber-dojo/web/commit/42ca333501c90d2cf36ce24035aa0a468e287da4", + "instance_count": 3 + }, + { + "fingerprint": "fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:75485ee@sha256:fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", + "most_recent_timestamp": 1782291366, + "flow": "exercises-start-points-ci", + "commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/75485ee4a18794755de633775a7b56b2b00cd7c9", "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", + "fingerprint": "ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:3e563ea@sha256:ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38", + "most_recent_timestamp": 1782291043, + "flow": "differ-ci", + "commit_url": "https://github.com/cyber-dojo/differ/commit/3e563eacf76b48caaf2f19f29472544199df8a00", "instance_count": 1 } ] diff --git a/client_reference/kosli_evaluate_input.md b/client_reference/kosli_evaluate_input.md index 0a64152..26055fa 100644 --- a/client_reference/kosli_evaluate_input.md +++ b/client_reference/kosli_evaluate_input.md @@ -64,7 +64,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/00c479764cb9eca038fdaaaef108672d0bb0ed26/tests/test_rego_rules.sh#L272) + In [this YAML file](https://github.com/cyber-dojo/snyk-scanning/blob/977f096d50418bdc9516329a57d32a3ac8a3f536/tests/test_rego_rules.sh#L272) diff --git a/client_reference/kosli_evaluate_trail.md b/client_reference/kosli_evaluate_trail.md index b361a6b..56f3b46 100644 --- a/client_reference/kosli_evaluate_trail.md +++ b/client_reference/kosli_evaluate_trail.md @@ -55,7 +55,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/00c479764cb9eca038fdaaaef108672d0bb0ed26/.github/workflows/artifact_snyk_test.yml#L323) + In [this YAML file](https://github.com/cyber-dojo/snyk-scanning/blob/977f096d50418bdc9516329a57d32a3ac8a3f536/.github/workflows/artifact_snyk_test.yml#L323) diff --git a/client_reference/kosli_fingerprint.md b/client_reference/kosli_fingerprint.md index 3bbb3fd..91e2098 100644 --- a/client_reference/kosli_fingerprint.md +++ b/client_reference/kosli_fingerprint.md @@ -77,7 +77,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/00c479764cb9eca038fdaaaef108672d0bb0ed26/.github/workflows/artifact_snyk_test.yml#L152) + In [this YAML file](https://github.com/cyber-dojo/snyk-scanning/blob/977f096d50418bdc9516329a57d32a3ac8a3f536/.github/workflows/artifact_snyk_test.yml#L152) diff --git a/client_reference/kosli_get_environment.md b/client_reference/kosli_get_environment.md index 7724c01..833e625 100644 --- a/client_reference/kosli_get_environment.md +++ b/client_reference/kosli_get_environment.md @@ -50,9 +50,9 @@ kosli get environment aws-prod --output=json "name": "aws-prod", "type": "ECS", "description": "The ECS cluster for production cyber-dojo", - "last_modified_at": 1782125338.5887742, - "last_reported_at": 1782125338.5887742, - "last_changed_at": 1782112078.6734855, + "last_modified_at": 1782296338.5634644, + "last_reported_at": 1782296338.5634644, + "last_changed_at": 1782295018.5650613, "state": true, "include_scaling": false, "tags": { diff --git a/client_reference/kosli_get_flow.md b/client_reference/kosli_get_flow.md index 5ee9e26..a8b2a49 100644 --- a/client_reference/kosli_get_flow.md +++ b/client_reference/kosli_get_flow.md @@ -50,7 +50,7 @@ kosli get flow dashboard-ci --output=json "description": "UX for a group practice dashboard", "visibility": "private", "org": "cyber-dojo", - "template": "version: 1\n\ntrail:\n attestations:\n - name: pull-request\n type: pull_request\n artifacts:\n - name: dashboard\n attestations:\n - name: rubocop-lint\n type: junit\n - name: snyk-container-scan\n type: generic\n - name: sonarcloud-scan\n type: sonar\n - name: unit-test\n type: junit\n - name: unit-test-coverage\n type: generic\n", + "template": "version: 1\n\ntrail:\n attestations:\n - name: pull-request\n type: pull_request\n artifacts:\n - name: dashboard\n attestations:\n - name: rubocop-lint\n type: junit\n - name: snyk-container-scan\n type: decision\n - name: sonarcloud-scan\n type: sonar\n - name: unit-test\n type: junit\n - name: unit-test-coverage\n type: generic\n", "repo_url": "https://github.com/cyber-dojo/dashboard", "tags": { "ci": "github", diff --git a/client_reference/kosli_get_snapshot.md b/client_reference/kosli_get_snapshot.md index 3b49f41..a60b188 100644 --- a/client_reference/kosli_get_snapshot.md +++ b/client_reference/kosli_get_snapshot.md @@ -64,7 +64,7 @@ kosli get snapshot aws-prod --output=json ```json { - "index": 4814, + "index": 4833, "is_latest": true, "next_snapshot_timestamp": null, "artifact_compliance_count": { @@ -72,13 +72,13 @@ kosli get snapshot aws-prod --output=json "false": 0, "null": 0 }, - "timestamp": 1782112078.6734855, + "timestamp": 1782295018.5650613, "type": "ECS", "compliant": true, - "html_url": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4814", + "html_url": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4833", "artifacts": [ { - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:c248c8e@sha256:a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:05fa6c1@sha256:5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f", "compliant": true, "deployments": [], "policy_decisions": [ @@ -101,7 +101,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "runner-ci", - "trail_name": "c248c8e2175307f6906e4a016d09b21d177923bd", + "trail_name": "05fa6c14db21fa6a6f61c0e8ce08e929a28d13cd", "artifact_status": null } }, @@ -109,23 +109,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "runner-5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "runner-5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f", "artifact_status": null } } @@ -146,7 +146,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "runner-ci", - "trail_name": "c248c8e2175307f6906e4a016d09b21d177923bd", + "trail_name": "05fa6c14db21fa6a6f61c0e8ce08e929a28d13cd", "artifact_status": "COMPLIANT" } }, @@ -154,23 +154,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "runner-5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "runner-5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f", "artifact_status": "COMPLIANT" } } @@ -196,7 +196,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "runner-ci", - "trail_name": "c248c8e2175307f6906e4a016d09b21d177923bd", + "trail_name": "05fa6c14db21fa6a6f61c0e8ce08e929a28d13cd", "artifact_status": null } }, @@ -204,23 +204,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "runner-5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "runner-5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f", "artifact_status": null } } @@ -248,7 +248,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "runner-ci", - "trail_name": "c248c8e2175307f6906e4a016d09b21d177923bd", + "trail_name": "05fa6c14db21fa6a6f61c0e8ce08e929a28d13cd", "artifact_status": null } }, @@ -256,23 +256,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "runner-5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f", "artifact_status": null } }, { "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "runner-5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f", "artifact_status": null } } @@ -293,7 +293,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "runner-ci", - "trail_name": "c248c8e2175307f6906e4a016d09b21d177923bd", + "trail_name": "05fa6c14db21fa6a6f61c0e8ce08e929a28d13cd", "artifact_status": "COMPLIANT" } }, @@ -301,23 +301,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "runner-5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "runner-5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f", "artifact_status": "COMPLIANT" } } @@ -327,7 +327,7 @@ kosli get snapshot aws-prod --output=json "policy_name": "provenance" }, { - "policy_version": 2, + "policy_version": 3, "status": "COMPLIANT", "rule_evaluations": [ { @@ -345,7 +345,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "runner-ci", - "trail_name": "c248c8e2175307f6906e4a016d09b21d177923bd", + "trail_name": "05fa6c14db21fa6a6f61c0e8ce08e929a28d13cd", "artifact_status": null } }, @@ -353,23 +353,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "runner-5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "runner-5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f", "artifact_status": null } } @@ -390,7 +390,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "runner-ci", - "trail_name": "c248c8e2175307f6906e4a016d09b21d177923bd", + "trail_name": "05fa6c14db21fa6a6f61c0e8ce08e929a28d13cd", "artifact_status": "COMPLIANT" } }, @@ -398,23 +398,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "runner-5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "runner-5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f", "artifact_status": "COMPLIANT" } } @@ -428,7 +428,7 @@ kosli get snapshot aws-prod --output=json "text": "flow.name == \"snyk-aws-prod-per-artifact\"" }, "name": "snyk-container-scan", - "type": "generic", + "type": "decision", "must_be_compliant": true, "for_control": null } @@ -440,7 +440,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "runner-ci", - "trail_name": "c248c8e2175307f6906e4a016d09b21d177923bd", + "trail_name": "05fa6c14db21fa6a6f61c0e8ce08e929a28d13cd", "artifact_status": null } }, @@ -448,23 +448,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, { - "type": "rule_satisfied", + "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "runner-5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f", "artifact_status": null } }, { - "type": "rule_not_applicable", + "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "runner-5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f", "artifact_status": null } } @@ -474,7 +474,7 @@ kosli get snapshot aws-prod --output=json "policy_name": "snyk-scan-aws-prod" }, { - "policy_version": 1, + "policy_version": 2, "status": "COMPLIANT", "rule_evaluations": [ { @@ -492,7 +492,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "runner-ci", - "trail_name": "c248c8e2175307f6906e4a016d09b21d177923bd", + "trail_name": "05fa6c14db21fa6a6f61c0e8ce08e929a28d13cd", "artifact_status": null } }, @@ -500,23 +500,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "runner-5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "runner-5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f", "artifact_status": null } } @@ -537,7 +537,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "runner-ci", - "trail_name": "c248c8e2175307f6906e4a016d09b21d177923bd", + "trail_name": "05fa6c14db21fa6a6f61c0e8ce08e929a28d13cd", "artifact_status": "COMPLIANT" } }, @@ -545,23 +545,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "runner-5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "runner-5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f", "artifact_status": "COMPLIANT" } } @@ -575,7 +575,7 @@ kosli get snapshot aws-prod --output=json "text": "flow.name == \"production-promotion\"" }, "name": "snyk-scan", - "type": "generic", + "type": "decision", "must_be_compliant": true, "for_control": null } @@ -587,7 +587,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "runner-ci", - "trail_name": "c248c8e2175307f6906e4a016d09b21d177923bd", + "trail_name": "05fa6c14db21fa6a6f61c0e8ce08e929a28d13cd", "artifact_status": null } }, @@ -595,23 +595,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "runner-5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "runner-5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f", "artifact_status": null } } @@ -639,7 +639,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "runner-ci", - "trail_name": "c248c8e2175307f6906e4a016d09b21d177923bd", + "trail_name": "05fa6c14db21fa6a6f61c0e8ce08e929a28d13cd", "artifact_status": null } }, @@ -647,23 +647,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "runner-5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "runner-5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f", "artifact_status": null } } @@ -690,7 +690,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "runner-ci", - "trail_name": "c248c8e2175307f6906e4a016d09b21d177923bd", + "trail_name": "05fa6c14db21fa6a6f61c0e8ce08e929a28d13cd", "artifact_status": "COMPLIANT" } }, @@ -698,23 +698,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { - "type": "rule_satisfied", + "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "runner-5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f", "artifact_status": "COMPLIANT" } }, { - "type": "rule_not_applicable", + "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "runner-5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f", "artifact_status": "COMPLIANT" } } @@ -725,11 +725,11 @@ kosli get snapshot aws-prod --output=json } ], "reasons_for_incompliance": [], - "fingerprint": "a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", + "fingerprint": "5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f", "creationTimestamp": [ - 1781862524, - 1781862527, - 1781862576 + 1782291397, + 1782291402, + 1782291406 ], "pods": null, "annotation": { @@ -738,57 +738,57 @@ kosli get snapshot aws-prod --output=json "now": 3 }, "flow_name": "runner-ci", - "git_commit": "c248c8e2175307f6906e4a016d09b21d177923bd", - "commit_url": "https://github.com/cyber-dojo/runner/commit/c248c8e2175307f6906e4a016d09b21d177923bd", - "html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci/artifacts/a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc?artifact_id=2596689f-18f2-4c1b-b176-64e8b46f", + "git_commit": "05fa6c14db21fa6a6f61c0e8ce08e929a28d13cd", + "commit_url": "https://github.com/cyber-dojo/runner/commit/05fa6c14db21fa6a6f61c0e8ce08e929a28d13cd", + "html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci/artifacts/5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f?artifact_id=6d9685ea-4831-42e9-a40c-e91cafcf", "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/runner/compare/9cc2a80e1306376b88039715dfdcfc161a0e3904...c248c8e2175307f6906e4a016d09b21d177923bd", - "previous_git_commit": "9cc2a80e1306376b88039715dfdcfc161a0e3904", - "previous_fingerprint": "414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:9cc2a80@sha256:414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06", + "diff_url": "https://github.com/cyber-dojo/runner/compare/c248c8e2175307f6906e4a016d09b21d177923bd...05fa6c14db21fa6a6f61c0e8ce08e929a28d13cd", + "previous_git_commit": "c248c8e2175307f6906e4a016d09b21d177923bd", + "previous_fingerprint": "a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:c248c8e@sha256:a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/runner/commit/9cc2a80e1306376b88039715dfdcfc161a0e3904", - "previous_trail_name": "9cc2a80e1306376b88039715dfdcfc161a0e3904", + "previous_git_commit_url": "https://github.com/cyber-dojo/runner/commit/c248c8e2175307f6906e4a016d09b21d177923bd", + "previous_trail_name": "c248c8e2175307f6906e4a016d09b21d177923bd", "previous_template_reference_name": "runner" }, - "commit_lead_time": 265707.0, + "commit_lead_time": 2592.0, "flows": [ { "flow_name": "runner-ci", - "trail_name": "c248c8e2175307f6906e4a016d09b21d177923bd", + "trail_name": "05fa6c14db21fa6a6f61c0e8ce08e929a28d13cd", "template_reference_name": "runner", - "git_commit": "c248c8e2175307f6906e4a016d09b21d177923bd", - "commit_url": "https://github.com/cyber-dojo/runner/commit/c248c8e2175307f6906e4a016d09b21d177923bd", + "git_commit": "05fa6c14db21fa6a6f61c0e8ce08e929a28d13cd", + "commit_url": "https://github.com/cyber-dojo/runner/commit/05fa6c14db21fa6a6f61c0e8ce08e929a28d13cd", "git_commit_info": { - "sha1": "c248c8e2175307f6906e4a016d09b21d177923bd", - "message": "Merge pull request #247 from cyber-dojo/remove-go-jose-vuln-and-bump-snyk-expiry\n\nDrop go-jose v4 snyk ignores now that the CVE is fixed; refresh expir\u2026", + "sha1": "05fa6c14db21fa6a6f61c0e8ce08e929a28d13cd", + "message": "Merge pull request #251 from cyber-dojo/document-containerd-v2client-vuln-CVE-2026-53488\n\nDocument containerd v2/client vuln CVE-2026-53488 as not exploitable", "author": "Jon Jagger ", "branch": "", - "timestamp": 1781596817.0, - "url": "https://github.com/cyber-dojo/runner/commit/c248c8e2175307f6906e4a016d09b21d177923bd" + "timestamp": 1782288805.0, + "url": "https://github.com/cyber-dojo/runner/commit/05fa6c14db21fa6a6f61c0e8ce08e929a28d13cd" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci/artifacts/a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc?artifact_id=2596689f-18f2-4c1b-b176-64e8b46f", + "html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci/artifacts/5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f?artifact_id=6d9685ea-4831-42e9-a40c-e91cafcf", "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/runner/compare/9cc2a80e1306376b88039715dfdcfc161a0e3904...c248c8e2175307f6906e4a016d09b21d177923bd", - "previous_git_commit": "9cc2a80e1306376b88039715dfdcfc161a0e3904", - "previous_fingerprint": "414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:9cc2a80@sha256:414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06", + "diff_url": "https://github.com/cyber-dojo/runner/compare/c248c8e2175307f6906e4a016d09b21d177923bd...05fa6c14db21fa6a6f61c0e8ce08e929a28d13cd", + "previous_git_commit": "c248c8e2175307f6906e4a016d09b21d177923bd", + "previous_fingerprint": "a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:c248c8e@sha256:a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/runner/commit/9cc2a80e1306376b88039715dfdcfc161a0e3904", - "previous_trail_name": "9cc2a80e1306376b88039715dfdcfc161a0e3904", + "previous_git_commit_url": "https://github.com/cyber-dojo/runner/commit/c248c8e2175307f6906e4a016d09b21d177923bd", + "previous_trail_name": "c248c8e2175307f6906e4a016d09b21d177923bd", "previous_template_reference_name": "runner" }, - "commit_lead_time": 265707.0, + "commit_lead_time": 2592.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "template_reference_name": "runner", "git_commit": "01dd4c6406d6655898ef2236875ec9f67091c792", "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792", @@ -800,94 +800,94 @@ kosli get snapshot aws-prod --output=json "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/a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc?artifact_id=7c54ea3e-6632-4187-b3c6-26b9e6f0", + "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f?artifact_id=9531a26e-b495-4f00-96f6-3a2747f2", "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/01dd4c6406d6655898ef2236875ec9f67091c792...01dd4c6406d6655898ef2236875ec9f67091c792", "previous_git_commit": "01dd4c6406d6655898ef2236875ec9f67091c792", - "previous_fingerprint": "414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:9cc2a80@sha256:414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06", + "previous_fingerprint": "a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:c248c8e@sha256:a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792", - "previous_trail_name": "promote-all-23", + "previous_trail_name": "promote-all-24", "previous_template_reference_name": "runner" }, - "commit_lead_time": 449010.0, + "commit_lead_time": 877883.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "runner-5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f", "template_reference_name": "runner", - "git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", + "git_commit": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071", "git_commit_info": { - "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.", + "sha1": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "message": "Replace attest-generic with attest-decision", "author": "JonJagger ", "branch": "main", - "timestamp": 1781594940.0, - "url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26" + "timestamp": 1782227560.0, + "url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc?artifact_id=2a0df45e-e425-4457-ac33-65669218", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f?artifact_id=f1f0c7d1-50ba-40fa-999b-c298b15f", + "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/00c479764cb9eca038fdaaaef108672d0bb0ed26...00c479764cb9eca038fdaaaef108672d0bb0ed26", + "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/00c479764cb9eca038fdaaaef108672d0bb0ed26...c17bb3ed8862de03c1a491dfe790fd8734fc7071", "previous_git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_fingerprint": "414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:9cc2a80@sha256:414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06", + "previous_fingerprint": "a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:c248c8e@sha256:a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_trail_name": "runner-414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06", + "previous_trail_name": "runner-a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", "previous_template_reference_name": "runner" }, - "commit_lead_time": 267584.0, + "commit_lead_time": 63837.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "runner-5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f", "template_reference_name": "runner", - "git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", + "git_commit": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071", "git_commit_info": { - "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.", + "sha1": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "message": "Replace attest-generic with attest-decision", "author": "JonJagger ", "branch": "main", - "timestamp": 1781594940.0, - "url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26" + "timestamp": 1782227560.0, + "url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc?artifact_id=814907f8-e75f-4b07-b6bb-c50c15ac", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f?artifact_id=e6e00418-1fb2-45e3-8663-5455c990", + "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/09e584191c69ab283e35869dcdaa474414b03e45...00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_git_commit": "09e584191c69ab283e35869dcdaa474414b03e45", + "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/00c479764cb9eca038fdaaaef108672d0bb0ed26...c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "previous_git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", "previous_fingerprint": "414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06", "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:9cc2a80@sha256:414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/09e584191c69ab283e35869dcdaa474414b03e45", + "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", "previous_trail_name": "runner-414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06", "previous_template_reference_name": "runner" }, - "commit_lead_time": 267584.0, + "commit_lead_time": 63837.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] } ], "ecs_context": { - "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/d0cc8b328fa047f68fd080671dac3ea1", + "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/bc010ab6597c4e85a06a23dcc5ca5e6d", "cluster_name": null, "service_name": null } }, { - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:7eeaac4@sha256:7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:0e0b4c1@sha256:76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f", "compliant": true, "deployments": [], "policy_decisions": [ @@ -909,8 +909,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "7eeaac4c57e26887e4d027aa3c815bc2f214f934", + "flow_name": "dashboard-ci", + "trail_name": "0e0b4c1c45ffb25251bbd2b27d892c2e3f810efa", "artifact_status": null } }, @@ -918,23 +918,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-73", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "dashboard-76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "dashboard-76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f", "artifact_status": null } } @@ -954,8 +954,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "7eeaac4c57e26887e4d027aa3c815bc2f214f934", + "flow_name": "dashboard-ci", + "trail_name": "0e0b4c1c45ffb25251bbd2b27d892c2e3f810efa", "artifact_status": "COMPLIANT" } }, @@ -963,23 +963,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-73", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "dashboard-76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "dashboard-76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f", "artifact_status": "COMPLIANT" } } @@ -1004,8 +1004,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "7eeaac4c57e26887e4d027aa3c815bc2f214f934", + "flow_name": "dashboard-ci", + "trail_name": "0e0b4c1c45ffb25251bbd2b27d892c2e3f810efa", "artifact_status": null } }, @@ -1013,23 +1013,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-73", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "dashboard-76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "dashboard-76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f", "artifact_status": null } } @@ -1056,8 +1056,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "7eeaac4c57e26887e4d027aa3c815bc2f214f934", + "flow_name": "dashboard-ci", + "trail_name": "0e0b4c1c45ffb25251bbd2b27d892c2e3f810efa", "artifact_status": null } }, @@ -1065,23 +1065,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-73", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "dashboard-76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f", "artifact_status": null } }, { "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "dashboard-76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f", "artifact_status": null } } @@ -1101,8 +1101,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "7eeaac4c57e26887e4d027aa3c815bc2f214f934", + "flow_name": "dashboard-ci", + "trail_name": "0e0b4c1c45ffb25251bbd2b27d892c2e3f810efa", "artifact_status": "COMPLIANT" } }, @@ -1110,23 +1110,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-73", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "dashboard-76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "dashboard-76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f", "artifact_status": "COMPLIANT" } } @@ -1136,7 +1136,7 @@ kosli get snapshot aws-prod --output=json "policy_name": "provenance" }, { - "policy_version": 2, + "policy_version": 3, "status": "COMPLIANT", "rule_evaluations": [ { @@ -1153,8 +1153,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "7eeaac4c57e26887e4d027aa3c815bc2f214f934", + "flow_name": "dashboard-ci", + "trail_name": "0e0b4c1c45ffb25251bbd2b27d892c2e3f810efa", "artifact_status": null } }, @@ -1162,23 +1162,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-73", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "dashboard-76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "dashboard-76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f", "artifact_status": null } } @@ -1198,8 +1198,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "7eeaac4c57e26887e4d027aa3c815bc2f214f934", + "flow_name": "dashboard-ci", + "trail_name": "0e0b4c1c45ffb25251bbd2b27d892c2e3f810efa", "artifact_status": "COMPLIANT" } }, @@ -1207,23 +1207,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-73", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "dashboard-76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "dashboard-76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f", "artifact_status": "COMPLIANT" } } @@ -1237,7 +1237,7 @@ kosli get snapshot aws-prod --output=json "text": "flow.name == \"snyk-aws-prod-per-artifact\"" }, "name": "snyk-container-scan", - "type": "generic", + "type": "decision", "must_be_compliant": true, "for_control": null } @@ -1248,8 +1248,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "7eeaac4c57e26887e4d027aa3c815bc2f214f934", + "flow_name": "dashboard-ci", + "trail_name": "0e0b4c1c45ffb25251bbd2b27d892c2e3f810efa", "artifact_status": null } }, @@ -1257,23 +1257,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-73", + "trail_name": "promote-all-25", "artifact_status": null } }, { - "type": "rule_satisfied", + "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "dashboard-76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f", "artifact_status": null } }, { - "type": "rule_not_applicable", + "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "dashboard-76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f", "artifact_status": null } } @@ -1283,7 +1283,7 @@ kosli get snapshot aws-prod --output=json "policy_name": "snyk-scan-aws-prod" }, { - "policy_version": 1, + "policy_version": 2, "status": "COMPLIANT", "rule_evaluations": [ { @@ -1300,8 +1300,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "7eeaac4c57e26887e4d027aa3c815bc2f214f934", + "flow_name": "dashboard-ci", + "trail_name": "0e0b4c1c45ffb25251bbd2b27d892c2e3f810efa", "artifact_status": null } }, @@ -1309,23 +1309,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-73", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "dashboard-76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "dashboard-76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f", "artifact_status": null } } @@ -1345,8 +1345,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "7eeaac4c57e26887e4d027aa3c815bc2f214f934", + "flow_name": "dashboard-ci", + "trail_name": "0e0b4c1c45ffb25251bbd2b27d892c2e3f810efa", "artifact_status": "COMPLIANT" } }, @@ -1354,23 +1354,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-73", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "dashboard-76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "dashboard-76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f", "artifact_status": "COMPLIANT" } } @@ -1384,7 +1384,7 @@ kosli get snapshot aws-prod --output=json "text": "flow.name == \"production-promotion\"" }, "name": "snyk-scan", - "type": "generic", + "type": "decision", "must_be_compliant": true, "for_control": null } @@ -1395,8 +1395,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "7eeaac4c57e26887e4d027aa3c815bc2f214f934", + "flow_name": "dashboard-ci", + "trail_name": "0e0b4c1c45ffb25251bbd2b27d892c2e3f810efa", "artifact_status": null } }, @@ -1404,23 +1404,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-73", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "dashboard-76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "dashboard-76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f", "artifact_status": null } } @@ -1447,8 +1447,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "7eeaac4c57e26887e4d027aa3c815bc2f214f934", + "flow_name": "dashboard-ci", + "trail_name": "0e0b4c1c45ffb25251bbd2b27d892c2e3f810efa", "artifact_status": null } }, @@ -1456,23 +1456,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-73", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "dashboard-76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "dashboard-76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f", "artifact_status": null } } @@ -1498,8 +1498,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "7eeaac4c57e26887e4d027aa3c815bc2f214f934", + "flow_name": "dashboard-ci", + "trail_name": "0e0b4c1c45ffb25251bbd2b27d892c2e3f810efa", "artifact_status": "COMPLIANT" } }, @@ -1507,23 +1507,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-73", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { - "type": "rule_satisfied", + "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "dashboard-76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f", "artifact_status": "COMPLIANT" } }, { - "type": "rule_not_applicable", + "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "dashboard-76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f", "artifact_status": "COMPLIANT" } } @@ -1534,9 +1534,9 @@ kosli get snapshot aws-prod --output=json } ], "reasons_for_incompliance": [], - "fingerprint": "7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", + "fingerprint": "76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f", "creationTimestamp": [ - 1782044766 + 1782291377 ], "pods": null, "annotation": { @@ -1544,59 +1544,59 @@ kosli get snapshot aws-prod --output=json "was": 1, "now": 1 }, - "flow_name": "languages-start-points-ci", - "git_commit": "7eeaac4c57e26887e4d027aa3c815bc2f214f934", - "commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/7eeaac4c57e26887e4d027aa3c815bc2f214f934", - "html_url": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci/artifacts/7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f?artifact_id=216380b8-1166-4cd0-a052-709e8f0f", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci", + "flow_name": "dashboard-ci", + "git_commit": "0e0b4c1c45ffb25251bbd2b27d892c2e3f810efa", + "commit_url": "https://github.com/cyber-dojo/dashboard/commit/0e0b4c1c45ffb25251bbd2b27d892c2e3f810efa", + "html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci/artifacts/76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f?artifact_id=5bbbda58-e526-4b64-9f80-6adcda47", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/languages-start-points/compare/c1cd97e11606d0a705df6619424c9ad8b07a57ca...7eeaac4c57e26887e4d027aa3c815bc2f214f934", - "previous_git_commit": "c1cd97e11606d0a705df6619424c9ad8b07a57ca", - "previous_fingerprint": "c76269bea7882b92f84938ca73220090b2b958c6cf468141aac49f54aeacecbe", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:c1cd97e@sha256:c76269bea7882b92f84938ca73220090b2b958c6cf468141aac49f54aeacecbe", + "diff_url": "https://github.com/cyber-dojo/dashboard/compare/ff89dd9bd1bfc5441854450adcf25d5aad9508f4...0e0b4c1c45ffb25251bbd2b27d892c2e3f810efa", + "previous_git_commit": "ff89dd9bd1bfc5441854450adcf25d5aad9508f4", + "previous_fingerprint": "c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:ff89dd9@sha256:c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/c1cd97e11606d0a705df6619424c9ad8b07a57ca", - "previous_trail_name": "c1cd97e11606d0a705df6619424c9ad8b07a57ca", - "previous_template_reference_name": "languages-start-points" + "previous_git_commit_url": "https://github.com/cyber-dojo/dashboard/commit/ff89dd9bd1bfc5441854450adcf25d5aad9508f4", + "previous_trail_name": "ff89dd9bd1bfc5441854450adcf25d5aad9508f4", + "previous_template_reference_name": "dashboard" }, - "commit_lead_time": 80359.0, + "commit_lead_time": 63585.0, "flows": [ { - "flow_name": "languages-start-points-ci", - "trail_name": "7eeaac4c57e26887e4d027aa3c815bc2f214f934", - "template_reference_name": "languages-start-points", - "git_commit": "7eeaac4c57e26887e4d027aa3c815bc2f214f934", - "commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/7eeaac4c57e26887e4d027aa3c815bc2f214f934", + "flow_name": "dashboard-ci", + "trail_name": "0e0b4c1c45ffb25251bbd2b27d892c2e3f810efa", + "template_reference_name": "dashboard", + "git_commit": "0e0b4c1c45ffb25251bbd2b27d892c2e3f810efa", + "commit_url": "https://github.com/cyber-dojo/dashboard/commit/0e0b4c1c45ffb25251bbd2b27d892c2e3f810efa", "git_commit_info": { - "sha1": "7eeaac4c57e26887e4d027aa3c815bc2f214f934", - "message": "Merge pull request #225 from cyber-dojo/refresh-language-start-points-list-dd43998\n\nMerge update-language-start-point image list into main", + "sha1": "0e0b4c1c45ffb25251bbd2b27d892c2e3f810efa", + "message": "Replace attest-generic with attest-decision for snyk (#393)", "author": "Jon Jagger ", - "branch": "main", - "timestamp": 1781964407.0, - "url": "https://github.com/cyber-dojo/languages-start-points/commit/7eeaac4c57e26887e4d027aa3c815bc2f214f934" + "branch": "", + "timestamp": 1782227792.0, + "url": "https://github.com/cyber-dojo/dashboard/commit/0e0b4c1c45ffb25251bbd2b27d892c2e3f810efa" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci/artifacts/7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f?artifact_id=216380b8-1166-4cd0-a052-709e8f0f", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci", + "html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci/artifacts/76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f?artifact_id=5bbbda58-e526-4b64-9f80-6adcda47", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/languages-start-points/compare/c1cd97e11606d0a705df6619424c9ad8b07a57ca...7eeaac4c57e26887e4d027aa3c815bc2f214f934", - "previous_git_commit": "c1cd97e11606d0a705df6619424c9ad8b07a57ca", - "previous_fingerprint": "c76269bea7882b92f84938ca73220090b2b958c6cf468141aac49f54aeacecbe", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:c1cd97e@sha256:c76269bea7882b92f84938ca73220090b2b958c6cf468141aac49f54aeacecbe", + "diff_url": "https://github.com/cyber-dojo/dashboard/compare/ff89dd9bd1bfc5441854450adcf25d5aad9508f4...0e0b4c1c45ffb25251bbd2b27d892c2e3f810efa", + "previous_git_commit": "ff89dd9bd1bfc5441854450adcf25d5aad9508f4", + "previous_fingerprint": "c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:ff89dd9@sha256:c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/c1cd97e11606d0a705df6619424c9ad8b07a57ca", - "previous_trail_name": "c1cd97e11606d0a705df6619424c9ad8b07a57ca", - "previous_template_reference_name": "languages-start-points" + "previous_git_commit_url": "https://github.com/cyber-dojo/dashboard/commit/ff89dd9bd1bfc5441854450adcf25d5aad9508f4", + "previous_trail_name": "ff89dd9bd1bfc5441854450adcf25d5aad9508f4", + "previous_template_reference_name": "dashboard" }, - "commit_lead_time": 80359.0, + "commit_lead_time": 63585.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "production-promotion", - "trail_name": "promotion-one-73", - "template_reference_name": "languages-start-points", + "trail_name": "promote-all-25", + "template_reference_name": "dashboard", "git_commit": "01dd4c6406d6655898ef2236875ec9f67091c792", "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792", "git_commit_info": { @@ -1607,94 +1607,94 @@ kosli get snapshot aws-prod --output=json "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/7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f?artifact_id=4252f72a-ce4e-4c8a-82bc-0fd16eab", + "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f?artifact_id=98e56fce-86a4-400d-894c-e6e26a6e", "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/01dd4c6406d6655898ef2236875ec9f67091c792...01dd4c6406d6655898ef2236875ec9f67091c792", "previous_git_commit": "01dd4c6406d6655898ef2236875ec9f67091c792", - "previous_fingerprint": "c76269bea7882b92f84938ca73220090b2b958c6cf468141aac49f54aeacecbe", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:c1cd97e@sha256:c76269bea7882b92f84938ca73220090b2b958c6cf468141aac49f54aeacecbe", + "previous_fingerprint": "c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:ff89dd9@sha256:c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792", "previous_trail_name": "promote-all-24", - "previous_template_reference_name": "languages-start-points" + "previous_template_reference_name": "dashboard" }, - "commit_lead_time": 631252.0, + "commit_lead_time": 877863.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", - "template_reference_name": "languages-start-points", - "git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "dashboard-76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f", + "template_reference_name": "dashboard", + "git_commit": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071", "git_commit_info": { - "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.", + "sha1": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "message": "Replace attest-generic with attest-decision", "author": "JonJagger ", "branch": "main", - "timestamp": 1781594940.0, - "url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26" + "timestamp": 1782227560.0, + "url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f?artifact_id=3b9b6c99-86b7-4453-bc89-7864fe73", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f?artifact_id=504677d7-c88f-4589-8b3e-41b1fc3c", + "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/00c479764cb9eca038fdaaaef108672d0bb0ed26...00c479764cb9eca038fdaaaef108672d0bb0ed26", + "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/00c479764cb9eca038fdaaaef108672d0bb0ed26...c17bb3ed8862de03c1a491dfe790fd8734fc7071", "previous_git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_fingerprint": "b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:7e86fed@sha256:b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676", + "previous_fingerprint": "c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:ff89dd9@sha256:c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_trail_name": "languages-start-points-b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676", - "previous_template_reference_name": "languages-start-points" + "previous_trail_name": "dashboard-c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", + "previous_template_reference_name": "dashboard" }, - "commit_lead_time": 449826.0, + "commit_lead_time": 63817.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", - "template_reference_name": "languages-start-points", - "git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "dashboard-76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f", + "template_reference_name": "dashboard", + "git_commit": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071", "git_commit_info": { - "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.", + "sha1": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "message": "Replace attest-generic with attest-decision", "author": "JonJagger ", "branch": "main", - "timestamp": 1781594940.0, - "url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26" + "timestamp": 1782227560.0, + "url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f?artifact_id=8545283c-5ecb-4818-90b3-a312087a", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f?artifact_id=9f2a3338-95db-442b-8074-757825b4", + "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/7172cc22125f480a9f12127edb481a4d84aabea3...00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_git_commit": "7172cc22125f480a9f12127edb481a4d84aabea3", - "previous_fingerprint": "b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:7e86fed@sha256:b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676", + "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/00c479764cb9eca038fdaaaef108672d0bb0ed26...c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "previous_git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", + "previous_fingerprint": "45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:87f560f@sha256:45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/7172cc22125f480a9f12127edb481a4d84aabea3", - "previous_trail_name": "languages-start-points-b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676", - "previous_template_reference_name": "languages-start-points" + "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", + "previous_trail_name": "dashboard-45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c", + "previous_template_reference_name": "dashboard" }, - "commit_lead_time": 449826.0, + "commit_lead_time": 63817.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] } ], "ecs_context": { - "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/192a81623f014cd6957bd5ec8d40d22b", + "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/7b24838e05874fa7af957d4fcd7d5dfe", "cluster_name": null, "service_name": null } }, { - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:6350271@sha256:d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:75485ee@sha256:fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", "compliant": true, "deployments": [], "policy_decisions": [ @@ -1716,8 +1716,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "nginx-ci", - "trail_name": "635027125d65a253a9c98bfd97d22cb3abbefa5a", + "flow_name": "exercises-start-points-ci", + "trail_name": "75485ee4a18794755de633775a7b56b2b00cd7c9", "artifact_status": null } }, @@ -1725,23 +1725,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-70", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "exercises-start-points-fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", "artifact_status": null } } @@ -1761,8 +1761,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "nginx-ci", - "trail_name": "635027125d65a253a9c98bfd97d22cb3abbefa5a", + "flow_name": "exercises-start-points-ci", + "trail_name": "75485ee4a18794755de633775a7b56b2b00cd7c9", "artifact_status": "COMPLIANT" } }, @@ -1770,23 +1770,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-70", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "exercises-start-points-fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", "artifact_status": "COMPLIANT" } } @@ -1811,8 +1811,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "nginx-ci", - "trail_name": "635027125d65a253a9c98bfd97d22cb3abbefa5a", + "flow_name": "exercises-start-points-ci", + "trail_name": "75485ee4a18794755de633775a7b56b2b00cd7c9", "artifact_status": null } }, @@ -1820,23 +1820,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-70", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "exercises-start-points-fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", "artifact_status": null } } @@ -1863,8 +1863,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "nginx-ci", - "trail_name": "635027125d65a253a9c98bfd97d22cb3abbefa5a", + "flow_name": "exercises-start-points-ci", + "trail_name": "75485ee4a18794755de633775a7b56b2b00cd7c9", "artifact_status": null } }, @@ -1872,23 +1872,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-70", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", "artifact_status": null } }, { "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "exercises-start-points-fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", "artifact_status": null } } @@ -1908,8 +1908,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "nginx-ci", - "trail_name": "635027125d65a253a9c98bfd97d22cb3abbefa5a", + "flow_name": "exercises-start-points-ci", + "trail_name": "75485ee4a18794755de633775a7b56b2b00cd7c9", "artifact_status": "COMPLIANT" } }, @@ -1917,23 +1917,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-70", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "exercises-start-points-fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", "artifact_status": "COMPLIANT" } } @@ -1943,7 +1943,7 @@ kosli get snapshot aws-prod --output=json "policy_name": "provenance" }, { - "policy_version": 2, + "policy_version": 3, "status": "COMPLIANT", "rule_evaluations": [ { @@ -1960,8 +1960,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "nginx-ci", - "trail_name": "635027125d65a253a9c98bfd97d22cb3abbefa5a", + "flow_name": "exercises-start-points-ci", + "trail_name": "75485ee4a18794755de633775a7b56b2b00cd7c9", "artifact_status": null } }, @@ -1969,23 +1969,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-70", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "exercises-start-points-fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", "artifact_status": null } } @@ -2005,8 +2005,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "nginx-ci", - "trail_name": "635027125d65a253a9c98bfd97d22cb3abbefa5a", + "flow_name": "exercises-start-points-ci", + "trail_name": "75485ee4a18794755de633775a7b56b2b00cd7c9", "artifact_status": "COMPLIANT" } }, @@ -2014,23 +2014,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-70", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "exercises-start-points-fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", "artifact_status": "COMPLIANT" } } @@ -2044,7 +2044,7 @@ kosli get snapshot aws-prod --output=json "text": "flow.name == \"snyk-aws-prod-per-artifact\"" }, "name": "snyk-container-scan", - "type": "generic", + "type": "decision", "must_be_compliant": true, "for_control": null } @@ -2055,8 +2055,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "nginx-ci", - "trail_name": "635027125d65a253a9c98bfd97d22cb3abbefa5a", + "flow_name": "exercises-start-points-ci", + "trail_name": "75485ee4a18794755de633775a7b56b2b00cd7c9", "artifact_status": null } }, @@ -2064,23 +2064,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-70", + "trail_name": "promote-all-25", "artifact_status": null } }, { - "type": "rule_satisfied", + "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", "artifact_status": null } }, { - "type": "rule_not_applicable", + "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "exercises-start-points-fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", "artifact_status": null } } @@ -2090,7 +2090,7 @@ kosli get snapshot aws-prod --output=json "policy_name": "snyk-scan-aws-prod" }, { - "policy_version": 1, + "policy_version": 2, "status": "COMPLIANT", "rule_evaluations": [ { @@ -2107,8 +2107,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "nginx-ci", - "trail_name": "635027125d65a253a9c98bfd97d22cb3abbefa5a", + "flow_name": "exercises-start-points-ci", + "trail_name": "75485ee4a18794755de633775a7b56b2b00cd7c9", "artifact_status": null } }, @@ -2116,23 +2116,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-70", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "exercises-start-points-fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", "artifact_status": null } } @@ -2152,8 +2152,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "nginx-ci", - "trail_name": "635027125d65a253a9c98bfd97d22cb3abbefa5a", + "flow_name": "exercises-start-points-ci", + "trail_name": "75485ee4a18794755de633775a7b56b2b00cd7c9", "artifact_status": "COMPLIANT" } }, @@ -2161,23 +2161,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-70", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "exercises-start-points-fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", "artifact_status": "COMPLIANT" } } @@ -2191,7 +2191,7 @@ kosli get snapshot aws-prod --output=json "text": "flow.name == \"production-promotion\"" }, "name": "snyk-scan", - "type": "generic", + "type": "decision", "must_be_compliant": true, "for_control": null } @@ -2202,8 +2202,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "nginx-ci", - "trail_name": "635027125d65a253a9c98bfd97d22cb3abbefa5a", + "flow_name": "exercises-start-points-ci", + "trail_name": "75485ee4a18794755de633775a7b56b2b00cd7c9", "artifact_status": null } }, @@ -2211,23 +2211,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-70", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "exercises-start-points-fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", "artifact_status": null } } @@ -2254,8 +2254,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "nginx-ci", - "trail_name": "635027125d65a253a9c98bfd97d22cb3abbefa5a", + "flow_name": "exercises-start-points-ci", + "trail_name": "75485ee4a18794755de633775a7b56b2b00cd7c9", "artifact_status": null } }, @@ -2263,23 +2263,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-70", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "exercises-start-points-fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", "artifact_status": null } } @@ -2305,8 +2305,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "nginx-ci", - "trail_name": "635027125d65a253a9c98bfd97d22cb3abbefa5a", + "flow_name": "exercises-start-points-ci", + "trail_name": "75485ee4a18794755de633775a7b56b2b00cd7c9", "artifact_status": "COMPLIANT" } }, @@ -2314,23 +2314,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-70", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { - "type": "rule_satisfied", + "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", "artifact_status": "COMPLIANT" } }, { - "type": "rule_not_applicable", + "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "exercises-start-points-fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", "artifact_status": "COMPLIANT" } } @@ -2341,9 +2341,9 @@ kosli get snapshot aws-prod --output=json } ], "reasons_for_incompliance": [], - "fingerprint": "d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", + "fingerprint": "fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", "creationTimestamp": [ - 1782044328 + 1782291366 ], "pods": null, "annotation": { @@ -2351,59 +2351,59 @@ kosli get snapshot aws-prod --output=json "was": 1, "now": 1 }, - "flow_name": "nginx-ci", - "git_commit": "635027125d65a253a9c98bfd97d22cb3abbefa5a", - "commit_url": "https://github.com/cyber-dojo/nginx/commit/635027125d65a253a9c98bfd97d22cb3abbefa5a", - "html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci/artifacts/d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb?artifact_id=4c204b40-ff5f-45b1-843a-4b42fc65", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci", + "flow_name": "exercises-start-points-ci", + "git_commit": "75485ee4a18794755de633775a7b56b2b00cd7c9", + "commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/75485ee4a18794755de633775a7b56b2b00cd7c9", + "html_url": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci/artifacts/fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58?artifact_id=0289c6f2-2ff3-466b-8b94-12e7c2b0", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/nginx/compare/706526874659341458da5bb21903a6423c0a5a29...635027125d65a253a9c98bfd97d22cb3abbefa5a", - "previous_git_commit": "706526874659341458da5bb21903a6423c0a5a29", - "previous_fingerprint": "b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:7065268@sha256:b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8", + "diff_url": "https://github.com/cyber-dojo/exercises-start-points/compare/11fb35642d6c79603c1979f01d4fae7c1f7f0ce1...75485ee4a18794755de633775a7b56b2b00cd7c9", + "previous_git_commit": "11fb35642d6c79603c1979f01d4fae7c1f7f0ce1", + "previous_fingerprint": "df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:11fb356@sha256:df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/nginx/commit/706526874659341458da5bb21903a6423c0a5a29", - "previous_trail_name": "706526874659341458da5bb21903a6423c0a5a29", - "previous_template_reference_name": "nginx" + "previous_git_commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/11fb35642d6c79603c1979f01d4fae7c1f7f0ce1", + "previous_trail_name": "11fb35642d6c79603c1979f01d4fae7c1f7f0ce1", + "previous_template_reference_name": "exercises-start-points" }, - "commit_lead_time": 679.0, + "commit_lead_time": 61395.0, "flows": [ { - "flow_name": "nginx-ci", - "trail_name": "635027125d65a253a9c98bfd97d22cb3abbefa5a", - "template_reference_name": "nginx", - "git_commit": "635027125d65a253a9c98bfd97d22cb3abbefa5a", - "commit_url": "https://github.com/cyber-dojo/nginx/commit/635027125d65a253a9c98bfd97d22cb3abbefa5a", + "flow_name": "exercises-start-points-ci", + "trail_name": "75485ee4a18794755de633775a7b56b2b00cd7c9", + "template_reference_name": "exercises-start-points", + "git_commit": "75485ee4a18794755de633775a7b56b2b00cd7c9", + "commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/75485ee4a18794755de633775a7b56b2b00cd7c9", "git_commit_info": { - "sha1": "635027125d65a253a9c98bfd97d22cb3abbefa5a", - "message": "Merge pull request #133 from cyber-dojo/pickup-lib-updates\n\nBuild new image to pick up fix to libexpat vuln", + "sha1": "75485ee4a18794755de633775a7b56b2b00cd7c9", + "message": "Merge pull request #133 from cyber-dojo/replace-attest-generic-with-attest-decision\n\nReplace attest-generic with attest-decision for snyk", "author": "Jon Jagger ", - "branch": "", - "timestamp": 1782043649.0, - "url": "https://github.com/cyber-dojo/nginx/commit/635027125d65a253a9c98bfd97d22cb3abbefa5a" + "branch": "main", + "timestamp": 1782229971.0, + "url": "https://github.com/cyber-dojo/exercises-start-points/commit/75485ee4a18794755de633775a7b56b2b00cd7c9" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci/artifacts/d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb?artifact_id=4c204b40-ff5f-45b1-843a-4b42fc65", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci", + "html_url": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci/artifacts/fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58?artifact_id=0289c6f2-2ff3-466b-8b94-12e7c2b0", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/nginx/compare/706526874659341458da5bb21903a6423c0a5a29...635027125d65a253a9c98bfd97d22cb3abbefa5a", - "previous_git_commit": "706526874659341458da5bb21903a6423c0a5a29", - "previous_fingerprint": "b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:7065268@sha256:b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8", + "diff_url": "https://github.com/cyber-dojo/exercises-start-points/compare/11fb35642d6c79603c1979f01d4fae7c1f7f0ce1...75485ee4a18794755de633775a7b56b2b00cd7c9", + "previous_git_commit": "11fb35642d6c79603c1979f01d4fae7c1f7f0ce1", + "previous_fingerprint": "df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:11fb356@sha256:df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/nginx/commit/706526874659341458da5bb21903a6423c0a5a29", - "previous_trail_name": "706526874659341458da5bb21903a6423c0a5a29", - "previous_template_reference_name": "nginx" + "previous_git_commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/11fb35642d6c79603c1979f01d4fae7c1f7f0ce1", + "previous_trail_name": "11fb35642d6c79603c1979f01d4fae7c1f7f0ce1", + "previous_template_reference_name": "exercises-start-points" }, - "commit_lead_time": 679.0, + "commit_lead_time": 61395.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "production-promotion", - "trail_name": "promotion-one-70", - "template_reference_name": "nginx", + "trail_name": "promote-all-25", + "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": { @@ -2414,94 +2414,94 @@ kosli get snapshot aws-prod --output=json "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/d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb?artifact_id=ca75ceb5-182a-4c9b-8efb-a6e405e8", + "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58?artifact_id=a7db7c48-106b-4f74-91ea-9363192e", "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/01dd4c6406d6655898ef2236875ec9f67091c792...01dd4c6406d6655898ef2236875ec9f67091c792", "previous_git_commit": "01dd4c6406d6655898ef2236875ec9f67091c792", - "previous_fingerprint": "b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:7065268@sha256:b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8", + "previous_fingerprint": "df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:11fb356@sha256:df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792", - "previous_trail_name": "promote-all-23", - "previous_template_reference_name": "nginx" + "previous_trail_name": "promote-all-24", + "previous_template_reference_name": "exercises-start-points" }, - "commit_lead_time": 630814.0, + "commit_lead_time": 877852.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", - "template_reference_name": "nginx", - "git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", + "template_reference_name": "exercises-start-points", + "git_commit": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071", "git_commit_info": { - "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.", + "sha1": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "message": "Replace attest-generic with attest-decision", "author": "JonJagger ", "branch": "main", - "timestamp": 1781594940.0, - "url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26" + "timestamp": 1782227560.0, + "url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb?artifact_id=ae10e50d-ea52-4527-be90-3607e2b3", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58?artifact_id=e8793bba-63ed-41b9-b7a3-d9b8fd60", + "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/00c479764cb9eca038fdaaaef108672d0bb0ed26...00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_fingerprint": "b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:7065268@sha256:b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8", + "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/7172cc22125f480a9f12127edb481a4d84aabea3...c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "previous_git_commit": "7172cc22125f480a9f12127edb481a4d84aabea3", + "previous_fingerprint": "f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:b8e5cbf@sha256:f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_trail_name": "nginx-b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8", - "previous_template_reference_name": "nginx" + "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/7172cc22125f480a9f12127edb481a4d84aabea3", + "previous_trail_name": "exercises-start-points-f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8", + "previous_template_reference_name": "exercises-start-points" }, - "commit_lead_time": 449388.0, + "commit_lead_time": 63806.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", - "template_reference_name": "nginx", - "git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "exercises-start-points-fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", + "template_reference_name": "exercises-start-points", + "git_commit": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071", "git_commit_info": { - "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.", + "sha1": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "message": "Replace attest-generic with attest-decision", "author": "JonJagger ", "branch": "main", - "timestamp": 1781594940.0, - "url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26" + "timestamp": 1782227560.0, + "url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb?artifact_id=f0d131e0-f1c2-43a0-82d7-c6174465", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58?artifact_id=c3b01365-40c6-48f5-80cb-e238da1e", + "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/00c479764cb9eca038fdaaaef108672d0bb0ed26...00c479764cb9eca038fdaaaef108672d0bb0ed26", + "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/00c479764cb9eca038fdaaaef108672d0bb0ed26...c17bb3ed8862de03c1a491dfe790fd8734fc7071", "previous_git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_fingerprint": "b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:7065268@sha256:b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8", + "previous_fingerprint": "f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:b8e5cbf@sha256:f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_trail_name": "nginx-b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8", - "previous_template_reference_name": "nginx" + "previous_trail_name": "exercises-start-points-f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8", + "previous_template_reference_name": "exercises-start-points" }, - "commit_lead_time": 449388.0, + "commit_lead_time": 63806.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] } ], "ecs_context": { - "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/dc3b8bed62bb400ab7f685a9bdf43384", + "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/0e2583c0f1dd43cba941fe7ceebcf0bd", "cluster_name": null, "service_name": null } }, { - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:fbae360@sha256:b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:9034c75@sha256:4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6", "compliant": true, "deployments": [], "policy_decisions": [ @@ -2523,24 +2523,24 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "saver-ci", - "trail_name": "fbae360261d949b25a66a927921e757d4d064543", + "flow_name": "creator-ci", + "trail_name": "9034c75cdb2846757cff32d24e1c5e91f40060a8", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", + "flow_name": "production-promotion", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "creator-4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6", "artifact_status": null } }, @@ -2548,7 +2548,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", + "trail_name": "creator-4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6", "artifact_status": null } } @@ -2568,24 +2568,24 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "saver-ci", - "trail_name": "fbae360261d949b25a66a927921e757d4d064543", + "flow_name": "creator-ci", + "trail_name": "9034c75cdb2846757cff32d24e1c5e91f40060a8", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", + "flow_name": "production-promotion", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "creator-4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6", "artifact_status": "COMPLIANT" } }, @@ -2593,7 +2593,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", + "trail_name": "creator-4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6", "artifact_status": "COMPLIANT" } } @@ -2618,24 +2618,24 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "saver-ci", - "trail_name": "fbae360261d949b25a66a927921e757d4d064543", + "flow_name": "creator-ci", + "trail_name": "9034c75cdb2846757cff32d24e1c5e91f40060a8", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", + "flow_name": "production-promotion", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "creator-4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6", "artifact_status": null } }, @@ -2643,7 +2643,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", + "trail_name": "creator-4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6", "artifact_status": null } } @@ -2670,24 +2670,24 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "saver-ci", - "trail_name": "fbae360261d949b25a66a927921e757d4d064543", + "flow_name": "creator-ci", + "trail_name": "9034c75cdb2846757cff32d24e1c5e91f40060a8", "artifact_status": null } }, { "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", + "flow_name": "production-promotion", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_satisfied", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "creator-4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6", "artifact_status": null } }, @@ -2695,7 +2695,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", + "trail_name": "creator-4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6", "artifact_status": null } } @@ -2715,24 +2715,24 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "saver-ci", - "trail_name": "fbae360261d949b25a66a927921e757d4d064543", + "flow_name": "creator-ci", + "trail_name": "9034c75cdb2846757cff32d24e1c5e91f40060a8", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", + "flow_name": "production-promotion", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "creator-4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6", "artifact_status": "COMPLIANT" } }, @@ -2740,7 +2740,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", + "trail_name": "creator-4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6", "artifact_status": "COMPLIANT" } } @@ -2750,7 +2750,7 @@ kosli get snapshot aws-prod --output=json "policy_name": "provenance" }, { - "policy_version": 2, + "policy_version": 3, "status": "COMPLIANT", "rule_evaluations": [ { @@ -2767,24 +2767,24 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "saver-ci", - "trail_name": "fbae360261d949b25a66a927921e757d4d064543", + "flow_name": "creator-ci", + "trail_name": "9034c75cdb2846757cff32d24e1c5e91f40060a8", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", + "flow_name": "production-promotion", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "creator-4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6", "artifact_status": null } }, @@ -2792,7 +2792,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", + "trail_name": "creator-4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6", "artifact_status": null } } @@ -2812,24 +2812,24 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "saver-ci", - "trail_name": "fbae360261d949b25a66a927921e757d4d064543", + "flow_name": "creator-ci", + "trail_name": "9034c75cdb2846757cff32d24e1c5e91f40060a8", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", + "flow_name": "production-promotion", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "creator-4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6", "artifact_status": "COMPLIANT" } }, @@ -2837,7 +2837,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", + "trail_name": "creator-4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6", "artifact_status": "COMPLIANT" } } @@ -2851,7 +2851,7 @@ kosli get snapshot aws-prod --output=json "text": "flow.name == \"snyk-aws-prod-per-artifact\"" }, "name": "snyk-container-scan", - "type": "generic", + "type": "decision", "must_be_compliant": true, "for_control": null } @@ -2862,24 +2862,24 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "saver-ci", - "trail_name": "fbae360261d949b25a66a927921e757d4d064543", + "flow_name": "creator-ci", + "trail_name": "9034c75cdb2846757cff32d24e1c5e91f40060a8", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", + "flow_name": "production-promotion", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "creator-4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6", "artifact_status": null } }, @@ -2887,7 +2887,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", + "trail_name": "creator-4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6", "artifact_status": null } } @@ -2897,7 +2897,7 @@ kosli get snapshot aws-prod --output=json "policy_name": "snyk-scan-aws-prod" }, { - "policy_version": 1, + "policy_version": 2, "status": "COMPLIANT", "rule_evaluations": [ { @@ -2914,24 +2914,24 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "saver-ci", - "trail_name": "fbae360261d949b25a66a927921e757d4d064543", + "flow_name": "creator-ci", + "trail_name": "9034c75cdb2846757cff32d24e1c5e91f40060a8", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", + "flow_name": "production-promotion", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "creator-4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6", "artifact_status": null } }, @@ -2939,7 +2939,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", + "trail_name": "creator-4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6", "artifact_status": null } } @@ -2959,24 +2959,24 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "saver-ci", - "trail_name": "fbae360261d949b25a66a927921e757d4d064543", + "flow_name": "creator-ci", + "trail_name": "9034c75cdb2846757cff32d24e1c5e91f40060a8", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", + "flow_name": "production-promotion", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "creator-4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6", "artifact_status": "COMPLIANT" } }, @@ -2984,7 +2984,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", + "trail_name": "creator-4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6", "artifact_status": "COMPLIANT" } } @@ -2998,7 +2998,7 @@ kosli get snapshot aws-prod --output=json "text": "flow.name == \"production-promotion\"" }, "name": "snyk-scan", - "type": "generic", + "type": "decision", "must_be_compliant": true, "for_control": null } @@ -3009,24 +3009,24 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "saver-ci", - "trail_name": "fbae360261d949b25a66a927921e757d4d064543", + "flow_name": "creator-ci", + "trail_name": "9034c75cdb2846757cff32d24e1c5e91f40060a8", "artifact_status": null } }, { - "type": "rule_not_applicable", + "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", + "flow_name": "production-promotion", + "trail_name": "promote-all-25", "artifact_status": null } }, { - "type": "rule_satisfied", + "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "creator-4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6", "artifact_status": null } }, @@ -3034,7 +3034,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", + "trail_name": "creator-4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6", "artifact_status": null } } @@ -3061,24 +3061,24 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "saver-ci", - "trail_name": "fbae360261d949b25a66a927921e757d4d064543", + "flow_name": "creator-ci", + "trail_name": "9034c75cdb2846757cff32d24e1c5e91f40060a8", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", + "flow_name": "production-promotion", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "creator-4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6", "artifact_status": null } }, @@ -3086,7 +3086,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", + "trail_name": "creator-4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6", "artifact_status": null } } @@ -3112,24 +3112,24 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "saver-ci", - "trail_name": "fbae360261d949b25a66a927921e757d4d064543", + "flow_name": "creator-ci", + "trail_name": "9034c75cdb2846757cff32d24e1c5e91f40060a8", "artifact_status": "COMPLIANT" } }, { - "type": "rule_not_applicable", + "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", + "flow_name": "production-promotion", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { - "type": "rule_satisfied", + "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "creator-4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6", "artifact_status": "COMPLIANT" } }, @@ -3137,7 +3137,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", + "trail_name": "creator-4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6", "artifact_status": "COMPLIANT" } } @@ -3148,9 +3148,9 @@ kosli get snapshot aws-prod --output=json } ], "reasons_for_incompliance": [], - "fingerprint": "b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", + "fingerprint": "4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6", "creationTimestamp": [ - 1781862763 + 1782291138 ], "pods": null, "annotation": { @@ -3158,157 +3158,157 @@ kosli get snapshot aws-prod --output=json "was": 1, "now": 1 }, - "flow_name": "saver-ci", - "git_commit": "fbae360261d949b25a66a927921e757d4d064543", - "commit_url": "https://github.com/cyber-dojo/saver/commit/fbae360261d949b25a66a927921e757d4d064543", - "html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci/artifacts/b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e?artifact_id=6df95847-0740-4e9e-8795-c960e47b", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci", + "flow_name": "creator-ci", + "git_commit": "9034c75cdb2846757cff32d24e1c5e91f40060a8", + "commit_url": "https://github.com/cyber-dojo/creator/commit/9034c75cdb2846757cff32d24e1c5e91f40060a8", + "html_url": "https://app.kosli.com/cyber-dojo/flows/creator-ci/artifacts/4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6?artifact_id=e8a01a2b-b310-4700-bd41-33c1c4f0", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/creator-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/saver/compare/8c84facc7fd6a663fe7d40a6b4aff8f13a94d600...fbae360261d949b25a66a927921e757d4d064543", - "previous_git_commit": "8c84facc7fd6a663fe7d40a6b4aff8f13a94d600", - "previous_fingerprint": "f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:8c84fac@sha256:f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419", + "diff_url": "https://github.com/cyber-dojo/creator/compare/34f14b6fc5d87ff95426046716ec8a09141c13a7...9034c75cdb2846757cff32d24e1c5e91f40060a8", + "previous_git_commit": "34f14b6fc5d87ff95426046716ec8a09141c13a7", + "previous_fingerprint": "f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:34f14b6@sha256:f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/saver/commit/8c84facc7fd6a663fe7d40a6b4aff8f13a94d600", - "previous_trail_name": "8c84facc7fd6a663fe7d40a6b4aff8f13a94d600", - "previous_template_reference_name": "saver" + "previous_git_commit_url": "https://github.com/cyber-dojo/creator/commit/34f14b6fc5d87ff95426046716ec8a09141c13a7", + "previous_trail_name": "34f14b6fc5d87ff95426046716ec8a09141c13a7", + "previous_template_reference_name": "creator" }, - "commit_lead_time": 65594.0, + "commit_lead_time": 65705.0, "flows": [ { - "flow_name": "saver-ci", - "trail_name": "fbae360261d949b25a66a927921e757d4d064543", - "template_reference_name": "saver", - "git_commit": "fbae360261d949b25a66a927921e757d4d064543", - "commit_url": "https://github.com/cyber-dojo/saver/commit/fbae360261d949b25a66a927921e757d4d064543", + "flow_name": "creator-ci", + "trail_name": "9034c75cdb2846757cff32d24e1c5e91f40060a8", + "template_reference_name": "creator", + "git_commit": "9034c75cdb2846757cff32d24e1c5e91f40060a8", + "commit_url": "https://github.com/cyber-dojo/creator/commit/9034c75cdb2846757cff32d24e1c5e91f40060a8", "git_commit_info": { - "sha1": "fbae360261d949b25a66a927921e757d4d064543", - "message": "Return 400, not 500, for well-formed but non-existent ids (#407)\n\nAPI endpoints that resolve an id raised a generic RuntimeError from the\n manifest read when the id was well-formed but referenced nothing on disk\n (eg kata_events for a non-existent kata-id). The global error handler maps\n that to HTTP 500, telling the client the server broke when in fact the\n request named something that does not exist.\n\n Wrap each resolver (kata_version, group, cluster_manifest) so a missing\n entity surfaces as a RequestError (HTTP 400), while genuine failures on an\n entity that does exist are re-raised unchanged rather than masked as\n \"does not exist\". cluster_hierarchy likewise now raises for an id matching\n no kata, group or cluster instead of returning an empty hierarchy.\n\n Co-Authored-By: Claude Opus 4.8 (1M context) ", + "sha1": "9034c75cdb2846757cff32d24e1c5e91f40060a8", + "message": "Merge pull request #25 from cyber-dojo/run-ci-workflow\n\nRun ci workflow to check attest-decision in snyk-scanning action", "author": "Jon Jagger ", "branch": "", - "timestamp": 1781797169.0, - "url": "https://github.com/cyber-dojo/saver/commit/fbae360261d949b25a66a927921e757d4d064543" + "timestamp": 1782225433.0, + "url": "https://github.com/cyber-dojo/creator/commit/9034c75cdb2846757cff32d24e1c5e91f40060a8" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci/artifacts/b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e?artifact_id=6df95847-0740-4e9e-8795-c960e47b", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci", + "html_url": "https://app.kosli.com/cyber-dojo/flows/creator-ci/artifacts/4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6?artifact_id=e8a01a2b-b310-4700-bd41-33c1c4f0", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/creator-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/saver/compare/8c84facc7fd6a663fe7d40a6b4aff8f13a94d600...fbae360261d949b25a66a927921e757d4d064543", - "previous_git_commit": "8c84facc7fd6a663fe7d40a6b4aff8f13a94d600", - "previous_fingerprint": "f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:8c84fac@sha256:f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419", + "diff_url": "https://github.com/cyber-dojo/creator/compare/34f14b6fc5d87ff95426046716ec8a09141c13a7...9034c75cdb2846757cff32d24e1c5e91f40060a8", + "previous_git_commit": "34f14b6fc5d87ff95426046716ec8a09141c13a7", + "previous_fingerprint": "f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:34f14b6@sha256:f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/saver/commit/8c84facc7fd6a663fe7d40a6b4aff8f13a94d600", - "previous_trail_name": "8c84facc7fd6a663fe7d40a6b4aff8f13a94d600", - "previous_template_reference_name": "saver" + "previous_git_commit_url": "https://github.com/cyber-dojo/creator/commit/34f14b6fc5d87ff95426046716ec8a09141c13a7", + "previous_trail_name": "34f14b6fc5d87ff95426046716ec8a09141c13a7", + "previous_template_reference_name": "creator" }, - "commit_lead_time": 65594.0, + "commit_lead_time": 65705.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", - "template_reference_name": "saver", - "git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", + "flow_name": "production-promotion", + "trail_name": "promote-all-25", + "template_reference_name": "creator", + "git_commit": "01dd4c6406d6655898ef2236875ec9f67091c792", + "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792", "git_commit_info": { - "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.", + "sha1": "01dd4c6406d6655898ef2236875ec9f67091c792", + "message": "Update comment and help text", "author": "JonJagger ", "branch": "main", - "timestamp": 1781594940.0, - "url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26" + "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/b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e?artifact_id=66dcf0c8-08c4-4f4f-ac7e-26ab9830", - "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/4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6?artifact_id=46e767c8-465c-4124-8925-742b71fb", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/7172cc22125f480a9f12127edb481a4d84aabea3...00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_git_commit": "7172cc22125f480a9f12127edb481a4d84aabea3", - "previous_fingerprint": "f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:8c84fac@sha256:f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419", + "diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/01dd4c6406d6655898ef2236875ec9f67091c792...01dd4c6406d6655898ef2236875ec9f67091c792", + "previous_git_commit": "01dd4c6406d6655898ef2236875ec9f67091c792", + "previous_fingerprint": "f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:34f14b6@sha256:f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/7172cc22125f480a9f12127edb481a4d84aabea3", - "previous_trail_name": "saver-f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419", - "previous_template_reference_name": "saver" + "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792", + "previous_trail_name": "promotion-one-69", + "previous_template_reference_name": "creator" }, - "commit_lead_time": 267823.0, + "commit_lead_time": 877624.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { - "flow_name": "production-promotion", - "trail_name": "promote-all-24", - "template_reference_name": "saver", - "git_commit": "01dd4c6406d6655898ef2236875ec9f67091c792", - "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "creator-4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6", + "template_reference_name": "creator", + "git_commit": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071", "git_commit_info": { - "sha1": "01dd4c6406d6655898ef2236875ec9f67091c792", - "message": "Update comment and help text", + "sha1": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "message": "Replace attest-generic with attest-decision", "author": "JonJagger ", "branch": "main", - "timestamp": 1781413514.0, - "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792" + "timestamp": 1782227560.0, + "url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e?artifact_id=bab84b72-7c27-435a-ad77-4f90c22e", - "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/4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6?artifact_id=eebfab9d-9ede-4b06-a3ed-58648ada", + "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/01dd4c6406d6655898ef2236875ec9f67091c792...01dd4c6406d6655898ef2236875ec9f67091c792", - "previous_git_commit": "01dd4c6406d6655898ef2236875ec9f67091c792", - "previous_fingerprint": "f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:8c84fac@sha256:f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419", + "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/7172cc22125f480a9f12127edb481a4d84aabea3...c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "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/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792", - "previous_trail_name": "promote-all-23", - "previous_template_reference_name": "saver" + "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": 449249.0, + "commit_lead_time": 63578.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", - "template_reference_name": "saver", - "git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", + "trail_name": "creator-4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6", + "template_reference_name": "creator", + "git_commit": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071", "git_commit_info": { - "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.", + "sha1": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "message": "Replace attest-generic with attest-decision", "author": "JonJagger ", "branch": "main", - "timestamp": 1781594940.0, - "url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26" + "timestamp": 1782227560.0, + "url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e?artifact_id=ab07088c-c1de-4957-8724-bfaa5fcc", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6?artifact_id=5bc1d3d5-7f4a-45ef-b35a-592b86e6", "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/00c479764cb9eca038fdaaaef108672d0bb0ed26...00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_fingerprint": "f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:8c84fac@sha256:f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419", + "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/7172cc22125f480a9f12127edb481a4d84aabea3...c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "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/00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_trail_name": "saver-f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419", - "previous_template_reference_name": "saver" + "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": 267823.0, + "commit_lead_time": 63578.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] } ], "ecs_context": { - "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/b24c7b8c777b453392bc921a6cc21139", + "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/14846a44ca68486da3530516d8b3842d", "cluster_name": null, "service_name": null } }, { - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:11fb356@sha256:df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:33b1b15@sha256:c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3", "compliant": true, "deployments": [], "policy_decisions": [ @@ -3330,8 +3330,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "11fb35642d6c79603c1979f01d4fae7c1f7f0ce1", + "flow_name": "nginx-ci", + "trail_name": "33b1b15247724eee83ab795f3d586b4eac93b456", "artifact_status": null } }, @@ -3339,7 +3339,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, @@ -3347,7 +3347,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "exercises-start-points-df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", + "trail_name": "nginx-c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3", "artifact_status": null } }, @@ -3355,7 +3355,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-df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", + "trail_name": "nginx-c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3", "artifact_status": null } } @@ -3375,8 +3375,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "11fb35642d6c79603c1979f01d4fae7c1f7f0ce1", + "flow_name": "nginx-ci", + "trail_name": "33b1b15247724eee83ab795f3d586b4eac93b456", "artifact_status": "COMPLIANT" } }, @@ -3384,7 +3384,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, @@ -3392,7 +3392,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "exercises-start-points-df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", + "trail_name": "nginx-c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3", "artifact_status": "COMPLIANT" } }, @@ -3400,7 +3400,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-df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", + "trail_name": "nginx-c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3", "artifact_status": "COMPLIANT" } } @@ -3425,8 +3425,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "11fb35642d6c79603c1979f01d4fae7c1f7f0ce1", + "flow_name": "nginx-ci", + "trail_name": "33b1b15247724eee83ab795f3d586b4eac93b456", "artifact_status": null } }, @@ -3434,7 +3434,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, @@ -3442,7 +3442,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "exercises-start-points-df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", + "trail_name": "nginx-c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3", "artifact_status": null } }, @@ -3450,7 +3450,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-df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", + "trail_name": "nginx-c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3", "artifact_status": null } } @@ -3477,8 +3477,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "11fb35642d6c79603c1979f01d4fae7c1f7f0ce1", + "flow_name": "nginx-ci", + "trail_name": "33b1b15247724eee83ab795f3d586b4eac93b456", "artifact_status": null } }, @@ -3486,7 +3486,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, @@ -3494,7 +3494,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "exercises-start-points-df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", + "trail_name": "nginx-c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3", "artifact_status": null } }, @@ -3502,7 +3502,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "exercises-start-points-df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", + "trail_name": "nginx-c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3", "artifact_status": null } } @@ -3522,8 +3522,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "11fb35642d6c79603c1979f01d4fae7c1f7f0ce1", + "flow_name": "nginx-ci", + "trail_name": "33b1b15247724eee83ab795f3d586b4eac93b456", "artifact_status": "COMPLIANT" } }, @@ -3531,7 +3531,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, @@ -3539,7 +3539,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "exercises-start-points-df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", + "trail_name": "nginx-c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3", "artifact_status": "COMPLIANT" } }, @@ -3547,7 +3547,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-df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", + "trail_name": "nginx-c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3", "artifact_status": "COMPLIANT" } } @@ -3557,7 +3557,7 @@ kosli get snapshot aws-prod --output=json "policy_name": "provenance" }, { - "policy_version": 2, + "policy_version": 3, "status": "COMPLIANT", "rule_evaluations": [ { @@ -3574,8 +3574,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "11fb35642d6c79603c1979f01d4fae7c1f7f0ce1", + "flow_name": "nginx-ci", + "trail_name": "33b1b15247724eee83ab795f3d586b4eac93b456", "artifact_status": null } }, @@ -3583,7 +3583,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, @@ -3591,7 +3591,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "exercises-start-points-df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", + "trail_name": "nginx-c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3", "artifact_status": null } }, @@ -3599,7 +3599,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-df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", + "trail_name": "nginx-c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3", "artifact_status": null } } @@ -3619,8 +3619,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "11fb35642d6c79603c1979f01d4fae7c1f7f0ce1", + "flow_name": "nginx-ci", + "trail_name": "33b1b15247724eee83ab795f3d586b4eac93b456", "artifact_status": "COMPLIANT" } }, @@ -3628,7 +3628,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, @@ -3636,7 +3636,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "exercises-start-points-df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", + "trail_name": "nginx-c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3", "artifact_status": "COMPLIANT" } }, @@ -3644,7 +3644,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-df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", + "trail_name": "nginx-c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3", "artifact_status": "COMPLIANT" } } @@ -3658,7 +3658,7 @@ kosli get snapshot aws-prod --output=json "text": "flow.name == \"snyk-aws-prod-per-artifact\"" }, "name": "snyk-container-scan", - "type": "generic", + "type": "decision", "must_be_compliant": true, "for_control": null } @@ -3669,8 +3669,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "11fb35642d6c79603c1979f01d4fae7c1f7f0ce1", + "flow_name": "nginx-ci", + "trail_name": "33b1b15247724eee83ab795f3d586b4eac93b456", "artifact_status": null } }, @@ -3678,7 +3678,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, @@ -3686,7 +3686,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "exercises-start-points-df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", + "trail_name": "nginx-c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3", "artifact_status": null } }, @@ -3694,7 +3694,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "exercises-start-points-df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", + "trail_name": "nginx-c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3", "artifact_status": null } } @@ -3704,7 +3704,7 @@ kosli get snapshot aws-prod --output=json "policy_name": "snyk-scan-aws-prod" }, { - "policy_version": 1, + "policy_version": 2, "status": "COMPLIANT", "rule_evaluations": [ { @@ -3721,8 +3721,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "11fb35642d6c79603c1979f01d4fae7c1f7f0ce1", + "flow_name": "nginx-ci", + "trail_name": "33b1b15247724eee83ab795f3d586b4eac93b456", "artifact_status": null } }, @@ -3730,7 +3730,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, @@ -3738,7 +3738,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "exercises-start-points-df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", + "trail_name": "nginx-c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3", "artifact_status": null } }, @@ -3746,7 +3746,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-df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", + "trail_name": "nginx-c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3", "artifact_status": null } } @@ -3766,8 +3766,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "11fb35642d6c79603c1979f01d4fae7c1f7f0ce1", + "flow_name": "nginx-ci", + "trail_name": "33b1b15247724eee83ab795f3d586b4eac93b456", "artifact_status": "COMPLIANT" } }, @@ -3775,7 +3775,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, @@ -3783,7 +3783,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "exercises-start-points-df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", + "trail_name": "nginx-c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3", "artifact_status": "COMPLIANT" } }, @@ -3791,7 +3791,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-df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", + "trail_name": "nginx-c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3", "artifact_status": "COMPLIANT" } } @@ -3805,7 +3805,7 @@ kosli get snapshot aws-prod --output=json "text": "flow.name == \"production-promotion\"" }, "name": "snyk-scan", - "type": "generic", + "type": "decision", "must_be_compliant": true, "for_control": null } @@ -3816,8 +3816,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "11fb35642d6c79603c1979f01d4fae7c1f7f0ce1", + "flow_name": "nginx-ci", + "trail_name": "33b1b15247724eee83ab795f3d586b4eac93b456", "artifact_status": null } }, @@ -3825,7 +3825,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, @@ -3833,7 +3833,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "exercises-start-points-df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", + "trail_name": "nginx-c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3", "artifact_status": null } }, @@ -3841,7 +3841,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-df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", + "trail_name": "nginx-c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3", "artifact_status": null } } @@ -3868,8 +3868,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "11fb35642d6c79603c1979f01d4fae7c1f7f0ce1", + "flow_name": "nginx-ci", + "trail_name": "33b1b15247724eee83ab795f3d586b4eac93b456", "artifact_status": null } }, @@ -3877,7 +3877,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, @@ -3885,7 +3885,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "exercises-start-points-df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", + "trail_name": "nginx-c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3", "artifact_status": null } }, @@ -3893,7 +3893,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-df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", + "trail_name": "nginx-c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3", "artifact_status": null } } @@ -3919,8 +3919,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "11fb35642d6c79603c1979f01d4fae7c1f7f0ce1", + "flow_name": "nginx-ci", + "trail_name": "33b1b15247724eee83ab795f3d586b4eac93b456", "artifact_status": "COMPLIANT" } }, @@ -3928,7 +3928,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, @@ -3936,7 +3936,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "exercises-start-points-df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", + "trail_name": "nginx-c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3", "artifact_status": "COMPLIANT" } }, @@ -3944,7 +3944,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "exercises-start-points-df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", + "trail_name": "nginx-c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3", "artifact_status": "COMPLIANT" } } @@ -3955,9 +3955,9 @@ kosli get snapshot aws-prod --output=json } ], "reasons_for_incompliance": [], - "fingerprint": "df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", + "fingerprint": "c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3", "creationTimestamp": [ - 1781862518 + 1782291127 ], "pods": null, "annotation": { @@ -3965,59 +3965,59 @@ kosli get snapshot aws-prod --output=json "was": 1, "now": 1 }, - "flow_name": "exercises-start-points-ci", - "git_commit": "11fb35642d6c79603c1979f01d4fae7c1f7f0ce1", - "commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/11fb35642d6c79603c1979f01d4fae7c1f7f0ce1", - "html_url": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci/artifacts/df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443?artifact_id=6e7dfa64-c5c1-4a47-98f2-5e61c7b4", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci", + "flow_name": "nginx-ci", + "git_commit": "33b1b15247724eee83ab795f3d586b4eac93b456", + "commit_url": "https://github.com/cyber-dojo/nginx/commit/33b1b15247724eee83ab795f3d586b4eac93b456", + "html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci/artifacts/c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3?artifact_id=a6329b0b-72c5-43cd-a27a-e2f52c79", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/exercises-start-points/compare/b8e5cbf56e7fc03becdeee6a1d493c0231fa2d0d...11fb35642d6c79603c1979f01d4fae7c1f7f0ce1", - "previous_git_commit": "b8e5cbf56e7fc03becdeee6a1d493c0231fa2d0d", - "previous_fingerprint": "f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:b8e5cbf@sha256:f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8", + "diff_url": "https://github.com/cyber-dojo/nginx/compare/635027125d65a253a9c98bfd97d22cb3abbefa5a...33b1b15247724eee83ab795f3d586b4eac93b456", + "previous_git_commit": "635027125d65a253a9c98bfd97d22cb3abbefa5a", + "previous_fingerprint": "d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:6350271@sha256:d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/b8e5cbf56e7fc03becdeee6a1d493c0231fa2d0d", - "previous_trail_name": "b8e5cbf56e7fc03becdeee6a1d493c0231fa2d0d", - "previous_template_reference_name": "exercises-start-points" + "previous_git_commit_url": "https://github.com/cyber-dojo/nginx/commit/635027125d65a253a9c98bfd97d22cb3abbefa5a", + "previous_trail_name": "635027125d65a253a9c98bfd97d22cb3abbefa5a", + "previous_template_reference_name": "nginx" }, - "commit_lead_time": 914.0, + "commit_lead_time": 61533.0, "flows": [ { - "flow_name": "exercises-start-points-ci", - "trail_name": "11fb35642d6c79603c1979f01d4fae7c1f7f0ce1", - "template_reference_name": "exercises-start-points", - "git_commit": "11fb35642d6c79603c1979f01d4fae7c1f7f0ce1", - "commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/11fb35642d6c79603c1979f01d4fae7c1f7f0ce1", + "flow_name": "nginx-ci", + "trail_name": "33b1b15247724eee83ab795f3d586b4eac93b456", + "template_reference_name": "nginx", + "git_commit": "33b1b15247724eee83ab795f3d586b4eac93b456", + "commit_url": "https://github.com/cyber-dojo/nginx/commit/33b1b15247724eee83ab795f3d586b4eac93b456", "git_commit_info": { - "sha1": "11fb35642d6c79603c1979f01d4fae7c1f7f0ce1", - "message": "Merge pull request #130 from cyber-dojo/update-base-image-53f1afd\n\nMerge update-base-image into main", + "sha1": "33b1b15247724eee83ab795f3d586b4eac93b456", + "message": "Merge pull request #134 from cyber-dojo/replace-attest-generic-with-attest-decision\n\nReplace attest-generic with attest-decision for snyk", "author": "Jon Jagger ", - "branch": "main", - "timestamp": 1781861604.0, - "url": "https://github.com/cyber-dojo/exercises-start-points/commit/11fb35642d6c79603c1979f01d4fae7c1f7f0ce1" + "branch": "", + "timestamp": 1782229594.0, + "url": "https://github.com/cyber-dojo/nginx/commit/33b1b15247724eee83ab795f3d586b4eac93b456" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci/artifacts/df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443?artifact_id=6e7dfa64-c5c1-4a47-98f2-5e61c7b4", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci", + "html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci/artifacts/c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3?artifact_id=a6329b0b-72c5-43cd-a27a-e2f52c79", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/exercises-start-points/compare/b8e5cbf56e7fc03becdeee6a1d493c0231fa2d0d...11fb35642d6c79603c1979f01d4fae7c1f7f0ce1", - "previous_git_commit": "b8e5cbf56e7fc03becdeee6a1d493c0231fa2d0d", - "previous_fingerprint": "f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:b8e5cbf@sha256:f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8", + "diff_url": "https://github.com/cyber-dojo/nginx/compare/635027125d65a253a9c98bfd97d22cb3abbefa5a...33b1b15247724eee83ab795f3d586b4eac93b456", + "previous_git_commit": "635027125d65a253a9c98bfd97d22cb3abbefa5a", + "previous_fingerprint": "d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:6350271@sha256:d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/b8e5cbf56e7fc03becdeee6a1d493c0231fa2d0d", - "previous_trail_name": "b8e5cbf56e7fc03becdeee6a1d493c0231fa2d0d", - "previous_template_reference_name": "exercises-start-points" + "previous_git_commit_url": "https://github.com/cyber-dojo/nginx/commit/635027125d65a253a9c98bfd97d22cb3abbefa5a", + "previous_trail_name": "635027125d65a253a9c98bfd97d22cb3abbefa5a", + "previous_template_reference_name": "nginx" }, - "commit_lead_time": 914.0, + "commit_lead_time": 61533.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "production-promotion", - "trail_name": "promote-all-24", - "template_reference_name": "exercises-start-points", + "trail_name": "promote-all-25", + "template_reference_name": "nginx", "git_commit": "01dd4c6406d6655898ef2236875ec9f67091c792", "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792", "git_commit_info": { @@ -4028,94 +4028,94 @@ kosli get snapshot aws-prod --output=json "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/df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443?artifact_id=574003bb-90c9-4dcf-9e2f-52f891f8", + "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3?artifact_id=99ca1415-f539-4183-a2fe-fb88ed6a", "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/01dd4c6406d6655898ef2236875ec9f67091c792...01dd4c6406d6655898ef2236875ec9f67091c792", "previous_git_commit": "01dd4c6406d6655898ef2236875ec9f67091c792", - "previous_fingerprint": "f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:b8e5cbf@sha256:f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8", + "previous_fingerprint": "d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:6350271@sha256:d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792", - "previous_trail_name": "promote-all-23", - "previous_template_reference_name": "exercises-start-points" + "previous_trail_name": "promotion-one-70", + "previous_template_reference_name": "nginx" }, - "commit_lead_time": 449004.0, + "commit_lead_time": 877613.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "exercises-start-points-df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", - "template_reference_name": "exercises-start-points", - "git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", + "trail_name": "nginx-c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3", + "template_reference_name": "nginx", + "git_commit": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071", "git_commit_info": { - "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.", + "sha1": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "message": "Replace attest-generic with attest-decision", "author": "JonJagger ", "branch": "main", - "timestamp": 1781594940.0, - "url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26" + "timestamp": 1782227560.0, + "url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443?artifact_id=084a0048-dc69-4fcf-a4ca-0716f2f4", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3?artifact_id=57fb8717-1db8-4b14-bf91-6982c478", "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/7172cc22125f480a9f12127edb481a4d84aabea3...00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_git_commit": "7172cc22125f480a9f12127edb481a4d84aabea3", - "previous_fingerprint": "f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:b8e5cbf@sha256:f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8", + "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/00c479764cb9eca038fdaaaef108672d0bb0ed26...c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "previous_git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", + "previous_fingerprint": "b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:7065268@sha256:b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/7172cc22125f480a9f12127edb481a4d84aabea3", - "previous_trail_name": "exercises-start-points-f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8", - "previous_template_reference_name": "exercises-start-points" + "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", + "previous_trail_name": "nginx-b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8", + "previous_template_reference_name": "nginx" }, - "commit_lead_time": 267578.0, + "commit_lead_time": 63567.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "exercises-start-points-df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", - "template_reference_name": "exercises-start-points", - "git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", + "trail_name": "nginx-c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3", + "template_reference_name": "nginx", + "git_commit": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071", "git_commit_info": { - "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.", + "sha1": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "message": "Replace attest-generic with attest-decision", "author": "JonJagger ", "branch": "main", - "timestamp": 1781594940.0, - "url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26" + "timestamp": 1782227560.0, + "url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443?artifact_id=09edc26f-61dd-4d1b-b68f-fefdbb5c", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3?artifact_id=b0ac2637-bc49-4ead-8cdd-dba828b2", "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/00c479764cb9eca038fdaaaef108672d0bb0ed26...00c479764cb9eca038fdaaaef108672d0bb0ed26", + "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/00c479764cb9eca038fdaaaef108672d0bb0ed26...c17bb3ed8862de03c1a491dfe790fd8734fc7071", "previous_git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_fingerprint": "f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:b8e5cbf@sha256:f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8", + "previous_fingerprint": "b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:7065268@sha256:b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_trail_name": "exercises-start-points-f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8", - "previous_template_reference_name": "exercises-start-points" + "previous_trail_name": "nginx-b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8", + "previous_template_reference_name": "nginx" }, - "commit_lead_time": 267578.0, + "commit_lead_time": 63567.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] } ], "ecs_context": { - "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/a0d43249cd4f46a89427d9bcb84227ef", + "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/52f3b55614024e678d09d466e8285e04", "cluster_name": null, "service_name": null } }, { - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:ff89dd9@sha256:c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:bb8a712@sha256:5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", "compliant": true, "deployments": [], "policy_decisions": [ @@ -4137,8 +4137,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "dashboard-ci", - "trail_name": "ff89dd9bd1bfc5441854450adcf25d5aad9508f4", + "flow_name": "languages-start-points-ci", + "trail_name": "bb8a712de74f2fe3edf48169ca072d4eff997564", "artifact_status": null } }, @@ -4146,23 +4146,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "languages-start-points-5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "languages-start-points-5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", "artifact_status": null } } @@ -4182,8 +4182,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "dashboard-ci", - "trail_name": "ff89dd9bd1bfc5441854450adcf25d5aad9508f4", + "flow_name": "languages-start-points-ci", + "trail_name": "bb8a712de74f2fe3edf48169ca072d4eff997564", "artifact_status": "COMPLIANT" } }, @@ -4191,23 +4191,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "languages-start-points-5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "languages-start-points-5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", "artifact_status": "COMPLIANT" } } @@ -4232,8 +4232,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "dashboard-ci", - "trail_name": "ff89dd9bd1bfc5441854450adcf25d5aad9508f4", + "flow_name": "languages-start-points-ci", + "trail_name": "bb8a712de74f2fe3edf48169ca072d4eff997564", "artifact_status": null } }, @@ -4241,23 +4241,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "languages-start-points-5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "languages-start-points-5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", "artifact_status": null } } @@ -4284,8 +4284,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "dashboard-ci", - "trail_name": "ff89dd9bd1bfc5441854450adcf25d5aad9508f4", + "flow_name": "languages-start-points-ci", + "trail_name": "bb8a712de74f2fe3edf48169ca072d4eff997564", "artifact_status": null } }, @@ -4293,23 +4293,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "languages-start-points-5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", "artifact_status": null } }, { "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "languages-start-points-5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", "artifact_status": null } } @@ -4329,8 +4329,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "dashboard-ci", - "trail_name": "ff89dd9bd1bfc5441854450adcf25d5aad9508f4", + "flow_name": "languages-start-points-ci", + "trail_name": "bb8a712de74f2fe3edf48169ca072d4eff997564", "artifact_status": "COMPLIANT" } }, @@ -4338,23 +4338,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "languages-start-points-5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "languages-start-points-5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", "artifact_status": "COMPLIANT" } } @@ -4364,7 +4364,7 @@ kosli get snapshot aws-prod --output=json "policy_name": "provenance" }, { - "policy_version": 2, + "policy_version": 3, "status": "COMPLIANT", "rule_evaluations": [ { @@ -4381,8 +4381,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "dashboard-ci", - "trail_name": "ff89dd9bd1bfc5441854450adcf25d5aad9508f4", + "flow_name": "languages-start-points-ci", + "trail_name": "bb8a712de74f2fe3edf48169ca072d4eff997564", "artifact_status": null } }, @@ -4390,23 +4390,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "languages-start-points-5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "languages-start-points-5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", "artifact_status": null } } @@ -4426,8 +4426,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "dashboard-ci", - "trail_name": "ff89dd9bd1bfc5441854450adcf25d5aad9508f4", + "flow_name": "languages-start-points-ci", + "trail_name": "bb8a712de74f2fe3edf48169ca072d4eff997564", "artifact_status": "COMPLIANT" } }, @@ -4435,23 +4435,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "languages-start-points-5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "languages-start-points-5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", "artifact_status": "COMPLIANT" } } @@ -4465,7 +4465,7 @@ kosli get snapshot aws-prod --output=json "text": "flow.name == \"snyk-aws-prod-per-artifact\"" }, "name": "snyk-container-scan", - "type": "generic", + "type": "decision", "must_be_compliant": true, "for_control": null } @@ -4476,8 +4476,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "dashboard-ci", - "trail_name": "ff89dd9bd1bfc5441854450adcf25d5aad9508f4", + "flow_name": "languages-start-points-ci", + "trail_name": "bb8a712de74f2fe3edf48169ca072d4eff997564", "artifact_status": null } }, @@ -4485,23 +4485,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, { - "type": "rule_satisfied", + "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "languages-start-points-5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", "artifact_status": null } }, { - "type": "rule_not_applicable", + "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "languages-start-points-5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", "artifact_status": null } } @@ -4511,7 +4511,7 @@ kosli get snapshot aws-prod --output=json "policy_name": "snyk-scan-aws-prod" }, { - "policy_version": 1, + "policy_version": 2, "status": "COMPLIANT", "rule_evaluations": [ { @@ -4528,8 +4528,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "dashboard-ci", - "trail_name": "ff89dd9bd1bfc5441854450adcf25d5aad9508f4", + "flow_name": "languages-start-points-ci", + "trail_name": "bb8a712de74f2fe3edf48169ca072d4eff997564", "artifact_status": null } }, @@ -4537,23 +4537,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "languages-start-points-5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "languages-start-points-5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", "artifact_status": null } } @@ -4573,8 +4573,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "dashboard-ci", - "trail_name": "ff89dd9bd1bfc5441854450adcf25d5aad9508f4", + "flow_name": "languages-start-points-ci", + "trail_name": "bb8a712de74f2fe3edf48169ca072d4eff997564", "artifact_status": "COMPLIANT" } }, @@ -4582,23 +4582,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "languages-start-points-5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "languages-start-points-5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", "artifact_status": "COMPLIANT" } } @@ -4612,7 +4612,7 @@ kosli get snapshot aws-prod --output=json "text": "flow.name == \"production-promotion\"" }, "name": "snyk-scan", - "type": "generic", + "type": "decision", "must_be_compliant": true, "for_control": null } @@ -4623,8 +4623,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "dashboard-ci", - "trail_name": "ff89dd9bd1bfc5441854450adcf25d5aad9508f4", + "flow_name": "languages-start-points-ci", + "trail_name": "bb8a712de74f2fe3edf48169ca072d4eff997564", "artifact_status": null } }, @@ -4632,23 +4632,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "languages-start-points-5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "languages-start-points-5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", "artifact_status": null } } @@ -4675,8 +4675,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "dashboard-ci", - "trail_name": "ff89dd9bd1bfc5441854450adcf25d5aad9508f4", + "flow_name": "languages-start-points-ci", + "trail_name": "bb8a712de74f2fe3edf48169ca072d4eff997564", "artifact_status": null } }, @@ -4684,23 +4684,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "languages-start-points-5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "languages-start-points-5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", "artifact_status": null } } @@ -4726,8 +4726,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "dashboard-ci", - "trail_name": "ff89dd9bd1bfc5441854450adcf25d5aad9508f4", + "flow_name": "languages-start-points-ci", + "trail_name": "bb8a712de74f2fe3edf48169ca072d4eff997564", "artifact_status": "COMPLIANT" } }, @@ -4735,23 +4735,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { - "type": "rule_satisfied", + "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "languages-start-points-5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", "artifact_status": "COMPLIANT" } }, { - "type": "rule_not_applicable", + "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "languages-start-points-5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", "artifact_status": "COMPLIANT" } } @@ -4762,9 +4762,9 @@ kosli get snapshot aws-prod --output=json } ], "reasons_for_incompliance": [], - "fingerprint": "c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", + "fingerprint": "5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", "creationTimestamp": [ - 1781862505 + 1782291119 ], "pods": null, "annotation": { @@ -4772,59 +4772,59 @@ kosli get snapshot aws-prod --output=json "was": 1, "now": 1 }, - "flow_name": "dashboard-ci", - "git_commit": "ff89dd9bd1bfc5441854450adcf25d5aad9508f4", - "commit_url": "https://github.com/cyber-dojo/dashboard/commit/ff89dd9bd1bfc5441854450adcf25d5aad9508f4", - "html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci/artifacts/c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db?artifact_id=ff697a42-4717-4727-b9de-e3d77870", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci", + "flow_name": "languages-start-points-ci", + "git_commit": "bb8a712de74f2fe3edf48169ca072d4eff997564", + "commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/bb8a712de74f2fe3edf48169ca072d4eff997564", + "html_url": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci/artifacts/5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38?artifact_id=531ae2f0-0b5f-44b9-8253-159ba612", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/dashboard/compare/87f560f87fb2bc242ee5c58d74d0e209d71cd338...ff89dd9bd1bfc5441854450adcf25d5aad9508f4", - "previous_git_commit": "87f560f87fb2bc242ee5c58d74d0e209d71cd338", - "previous_fingerprint": "45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:87f560f@sha256:45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c", + "diff_url": "https://github.com/cyber-dojo/languages-start-points/compare/7eeaac4c57e26887e4d027aa3c815bc2f214f934...bb8a712de74f2fe3edf48169ca072d4eff997564", + "previous_git_commit": "7eeaac4c57e26887e4d027aa3c815bc2f214f934", + "previous_fingerprint": "7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:7eeaac4@sha256:7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/dashboard/commit/87f560f87fb2bc242ee5c58d74d0e209d71cd338", - "previous_trail_name": "87f560f87fb2bc242ee5c58d74d0e209d71cd338", - "previous_template_reference_name": "dashboard" + "previous_git_commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/7eeaac4c57e26887e4d027aa3c815bc2f214f934", + "previous_trail_name": "7eeaac4c57e26887e4d027aa3c815bc2f214f934", + "previous_template_reference_name": "languages-start-points" }, - "commit_lead_time": 426682.0, + "commit_lead_time": 61026.0, "flows": [ { - "flow_name": "dashboard-ci", - "trail_name": "ff89dd9bd1bfc5441854450adcf25d5aad9508f4", - "template_reference_name": "dashboard", - "git_commit": "ff89dd9bd1bfc5441854450adcf25d5aad9508f4", - "commit_url": "https://github.com/cyber-dojo/dashboard/commit/ff89dd9bd1bfc5441854450adcf25d5aad9508f4", + "flow_name": "languages-start-points-ci", + "trail_name": "bb8a712de74f2fe3edf48169ca072d4eff997564", + "template_reference_name": "languages-start-points", + "git_commit": "bb8a712de74f2fe3edf48169ca072d4eff997564", + "commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/bb8a712de74f2fe3edf48169ca072d4eff997564", "git_commit_info": { - "sha1": "ff89dd9bd1bfc5441854450adcf25d5aad9508f4", - "message": "Dockerfile - Automated base-image update (#391)\n\nCo-authored-by: JonJagger ", + "sha1": "bb8a712de74f2fe3edf48169ca072d4eff997564", + "message": "Merge pull request #227 from cyber-dojo/replace-attest-generic-with-attest-decision\n\nReplace attest-generic with attest-decision for snyk", "author": "Jon Jagger ", - "branch": "", - "timestamp": 1781435823.0, - "url": "https://github.com/cyber-dojo/dashboard/commit/ff89dd9bd1bfc5441854450adcf25d5aad9508f4" + "branch": "main", + "timestamp": 1782230093.0, + "url": "https://github.com/cyber-dojo/languages-start-points/commit/bb8a712de74f2fe3edf48169ca072d4eff997564" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci/artifacts/c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db?artifact_id=ff697a42-4717-4727-b9de-e3d77870", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci", + "html_url": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci/artifacts/5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38?artifact_id=531ae2f0-0b5f-44b9-8253-159ba612", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/dashboard/compare/87f560f87fb2bc242ee5c58d74d0e209d71cd338...ff89dd9bd1bfc5441854450adcf25d5aad9508f4", - "previous_git_commit": "87f560f87fb2bc242ee5c58d74d0e209d71cd338", - "previous_fingerprint": "45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:87f560f@sha256:45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c", + "diff_url": "https://github.com/cyber-dojo/languages-start-points/compare/7eeaac4c57e26887e4d027aa3c815bc2f214f934...bb8a712de74f2fe3edf48169ca072d4eff997564", + "previous_git_commit": "7eeaac4c57e26887e4d027aa3c815bc2f214f934", + "previous_fingerprint": "7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:7eeaac4@sha256:7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/dashboard/commit/87f560f87fb2bc242ee5c58d74d0e209d71cd338", - "previous_trail_name": "87f560f87fb2bc242ee5c58d74d0e209d71cd338", - "previous_template_reference_name": "dashboard" + "previous_git_commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/7eeaac4c57e26887e4d027aa3c815bc2f214f934", + "previous_trail_name": "7eeaac4c57e26887e4d027aa3c815bc2f214f934", + "previous_template_reference_name": "languages-start-points" }, - "commit_lead_time": 426682.0, + "commit_lead_time": 61026.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "production-promotion", - "trail_name": "promote-all-24", - "template_reference_name": "dashboard", + "trail_name": "promote-all-25", + "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": { @@ -4835,94 +4835,94 @@ kosli get snapshot aws-prod --output=json "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/c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db?artifact_id=3407e8f9-e4f6-4c87-aed0-f2016d77", + "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38?artifact_id=c391c24e-576b-467a-a2cf-470614f7", "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/01dd4c6406d6655898ef2236875ec9f67091c792...01dd4c6406d6655898ef2236875ec9f67091c792", "previous_git_commit": "01dd4c6406d6655898ef2236875ec9f67091c792", - "previous_fingerprint": "45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:87f560f@sha256:45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c", + "previous_fingerprint": "7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:7eeaac4@sha256:7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792", - "previous_trail_name": "promote-all-23", - "previous_template_reference_name": "dashboard" + "previous_trail_name": "promotion-one-73", + "previous_template_reference_name": "languages-start-points" }, - "commit_lead_time": 448991.0, + "commit_lead_time": 877605.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", - "template_reference_name": "dashboard", - "git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "languages-start-points-5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", + "template_reference_name": "languages-start-points", + "git_commit": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071", "git_commit_info": { - "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.", + "sha1": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "message": "Replace attest-generic with attest-decision", "author": "JonJagger ", "branch": "main", - "timestamp": 1781594940.0, - "url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26" + "timestamp": 1782227560.0, + "url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db?artifact_id=331e2889-c6fc-4cca-9085-4c9a19c6", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38?artifact_id=847032ad-ebf4-4b4b-9df7-23f03a92", + "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/00c479764cb9eca038fdaaaef108672d0bb0ed26...00c479764cb9eca038fdaaaef108672d0bb0ed26", + "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/00c479764cb9eca038fdaaaef108672d0bb0ed26...c17bb3ed8862de03c1a491dfe790fd8734fc7071", "previous_git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_fingerprint": "45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:87f560f@sha256:45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c", + "previous_fingerprint": "7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:7eeaac4@sha256:7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_trail_name": "dashboard-45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c", - "previous_template_reference_name": "dashboard" + "previous_trail_name": "languages-start-points-7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", + "previous_template_reference_name": "languages-start-points" }, - "commit_lead_time": 267565.0, + "commit_lead_time": 63559.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", - "template_reference_name": "dashboard", - "git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "languages-start-points-5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", + "template_reference_name": "languages-start-points", + "git_commit": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071", "git_commit_info": { - "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.", + "sha1": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "message": "Replace attest-generic with attest-decision", "author": "JonJagger ", "branch": "main", - "timestamp": 1781594940.0, - "url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26" + "timestamp": 1782227560.0, + "url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db?artifact_id=aab6f196-2ba5-4c38-a712-635841dd", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38?artifact_id=32be2251-bb7b-41f2-8045-7630c4cb", + "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/7172cc22125f480a9f12127edb481a4d84aabea3...00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_git_commit": "7172cc22125f480a9f12127edb481a4d84aabea3", - "previous_fingerprint": "45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:87f560f@sha256:45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c", + "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/00c479764cb9eca038fdaaaef108672d0bb0ed26...c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "previous_git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", + "previous_fingerprint": "b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:7e86fed@sha256:b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/7172cc22125f480a9f12127edb481a4d84aabea3", - "previous_trail_name": "dashboard-45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c", - "previous_template_reference_name": "dashboard" + "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", + "previous_trail_name": "languages-start-points-b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676", + "previous_template_reference_name": "languages-start-points" }, - "commit_lead_time": 267565.0, + "commit_lead_time": 63559.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] } ], "ecs_context": { - "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/f52f52698da74760bc5c8f5590180956", + "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/5b89008a421147b3ac8d2b1638a027b8", "cluster_name": null, "service_name": null } }, { - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:843d655@sha256:58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:a35d092@sha256:5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e", "compliant": true, "deployments": [], "policy_decisions": [ @@ -4944,8 +4944,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "custom-start-points-ci", - "trail_name": "843d6556ec718da1a1f51ce906c8c5bd6366d691", + "flow_name": "saver-ci", + "trail_name": "a35d09232116daff39d0f939cb133edc5750e2a1", "artifact_status": null } }, @@ -4953,7 +4953,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, @@ -4961,7 +4961,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "custom-start-points-58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", + "trail_name": "saver-5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e", "artifact_status": null } }, @@ -4969,7 +4969,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-58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", + "trail_name": "saver-5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e", "artifact_status": null } } @@ -4989,8 +4989,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "custom-start-points-ci", - "trail_name": "843d6556ec718da1a1f51ce906c8c5bd6366d691", + "flow_name": "saver-ci", + "trail_name": "a35d09232116daff39d0f939cb133edc5750e2a1", "artifact_status": "COMPLIANT" } }, @@ -4998,7 +4998,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, @@ -5006,7 +5006,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "custom-start-points-58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", + "trail_name": "saver-5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e", "artifact_status": "COMPLIANT" } }, @@ -5014,7 +5014,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-58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", + "trail_name": "saver-5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e", "artifact_status": "COMPLIANT" } } @@ -5039,8 +5039,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "custom-start-points-ci", - "trail_name": "843d6556ec718da1a1f51ce906c8c5bd6366d691", + "flow_name": "saver-ci", + "trail_name": "a35d09232116daff39d0f939cb133edc5750e2a1", "artifact_status": null } }, @@ -5048,7 +5048,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, @@ -5056,7 +5056,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "custom-start-points-58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", + "trail_name": "saver-5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e", "artifact_status": null } }, @@ -5064,7 +5064,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-58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", + "trail_name": "saver-5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e", "artifact_status": null } } @@ -5091,8 +5091,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "custom-start-points-ci", - "trail_name": "843d6556ec718da1a1f51ce906c8c5bd6366d691", + "flow_name": "saver-ci", + "trail_name": "a35d09232116daff39d0f939cb133edc5750e2a1", "artifact_status": null } }, @@ -5100,7 +5100,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, @@ -5108,7 +5108,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "custom-start-points-58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", + "trail_name": "saver-5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e", "artifact_status": null } }, @@ -5116,7 +5116,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "custom-start-points-58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", + "trail_name": "saver-5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e", "artifact_status": null } } @@ -5136,8 +5136,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "custom-start-points-ci", - "trail_name": "843d6556ec718da1a1f51ce906c8c5bd6366d691", + "flow_name": "saver-ci", + "trail_name": "a35d09232116daff39d0f939cb133edc5750e2a1", "artifact_status": "COMPLIANT" } }, @@ -5145,7 +5145,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, @@ -5153,7 +5153,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "custom-start-points-58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", + "trail_name": "saver-5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e", "artifact_status": "COMPLIANT" } }, @@ -5161,7 +5161,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-58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", + "trail_name": "saver-5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e", "artifact_status": "COMPLIANT" } } @@ -5171,7 +5171,7 @@ kosli get snapshot aws-prod --output=json "policy_name": "provenance" }, { - "policy_version": 2, + "policy_version": 3, "status": "COMPLIANT", "rule_evaluations": [ { @@ -5188,8 +5188,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "custom-start-points-ci", - "trail_name": "843d6556ec718da1a1f51ce906c8c5bd6366d691", + "flow_name": "saver-ci", + "trail_name": "a35d09232116daff39d0f939cb133edc5750e2a1", "artifact_status": null } }, @@ -5197,7 +5197,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, @@ -5205,7 +5205,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "custom-start-points-58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", + "trail_name": "saver-5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e", "artifact_status": null } }, @@ -5213,7 +5213,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-58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", + "trail_name": "saver-5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e", "artifact_status": null } } @@ -5233,8 +5233,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "custom-start-points-ci", - "trail_name": "843d6556ec718da1a1f51ce906c8c5bd6366d691", + "flow_name": "saver-ci", + "trail_name": "a35d09232116daff39d0f939cb133edc5750e2a1", "artifact_status": "COMPLIANT" } }, @@ -5242,7 +5242,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, @@ -5250,7 +5250,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "custom-start-points-58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", + "trail_name": "saver-5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e", "artifact_status": "COMPLIANT" } }, @@ -5258,7 +5258,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-58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", + "trail_name": "saver-5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e", "artifact_status": "COMPLIANT" } } @@ -5272,7 +5272,7 @@ kosli get snapshot aws-prod --output=json "text": "flow.name == \"snyk-aws-prod-per-artifact\"" }, "name": "snyk-container-scan", - "type": "generic", + "type": "decision", "must_be_compliant": true, "for_control": null } @@ -5283,8 +5283,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "custom-start-points-ci", - "trail_name": "843d6556ec718da1a1f51ce906c8c5bd6366d691", + "flow_name": "saver-ci", + "trail_name": "a35d09232116daff39d0f939cb133edc5750e2a1", "artifact_status": null } }, @@ -5292,7 +5292,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, @@ -5300,7 +5300,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "custom-start-points-58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", + "trail_name": "saver-5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e", "artifact_status": null } }, @@ -5308,7 +5308,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "custom-start-points-58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", + "trail_name": "saver-5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e", "artifact_status": null } } @@ -5318,7 +5318,7 @@ kosli get snapshot aws-prod --output=json "policy_name": "snyk-scan-aws-prod" }, { - "policy_version": 1, + "policy_version": 2, "status": "COMPLIANT", "rule_evaluations": [ { @@ -5335,8 +5335,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "custom-start-points-ci", - "trail_name": "843d6556ec718da1a1f51ce906c8c5bd6366d691", + "flow_name": "saver-ci", + "trail_name": "a35d09232116daff39d0f939cb133edc5750e2a1", "artifact_status": null } }, @@ -5344,7 +5344,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, @@ -5352,7 +5352,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "custom-start-points-58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", + "trail_name": "saver-5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e", "artifact_status": null } }, @@ -5360,7 +5360,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-58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", + "trail_name": "saver-5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e", "artifact_status": null } } @@ -5380,8 +5380,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "custom-start-points-ci", - "trail_name": "843d6556ec718da1a1f51ce906c8c5bd6366d691", + "flow_name": "saver-ci", + "trail_name": "a35d09232116daff39d0f939cb133edc5750e2a1", "artifact_status": "COMPLIANT" } }, @@ -5389,7 +5389,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, @@ -5397,7 +5397,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "custom-start-points-58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", + "trail_name": "saver-5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e", "artifact_status": "COMPLIANT" } }, @@ -5405,7 +5405,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-58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", + "trail_name": "saver-5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e", "artifact_status": "COMPLIANT" } } @@ -5419,7 +5419,7 @@ kosli get snapshot aws-prod --output=json "text": "flow.name == \"production-promotion\"" }, "name": "snyk-scan", - "type": "generic", + "type": "decision", "must_be_compliant": true, "for_control": null } @@ -5430,8 +5430,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "custom-start-points-ci", - "trail_name": "843d6556ec718da1a1f51ce906c8c5bd6366d691", + "flow_name": "saver-ci", + "trail_name": "a35d09232116daff39d0f939cb133edc5750e2a1", "artifact_status": null } }, @@ -5439,7 +5439,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, @@ -5447,7 +5447,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "custom-start-points-58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", + "trail_name": "saver-5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e", "artifact_status": null } }, @@ -5455,7 +5455,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-58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", + "trail_name": "saver-5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e", "artifact_status": null } } @@ -5482,8 +5482,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "custom-start-points-ci", - "trail_name": "843d6556ec718da1a1f51ce906c8c5bd6366d691", + "flow_name": "saver-ci", + "trail_name": "a35d09232116daff39d0f939cb133edc5750e2a1", "artifact_status": null } }, @@ -5491,7 +5491,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, @@ -5499,7 +5499,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "custom-start-points-58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", + "trail_name": "saver-5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e", "artifact_status": null } }, @@ -5507,7 +5507,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-58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", + "trail_name": "saver-5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e", "artifact_status": null } } @@ -5533,8 +5533,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "custom-start-points-ci", - "trail_name": "843d6556ec718da1a1f51ce906c8c5bd6366d691", + "flow_name": "saver-ci", + "trail_name": "a35d09232116daff39d0f939cb133edc5750e2a1", "artifact_status": "COMPLIANT" } }, @@ -5542,7 +5542,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, @@ -5550,7 +5550,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "custom-start-points-58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", + "trail_name": "saver-5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e", "artifact_status": "COMPLIANT" } }, @@ -5558,7 +5558,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "custom-start-points-58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", + "trail_name": "saver-5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e", "artifact_status": "COMPLIANT" } } @@ -5569,9 +5569,9 @@ kosli get snapshot aws-prod --output=json } ], "reasons_for_incompliance": [], - "fingerprint": "58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", + "fingerprint": "5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e", "creationTimestamp": [ - 1781862431 + 1782291046 ], "pods": null, "annotation": { @@ -5579,59 +5579,59 @@ kosli get snapshot aws-prod --output=json "was": 1, "now": 1 }, - "flow_name": "custom-start-points-ci", - "git_commit": "843d6556ec718da1a1f51ce906c8c5bd6366d691", - "commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/843d6556ec718da1a1f51ce906c8c5bd6366d691", - "html_url": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci/artifacts/58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b?artifact_id=a467f7de-b8f1-45fe-a7aa-3479ee90", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci", + "flow_name": "saver-ci", + "git_commit": "a35d09232116daff39d0f939cb133edc5750e2a1", + "commit_url": "https://github.com/cyber-dojo/saver/commit/a35d09232116daff39d0f939cb133edc5750e2a1", + "html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci/artifacts/5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e?artifact_id=85ae3f6e-d663-406b-9d5a-fcf95308", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/custom-start-points/compare/6b5c1598cc13c388a0fec71852e6b03bf0696e0b...843d6556ec718da1a1f51ce906c8c5bd6366d691", - "previous_git_commit": "6b5c1598cc13c388a0fec71852e6b03bf0696e0b", - "previous_fingerprint": "b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:6b5c159@sha256:b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928", + "diff_url": "https://github.com/cyber-dojo/saver/compare/fbae360261d949b25a66a927921e757d4d064543...a35d09232116daff39d0f939cb133edc5750e2a1", + "previous_git_commit": "fbae360261d949b25a66a927921e757d4d064543", + "previous_fingerprint": "b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:fbae360@sha256:b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/6b5c1598cc13c388a0fec71852e6b03bf0696e0b", - "previous_trail_name": "6b5c1598cc13c388a0fec71852e6b03bf0696e0b", - "previous_template_reference_name": "custom-start-points" + "previous_git_commit_url": "https://github.com/cyber-dojo/saver/commit/fbae360261d949b25a66a927921e757d4d064543", + "previous_trail_name": "fbae360261d949b25a66a927921e757d4d064543", + "previous_template_reference_name": "saver" }, - "commit_lead_time": 832.0, + "commit_lead_time": 61099.0, "flows": [ { - "flow_name": "custom-start-points-ci", - "trail_name": "843d6556ec718da1a1f51ce906c8c5bd6366d691", - "template_reference_name": "custom-start-points", - "git_commit": "843d6556ec718da1a1f51ce906c8c5bd6366d691", - "commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/843d6556ec718da1a1f51ce906c8c5bd6366d691", + "flow_name": "saver-ci", + "trail_name": "a35d09232116daff39d0f939cb133edc5750e2a1", + "template_reference_name": "saver", + "git_commit": "a35d09232116daff39d0f939cb133edc5750e2a1", + "commit_url": "https://github.com/cyber-dojo/saver/commit/a35d09232116daff39d0f939cb133edc5750e2a1", "git_commit_info": { - "sha1": "843d6556ec718da1a1f51ce906c8c5bd6366d691", - "message": "Merge pull request #121 from cyber-dojo/update-base-image-53f1afd\n\nMerge update-base-image into main", + "sha1": "a35d09232116daff39d0f939cb133edc5750e2a1", + "message": "Replace attest-generic with attest-decision for snyk (#410)", "author": "Jon Jagger ", - "branch": "main", - "timestamp": 1781861599.0, - "url": "https://github.com/cyber-dojo/custom-start-points/commit/843d6556ec718da1a1f51ce906c8c5bd6366d691" + "branch": "", + "timestamp": 1782229947.0, + "url": "https://github.com/cyber-dojo/saver/commit/a35d09232116daff39d0f939cb133edc5750e2a1" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci/artifacts/58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b?artifact_id=a467f7de-b8f1-45fe-a7aa-3479ee90", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci", + "html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci/artifacts/5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e?artifact_id=85ae3f6e-d663-406b-9d5a-fcf95308", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/custom-start-points/compare/6b5c1598cc13c388a0fec71852e6b03bf0696e0b...843d6556ec718da1a1f51ce906c8c5bd6366d691", - "previous_git_commit": "6b5c1598cc13c388a0fec71852e6b03bf0696e0b", - "previous_fingerprint": "b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:6b5c159@sha256:b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928", + "diff_url": "https://github.com/cyber-dojo/saver/compare/fbae360261d949b25a66a927921e757d4d064543...a35d09232116daff39d0f939cb133edc5750e2a1", + "previous_git_commit": "fbae360261d949b25a66a927921e757d4d064543", + "previous_fingerprint": "b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:fbae360@sha256:b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/6b5c1598cc13c388a0fec71852e6b03bf0696e0b", - "previous_trail_name": "6b5c1598cc13c388a0fec71852e6b03bf0696e0b", - "previous_template_reference_name": "custom-start-points" + "previous_git_commit_url": "https://github.com/cyber-dojo/saver/commit/fbae360261d949b25a66a927921e757d4d064543", + "previous_trail_name": "fbae360261d949b25a66a927921e757d4d064543", + "previous_template_reference_name": "saver" }, - "commit_lead_time": 832.0, + "commit_lead_time": 61099.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "production-promotion", - "trail_name": "promote-all-24", - "template_reference_name": "custom-start-points", + "trail_name": "promote-all-25", + "template_reference_name": "saver", "git_commit": "01dd4c6406d6655898ef2236875ec9f67091c792", "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792", "git_commit_info": { @@ -5642,94 +5642,94 @@ kosli get snapshot aws-prod --output=json "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/58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b?artifact_id=d85f5a12-124a-4777-b2d2-8c196161", + "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e?artifact_id=97544b21-370c-4344-b9a5-fee39d18", "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/01dd4c6406d6655898ef2236875ec9f67091c792...01dd4c6406d6655898ef2236875ec9f67091c792", "previous_git_commit": "01dd4c6406d6655898ef2236875ec9f67091c792", - "previous_fingerprint": "b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:6b5c159@sha256:b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928", + "previous_fingerprint": "b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:fbae360@sha256:b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792", - "previous_trail_name": "promote-all-23", - "previous_template_reference_name": "custom-start-points" + "previous_trail_name": "promote-all-24", + "previous_template_reference_name": "saver" }, - "commit_lead_time": 448917.0, + "commit_lead_time": 877532.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "custom-start-points-58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", - "template_reference_name": "custom-start-points", - "git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", + "trail_name": "saver-5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e", + "template_reference_name": "saver", + "git_commit": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071", "git_commit_info": { - "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.", + "sha1": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "message": "Replace attest-generic with attest-decision", "author": "JonJagger ", "branch": "main", - "timestamp": 1781594940.0, - "url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26" + "timestamp": 1782227560.0, + "url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b?artifact_id=8ddb710e-3909-4ef9-a948-5dafee48", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e?artifact_id=b09eef2d-c142-48f4-b0b1-d12989f8", "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/7172cc22125f480a9f12127edb481a4d84aabea3...00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_git_commit": "7172cc22125f480a9f12127edb481a4d84aabea3", - "previous_fingerprint": "b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:6b5c159@sha256:b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928", + "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/00c479764cb9eca038fdaaaef108672d0bb0ed26...c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "previous_git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", + "previous_fingerprint": "b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:fbae360@sha256:b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/7172cc22125f480a9f12127edb481a4d84aabea3", - "previous_trail_name": "custom-start-points-b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928", - "previous_template_reference_name": "custom-start-points" + "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", + "previous_trail_name": "saver-b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", + "previous_template_reference_name": "saver" }, - "commit_lead_time": 267491.0, + "commit_lead_time": 63486.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "custom-start-points-58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", - "template_reference_name": "custom-start-points", - "git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", + "trail_name": "saver-5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e", + "template_reference_name": "saver", + "git_commit": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071", "git_commit_info": { - "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.", + "sha1": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "message": "Replace attest-generic with attest-decision", "author": "JonJagger ", "branch": "main", - "timestamp": 1781594940.0, - "url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26" + "timestamp": 1782227560.0, + "url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b?artifact_id=29ba3a7a-f264-4e60-bebd-780eb940", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e?artifact_id=423a8e12-5f18-44d1-a23e-97a5924b", "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/00c479764cb9eca038fdaaaef108672d0bb0ed26...00c479764cb9eca038fdaaaef108672d0bb0ed26", + "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/00c479764cb9eca038fdaaaef108672d0bb0ed26...c17bb3ed8862de03c1a491dfe790fd8734fc7071", "previous_git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_fingerprint": "b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:6b5c159@sha256:b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928", + "previous_fingerprint": "f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:8c84fac@sha256:f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_trail_name": "custom-start-points-b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928", - "previous_template_reference_name": "custom-start-points" + "previous_trail_name": "saver-f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419", + "previous_template_reference_name": "saver" }, - "commit_lead_time": 267491.0, + "commit_lead_time": 63486.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] } ], "ecs_context": { - "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/5d521351a25845d4abb94577184aba6c", + "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/5b99926988d2488f92d72c4bb61fa0d7", "cluster_name": null, "service_name": null } }, { - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:47ef6ca@sha256:82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:3e563ea@sha256:ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38", "compliant": true, "deployments": [], "policy_decisions": [ @@ -5751,8 +5751,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "web-ci", - "trail_name": "47ef6ca4f22445ca7138a4818f8fe3a8b69b81f1", + "flow_name": "differ-ci", + "trail_name": "3e563eacf76b48caaf2f19f29472544199df8a00", "artifact_status": null } }, @@ -5760,23 +5760,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "differ-ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "web-82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "differ-ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38", "artifact_status": null } } @@ -5796,8 +5796,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "web-ci", - "trail_name": "47ef6ca4f22445ca7138a4818f8fe3a8b69b81f1", + "flow_name": "differ-ci", + "trail_name": "3e563eacf76b48caaf2f19f29472544199df8a00", "artifact_status": "COMPLIANT" } }, @@ -5805,23 +5805,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "differ-ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "web-82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "differ-ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38", "artifact_status": "COMPLIANT" } } @@ -5846,8 +5846,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "web-ci", - "trail_name": "47ef6ca4f22445ca7138a4818f8fe3a8b69b81f1", + "flow_name": "differ-ci", + "trail_name": "3e563eacf76b48caaf2f19f29472544199df8a00", "artifact_status": null } }, @@ -5855,23 +5855,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "differ-ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "web-82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "differ-ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38", "artifact_status": null } } @@ -5898,8 +5898,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "web-ci", - "trail_name": "47ef6ca4f22445ca7138a4818f8fe3a8b69b81f1", + "flow_name": "differ-ci", + "trail_name": "3e563eacf76b48caaf2f19f29472544199df8a00", "artifact_status": null } }, @@ -5907,23 +5907,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "differ-ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38", "artifact_status": null } }, { "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "web-82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "differ-ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38", "artifact_status": null } } @@ -5943,8 +5943,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "web-ci", - "trail_name": "47ef6ca4f22445ca7138a4818f8fe3a8b69b81f1", + "flow_name": "differ-ci", + "trail_name": "3e563eacf76b48caaf2f19f29472544199df8a00", "artifact_status": "COMPLIANT" } }, @@ -5952,23 +5952,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "differ-ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "web-82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "differ-ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38", "artifact_status": "COMPLIANT" } } @@ -5978,7 +5978,7 @@ kosli get snapshot aws-prod --output=json "policy_name": "provenance" }, { - "policy_version": 2, + "policy_version": 3, "status": "COMPLIANT", "rule_evaluations": [ { @@ -5995,8 +5995,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "web-ci", - "trail_name": "47ef6ca4f22445ca7138a4818f8fe3a8b69b81f1", + "flow_name": "differ-ci", + "trail_name": "3e563eacf76b48caaf2f19f29472544199df8a00", "artifact_status": null } }, @@ -6004,23 +6004,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "differ-ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "web-82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "differ-ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38", "artifact_status": null } } @@ -6040,8 +6040,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "web-ci", - "trail_name": "47ef6ca4f22445ca7138a4818f8fe3a8b69b81f1", + "flow_name": "differ-ci", + "trail_name": "3e563eacf76b48caaf2f19f29472544199df8a00", "artifact_status": "COMPLIANT" } }, @@ -6049,23 +6049,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "differ-ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "web-82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "differ-ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38", "artifact_status": "COMPLIANT" } } @@ -6079,7 +6079,7 @@ kosli get snapshot aws-prod --output=json "text": "flow.name == \"snyk-aws-prod-per-artifact\"" }, "name": "snyk-container-scan", - "type": "generic", + "type": "decision", "must_be_compliant": true, "for_control": null } @@ -6090,8 +6090,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "web-ci", - "trail_name": "47ef6ca4f22445ca7138a4818f8fe3a8b69b81f1", + "flow_name": "differ-ci", + "trail_name": "3e563eacf76b48caaf2f19f29472544199df8a00", "artifact_status": null } }, @@ -6099,23 +6099,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, { - "type": "rule_satisfied", + "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "differ-ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38", "artifact_status": null } }, { - "type": "rule_not_applicable", + "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "web-82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "differ-ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38", "artifact_status": null } } @@ -6125,7 +6125,7 @@ kosli get snapshot aws-prod --output=json "policy_name": "snyk-scan-aws-prod" }, { - "policy_version": 1, + "policy_version": 2, "status": "COMPLIANT", "rule_evaluations": [ { @@ -6142,8 +6142,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "web-ci", - "trail_name": "47ef6ca4f22445ca7138a4818f8fe3a8b69b81f1", + "flow_name": "differ-ci", + "trail_name": "3e563eacf76b48caaf2f19f29472544199df8a00", "artifact_status": null } }, @@ -6151,23 +6151,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "differ-ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "web-82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "differ-ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38", "artifact_status": null } } @@ -6187,8 +6187,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "web-ci", - "trail_name": "47ef6ca4f22445ca7138a4818f8fe3a8b69b81f1", + "flow_name": "differ-ci", + "trail_name": "3e563eacf76b48caaf2f19f29472544199df8a00", "artifact_status": "COMPLIANT" } }, @@ -6196,23 +6196,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "differ-ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "web-82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "differ-ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38", "artifact_status": "COMPLIANT" } } @@ -6226,7 +6226,7 @@ kosli get snapshot aws-prod --output=json "text": "flow.name == \"production-promotion\"" }, "name": "snyk-scan", - "type": "generic", + "type": "decision", "must_be_compliant": true, "for_control": null } @@ -6237,8 +6237,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "web-ci", - "trail_name": "47ef6ca4f22445ca7138a4818f8fe3a8b69b81f1", + "flow_name": "differ-ci", + "trail_name": "3e563eacf76b48caaf2f19f29472544199df8a00", "artifact_status": null } }, @@ -6246,23 +6246,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "differ-ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "web-82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "differ-ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38", "artifact_status": null } } @@ -6289,8 +6289,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "web-ci", - "trail_name": "47ef6ca4f22445ca7138a4818f8fe3a8b69b81f1", + "flow_name": "differ-ci", + "trail_name": "3e563eacf76b48caaf2f19f29472544199df8a00", "artifact_status": null } }, @@ -6298,23 +6298,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "differ-ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "web-82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "differ-ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38", "artifact_status": null } } @@ -6340,8 +6340,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "web-ci", - "trail_name": "47ef6ca4f22445ca7138a4818f8fe3a8b69b81f1", + "flow_name": "differ-ci", + "trail_name": "3e563eacf76b48caaf2f19f29472544199df8a00", "artifact_status": "COMPLIANT" } }, @@ -6349,23 +6349,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { - "type": "rule_satisfied", + "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "differ-ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38", "artifact_status": "COMPLIANT" } }, { - "type": "rule_not_applicable", + "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "web-82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "differ-ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38", "artifact_status": "COMPLIANT" } } @@ -6376,71 +6376,69 @@ kosli get snapshot aws-prod --output=json } ], "reasons_for_incompliance": [], - "fingerprint": "82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", + "fingerprint": "ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38", "creationTimestamp": [ - 1781862425, - 1781862427, - 1781862427 + 1782291043 ], "pods": null, "annotation": { "type": "unchanged", - "was": 3, - "now": 3 + "was": 1, + "now": 1 }, - "flow_name": "web-ci", - "git_commit": "47ef6ca4f22445ca7138a4818f8fe3a8b69b81f1", - "commit_url": "https://github.com/cyber-dojo/web/commit/47ef6ca4f22445ca7138a4818f8fe3a8b69b81f1", - "html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci/artifacts/82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f?artifact_id=87b6ce7f-f34c-485b-8d6f-15a460ab", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci", + "flow_name": "differ-ci", + "git_commit": "3e563eacf76b48caaf2f19f29472544199df8a00", + "commit_url": "https://github.com/cyber-dojo/differ/commit/3e563eacf76b48caaf2f19f29472544199df8a00", + "html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci/artifacts/ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38?artifact_id=68ef150a-fe86-4b14-845b-7bcb814f", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/web/compare/f66cc5c51fcc19b04b36e0542b36b6cc52515d3c...47ef6ca4f22445ca7138a4818f8fe3a8b69b81f1", - "previous_git_commit": "f66cc5c51fcc19b04b36e0542b36b6cc52515d3c", - "previous_fingerprint": "29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:f66cc5c@sha256:29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4", + "diff_url": "https://github.com/cyber-dojo/differ/compare/3ab1ef84cb2243f184502ddb7f491e24d4ced1c1...3e563eacf76b48caaf2f19f29472544199df8a00", + "previous_git_commit": "3ab1ef84cb2243f184502ddb7f491e24d4ced1c1", + "previous_fingerprint": "c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:3ab1ef8@sha256:c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/web/commit/f66cc5c51fcc19b04b36e0542b36b6cc52515d3c", - "previous_trail_name": "f66cc5c51fcc19b04b36e0542b36b6cc52515d3c", - "previous_template_reference_name": "web" + "previous_git_commit_url": "https://github.com/cyber-dojo/differ/commit/3ab1ef84cb2243f184502ddb7f491e24d4ced1c1", + "previous_trail_name": "3ab1ef84cb2243f184502ddb7f491e24d4ced1c1", + "previous_template_reference_name": "differ" }, - "commit_lead_time": 426625.0, + "commit_lead_time": 62471.0, "flows": [ { - "flow_name": "web-ci", - "trail_name": "47ef6ca4f22445ca7138a4818f8fe3a8b69b81f1", - "template_reference_name": "web", - "git_commit": "47ef6ca4f22445ca7138a4818f8fe3a8b69b81f1", - "commit_url": "https://github.com/cyber-dojo/web/commit/47ef6ca4f22445ca7138a4818f8fe3a8b69b81f1", + "flow_name": "differ-ci", + "trail_name": "3e563eacf76b48caaf2f19f29472544199df8a00", + "template_reference_name": "differ", + "git_commit": "3e563eacf76b48caaf2f19f29472544199df8a00", + "commit_url": "https://github.com/cyber-dojo/differ/commit/3e563eacf76b48caaf2f19f29472544199df8a00", "git_commit_info": { - "sha1": "47ef6ca4f22445ca7138a4818f8fe3a8b69b81f1", - "message": "Dockerfile - Automated base-image update (#362)\n\nCo-authored-by: JonJagger ", + "sha1": "3e563eacf76b48caaf2f19f29472544199df8a00", + "message": "Replace attest-generic with attest-decision for snyk (#412)", "author": "Jon Jagger ", "branch": "", - "timestamp": 1781435800.0, - "url": "https://github.com/cyber-dojo/web/commit/47ef6ca4f22445ca7138a4818f8fe3a8b69b81f1" + "timestamp": 1782228572.0, + "url": "https://github.com/cyber-dojo/differ/commit/3e563eacf76b48caaf2f19f29472544199df8a00" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci/artifacts/82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f?artifact_id=87b6ce7f-f34c-485b-8d6f-15a460ab", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci", + "html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci/artifacts/ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38?artifact_id=68ef150a-fe86-4b14-845b-7bcb814f", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/web/compare/f66cc5c51fcc19b04b36e0542b36b6cc52515d3c...47ef6ca4f22445ca7138a4818f8fe3a8b69b81f1", - "previous_git_commit": "f66cc5c51fcc19b04b36e0542b36b6cc52515d3c", - "previous_fingerprint": "29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:f66cc5c@sha256:29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4", + "diff_url": "https://github.com/cyber-dojo/differ/compare/3ab1ef84cb2243f184502ddb7f491e24d4ced1c1...3e563eacf76b48caaf2f19f29472544199df8a00", + "previous_git_commit": "3ab1ef84cb2243f184502ddb7f491e24d4ced1c1", + "previous_fingerprint": "c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:3ab1ef8@sha256:c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/web/commit/f66cc5c51fcc19b04b36e0542b36b6cc52515d3c", - "previous_trail_name": "f66cc5c51fcc19b04b36e0542b36b6cc52515d3c", - "previous_template_reference_name": "web" + "previous_git_commit_url": "https://github.com/cyber-dojo/differ/commit/3ab1ef84cb2243f184502ddb7f491e24d4ced1c1", + "previous_trail_name": "3ab1ef84cb2243f184502ddb7f491e24d4ced1c1", + "previous_template_reference_name": "differ" }, - "commit_lead_time": 426625.0, + "commit_lead_time": 62471.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "production-promotion", - "trail_name": "promote-all-24", - "template_reference_name": "web", + "trail_name": "promote-all-25", + "template_reference_name": "differ", "git_commit": "01dd4c6406d6655898ef2236875ec9f67091c792", "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792", "git_commit_info": { @@ -6451,94 +6449,94 @@ kosli get snapshot aws-prod --output=json "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/82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f?artifact_id=4aae0d64-3134-42e5-bff9-3f722a8b", + "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38?artifact_id=5451f41c-0226-41f0-aa15-c9fe0967", "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/01dd4c6406d6655898ef2236875ec9f67091c792...01dd4c6406d6655898ef2236875ec9f67091c792", "previous_git_commit": "01dd4c6406d6655898ef2236875ec9f67091c792", - "previous_fingerprint": "29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:f66cc5c@sha256:29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4", + "previous_fingerprint": "c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:3ab1ef8@sha256:c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792", - "previous_trail_name": "promote-all-23", - "previous_template_reference_name": "web" + "previous_trail_name": "promote-all-24", + "previous_template_reference_name": "differ" }, - "commit_lead_time": 448911.0, + "commit_lead_time": 877529.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", - "template_reference_name": "web", - "git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "differ-ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38", + "template_reference_name": "differ", + "git_commit": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071", "git_commit_info": { - "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.", + "sha1": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "message": "Replace attest-generic with attest-decision", "author": "JonJagger ", "branch": "main", - "timestamp": 1781594940.0, - "url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26" + "timestamp": 1782227560.0, + "url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f?artifact_id=82b0ee07-02da-4cf4-b94e-4a0e8f86", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38?artifact_id=70da620d-1f41-4406-98dc-5431b5f8", + "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/00c479764cb9eca038fdaaaef108672d0bb0ed26...00c479764cb9eca038fdaaaef108672d0bb0ed26", + "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/00c479764cb9eca038fdaaaef108672d0bb0ed26...c17bb3ed8862de03c1a491dfe790fd8734fc7071", "previous_git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_fingerprint": "29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:f66cc5c@sha256:29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4", + "previous_fingerprint": "c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:3ab1ef8@sha256:c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_trail_name": "web-29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4", - "previous_template_reference_name": "web" + "previous_trail_name": "differ-c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", + "previous_template_reference_name": "differ" }, - "commit_lead_time": 267485.0, + "commit_lead_time": 63483.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "web-82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", - "template_reference_name": "web", - "git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "differ-ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38", + "template_reference_name": "differ", + "git_commit": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071", "git_commit_info": { - "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.", + "sha1": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "message": "Replace attest-generic with attest-decision", "author": "JonJagger ", "branch": "main", - "timestamp": 1781594940.0, - "url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26" + "timestamp": 1782227560.0, + "url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f?artifact_id=a1933958-50ca-4013-b4de-4ac79197", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38?artifact_id=21ae6d19-921e-4fb2-aabb-8de8dd52", + "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/ee081fb7be2ac7e2094bb4d02f3effdb9f73dd74...00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_git_commit": "ee081fb7be2ac7e2094bb4d02f3effdb9f73dd74", - "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/snyk-scanning/compare/00c479764cb9eca038fdaaaef108672d0bb0ed26...c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "previous_git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", + "previous_fingerprint": "902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:981dcfc@sha256:902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b", "previous_artifact_compliance_state": "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/00c479764cb9eca038fdaaaef108672d0bb0ed26", + "previous_trail_name": "differ-902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b", + "previous_template_reference_name": "differ" }, - "commit_lead_time": 267485.0, + "commit_lead_time": 63483.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] } ], "ecs_context": { - "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/abca63ccf84346a5a39c68f735d50815", + "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/9088edc0949e4d2aa29466f2008b7e04", "cluster_name": null, "service_name": null } }, { - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:3ab1ef8@sha256:c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:514f79a@sha256:311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", "compliant": true, "deployments": [], "policy_decisions": [ @@ -6560,8 +6558,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "differ-ci", - "trail_name": "3ab1ef84cb2243f184502ddb7f491e24d4ced1c1", + "flow_name": "custom-start-points-ci", + "trail_name": "514f79a280dee08bf889a4a4fdf41c9d2f231348", "artifact_status": null } }, @@ -6569,23 +6567,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "custom-start-points-311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "custom-start-points-311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", "artifact_status": null } } @@ -6605,8 +6603,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "differ-ci", - "trail_name": "3ab1ef84cb2243f184502ddb7f491e24d4ced1c1", + "flow_name": "custom-start-points-ci", + "trail_name": "514f79a280dee08bf889a4a4fdf41c9d2f231348", "artifact_status": "COMPLIANT" } }, @@ -6614,23 +6612,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "custom-start-points-311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "custom-start-points-311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", "artifact_status": "COMPLIANT" } } @@ -6655,8 +6653,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "differ-ci", - "trail_name": "3ab1ef84cb2243f184502ddb7f491e24d4ced1c1", + "flow_name": "custom-start-points-ci", + "trail_name": "514f79a280dee08bf889a4a4fdf41c9d2f231348", "artifact_status": null } }, @@ -6664,23 +6662,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "custom-start-points-311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "custom-start-points-311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", "artifact_status": null } } @@ -6707,8 +6705,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "differ-ci", - "trail_name": "3ab1ef84cb2243f184502ddb7f491e24d4ced1c1", + "flow_name": "custom-start-points-ci", + "trail_name": "514f79a280dee08bf889a4a4fdf41c9d2f231348", "artifact_status": null } }, @@ -6716,23 +6714,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "custom-start-points-311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", "artifact_status": null } }, { "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "custom-start-points-311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", "artifact_status": null } } @@ -6752,8 +6750,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "differ-ci", - "trail_name": "3ab1ef84cb2243f184502ddb7f491e24d4ced1c1", + "flow_name": "custom-start-points-ci", + "trail_name": "514f79a280dee08bf889a4a4fdf41c9d2f231348", "artifact_status": "COMPLIANT" } }, @@ -6761,23 +6759,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "custom-start-points-311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "custom-start-points-311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", "artifact_status": "COMPLIANT" } } @@ -6787,7 +6785,7 @@ kosli get snapshot aws-prod --output=json "policy_name": "provenance" }, { - "policy_version": 2, + "policy_version": 3, "status": "COMPLIANT", "rule_evaluations": [ { @@ -6804,8 +6802,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "differ-ci", - "trail_name": "3ab1ef84cb2243f184502ddb7f491e24d4ced1c1", + "flow_name": "custom-start-points-ci", + "trail_name": "514f79a280dee08bf889a4a4fdf41c9d2f231348", "artifact_status": null } }, @@ -6813,23 +6811,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "custom-start-points-311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "custom-start-points-311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", "artifact_status": null } } @@ -6849,8 +6847,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "differ-ci", - "trail_name": "3ab1ef84cb2243f184502ddb7f491e24d4ced1c1", + "flow_name": "custom-start-points-ci", + "trail_name": "514f79a280dee08bf889a4a4fdf41c9d2f231348", "artifact_status": "COMPLIANT" } }, @@ -6858,23 +6856,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "custom-start-points-311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "custom-start-points-311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", "artifact_status": "COMPLIANT" } } @@ -6888,7 +6886,7 @@ kosli get snapshot aws-prod --output=json "text": "flow.name == \"snyk-aws-prod-per-artifact\"" }, "name": "snyk-container-scan", - "type": "generic", + "type": "decision", "must_be_compliant": true, "for_control": null } @@ -6899,8 +6897,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "differ-ci", - "trail_name": "3ab1ef84cb2243f184502ddb7f491e24d4ced1c1", + "flow_name": "custom-start-points-ci", + "trail_name": "514f79a280dee08bf889a4a4fdf41c9d2f231348", "artifact_status": null } }, @@ -6908,23 +6906,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, { - "type": "rule_satisfied", + "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "custom-start-points-311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", "artifact_status": null } }, { - "type": "rule_not_applicable", + "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "custom-start-points-311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", "artifact_status": null } } @@ -6934,7 +6932,7 @@ kosli get snapshot aws-prod --output=json "policy_name": "snyk-scan-aws-prod" }, { - "policy_version": 1, + "policy_version": 2, "status": "COMPLIANT", "rule_evaluations": [ { @@ -6951,8 +6949,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "differ-ci", - "trail_name": "3ab1ef84cb2243f184502ddb7f491e24d4ced1c1", + "flow_name": "custom-start-points-ci", + "trail_name": "514f79a280dee08bf889a4a4fdf41c9d2f231348", "artifact_status": null } }, @@ -6960,23 +6958,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "custom-start-points-311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "custom-start-points-311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", "artifact_status": null } } @@ -6996,8 +6994,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "differ-ci", - "trail_name": "3ab1ef84cb2243f184502ddb7f491e24d4ced1c1", + "flow_name": "custom-start-points-ci", + "trail_name": "514f79a280dee08bf889a4a4fdf41c9d2f231348", "artifact_status": "COMPLIANT" } }, @@ -7005,23 +7003,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "custom-start-points-311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "custom-start-points-311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", "artifact_status": "COMPLIANT" } } @@ -7035,7 +7033,7 @@ kosli get snapshot aws-prod --output=json "text": "flow.name == \"production-promotion\"" }, "name": "snyk-scan", - "type": "generic", + "type": "decision", "must_be_compliant": true, "for_control": null } @@ -7046,8 +7044,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "differ-ci", - "trail_name": "3ab1ef84cb2243f184502ddb7f491e24d4ced1c1", + "flow_name": "custom-start-points-ci", + "trail_name": "514f79a280dee08bf889a4a4fdf41c9d2f231348", "artifact_status": null } }, @@ -7055,23 +7053,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "custom-start-points-311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "custom-start-points-311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", "artifact_status": null } } @@ -7098,8 +7096,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "differ-ci", - "trail_name": "3ab1ef84cb2243f184502ddb7f491e24d4ced1c1", + "flow_name": "custom-start-points-ci", + "trail_name": "514f79a280dee08bf889a4a4fdf41c9d2f231348", "artifact_status": null } }, @@ -7107,23 +7105,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "custom-start-points-311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "custom-start-points-311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", "artifact_status": null } } @@ -7149,8 +7147,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "differ-ci", - "trail_name": "3ab1ef84cb2243f184502ddb7f491e24d4ced1c1", + "flow_name": "custom-start-points-ci", + "trail_name": "514f79a280dee08bf889a4a4fdf41c9d2f231348", "artifact_status": "COMPLIANT" } }, @@ -7158,23 +7156,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-24", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { - "type": "rule_satisfied", + "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "custom-start-points-311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", "artifact_status": "COMPLIANT" } }, { - "type": "rule_not_applicable", + "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "custom-start-points-311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", "artifact_status": "COMPLIANT" } } @@ -7185,9 +7183,9 @@ kosli get snapshot aws-prod --output=json } ], "reasons_for_incompliance": [], - "fingerprint": "c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", + "fingerprint": "311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", "creationTimestamp": [ - 1781862426 + 1782291042 ], "pods": null, "annotation": { @@ -7195,59 +7193,59 @@ kosli get snapshot aws-prod --output=json "was": 1, "now": 1 }, - "flow_name": "differ-ci", - "git_commit": "3ab1ef84cb2243f184502ddb7f491e24d4ced1c1", - "commit_url": "https://github.com/cyber-dojo/differ/commit/3ab1ef84cb2243f184502ddb7f491e24d4ced1c1", - "html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci/artifacts/c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd?artifact_id=c25bc6ba-cbfd-4ad5-b5ab-d4bca4e9", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci", + "flow_name": "custom-start-points-ci", + "git_commit": "514f79a280dee08bf889a4a4fdf41c9d2f231348", + "commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/514f79a280dee08bf889a4a4fdf41c9d2f231348", + "html_url": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci/artifacts/311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797?artifact_id=b20812a6-ee26-4984-97e9-87c4be75", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/differ/compare/981dcfc34f584d46afb46b217b47ce68f2f14a08...3ab1ef84cb2243f184502ddb7f491e24d4ced1c1", - "previous_git_commit": "981dcfc34f584d46afb46b217b47ce68f2f14a08", - "previous_fingerprint": "902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:981dcfc@sha256:902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b", + "diff_url": "https://github.com/cyber-dojo/custom-start-points/compare/843d6556ec718da1a1f51ce906c8c5bd6366d691...514f79a280dee08bf889a4a4fdf41c9d2f231348", + "previous_git_commit": "843d6556ec718da1a1f51ce906c8c5bd6366d691", + "previous_fingerprint": "58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:843d655@sha256:58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/differ/commit/981dcfc34f584d46afb46b217b47ce68f2f14a08", - "previous_trail_name": "981dcfc34f584d46afb46b217b47ce68f2f14a08", - "previous_template_reference_name": "differ" + "previous_git_commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/843d6556ec718da1a1f51ce906c8c5bd6366d691", + "previous_trail_name": "843d6556ec718da1a1f51ce906c8c5bd6366d691", + "previous_template_reference_name": "custom-start-points" }, - "commit_lead_time": 422046.0, + "commit_lead_time": 61181.0, "flows": [ { - "flow_name": "differ-ci", - "trail_name": "3ab1ef84cb2243f184502ddb7f491e24d4ced1c1", - "template_reference_name": "differ", - "git_commit": "3ab1ef84cb2243f184502ddb7f491e24d4ced1c1", - "commit_url": "https://github.com/cyber-dojo/differ/commit/3ab1ef84cb2243f184502ddb7f491e24d4ced1c1", + "flow_name": "custom-start-points-ci", + "trail_name": "514f79a280dee08bf889a4a4fdf41c9d2f231348", + "template_reference_name": "custom-start-points", + "git_commit": "514f79a280dee08bf889a4a4fdf41c9d2f231348", + "commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/514f79a280dee08bf889a4a4fdf41c9d2f231348", "git_commit_info": { - "sha1": "3ab1ef84cb2243f184502ddb7f491e24d4ced1c1", - "message": "Dockerfile - Automated base-image update (#405)\n\nCo-authored-by: JonJagger ", + "sha1": "514f79a280dee08bf889a4a4fdf41c9d2f231348", + "message": "Merge pull request #124 from cyber-dojo/replace-attest-generic-with-attest-decision\n\nReplace attest-generic with attest-decision for snyk", "author": "Jon Jagger ", - "branch": "", - "timestamp": 1781440380.0, - "url": "https://github.com/cyber-dojo/differ/commit/3ab1ef84cb2243f184502ddb7f491e24d4ced1c1" + "branch": "main", + "timestamp": 1782229861.0, + "url": "https://github.com/cyber-dojo/custom-start-points/commit/514f79a280dee08bf889a4a4fdf41c9d2f231348" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci/artifacts/c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd?artifact_id=c25bc6ba-cbfd-4ad5-b5ab-d4bca4e9", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci", + "html_url": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci/artifacts/311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797?artifact_id=b20812a6-ee26-4984-97e9-87c4be75", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/differ/compare/981dcfc34f584d46afb46b217b47ce68f2f14a08...3ab1ef84cb2243f184502ddb7f491e24d4ced1c1", - "previous_git_commit": "981dcfc34f584d46afb46b217b47ce68f2f14a08", - "previous_fingerprint": "902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:981dcfc@sha256:902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b", + "diff_url": "https://github.com/cyber-dojo/custom-start-points/compare/843d6556ec718da1a1f51ce906c8c5bd6366d691...514f79a280dee08bf889a4a4fdf41c9d2f231348", + "previous_git_commit": "843d6556ec718da1a1f51ce906c8c5bd6366d691", + "previous_fingerprint": "58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:843d655@sha256:58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/differ/commit/981dcfc34f584d46afb46b217b47ce68f2f14a08", - "previous_trail_name": "981dcfc34f584d46afb46b217b47ce68f2f14a08", - "previous_template_reference_name": "differ" + "previous_git_commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/843d6556ec718da1a1f51ce906c8c5bd6366d691", + "previous_trail_name": "843d6556ec718da1a1f51ce906c8c5bd6366d691", + "previous_template_reference_name": "custom-start-points" }, - "commit_lead_time": 422046.0, + "commit_lead_time": 61181.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "production-promotion", - "trail_name": "promote-all-24", - "template_reference_name": "differ", + "trail_name": "promote-all-25", + "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": { @@ -7258,94 +7256,94 @@ kosli get snapshot aws-prod --output=json "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/c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd?artifact_id=cf9f2757-e21d-48ea-89d8-3c0ea720", + "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797?artifact_id=64f6a22f-070b-4514-b0ce-8d21d90f", "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/01dd4c6406d6655898ef2236875ec9f67091c792...01dd4c6406d6655898ef2236875ec9f67091c792", "previous_git_commit": "01dd4c6406d6655898ef2236875ec9f67091c792", - "previous_fingerprint": "902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:981dcfc@sha256:902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b", + "previous_fingerprint": "58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:843d655@sha256:58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792", - "previous_trail_name": "promote-all-23", - "previous_template_reference_name": "differ" + "previous_trail_name": "promote-all-24", + "previous_template_reference_name": "custom-start-points" }, - "commit_lead_time": 448912.0, + "commit_lead_time": 877528.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", - "template_reference_name": "differ", - "git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "custom-start-points-311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", + "template_reference_name": "custom-start-points", + "git_commit": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071", "git_commit_info": { - "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.", + "sha1": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "message": "Replace attest-generic with attest-decision", "author": "JonJagger ", "branch": "main", - "timestamp": 1781594940.0, - "url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26" + "timestamp": 1782227560.0, + "url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd?artifact_id=cea82cfa-a71e-444d-a239-1eca5203", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797?artifact_id=881d0041-1375-4033-8161-4081756c", + "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/00c479764cb9eca038fdaaaef108672d0bb0ed26...00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_fingerprint": "902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:981dcfc@sha256:902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b", + "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/7172cc22125f480a9f12127edb481a4d84aabea3...c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "previous_git_commit": "7172cc22125f480a9f12127edb481a4d84aabea3", + "previous_fingerprint": "b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:6b5c159@sha256:b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_trail_name": "differ-902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b", - "previous_template_reference_name": "differ" + "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/7172cc22125f480a9f12127edb481a4d84aabea3", + "previous_trail_name": "custom-start-points-b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928", + "previous_template_reference_name": "custom-start-points" }, - "commit_lead_time": 267486.0, + "commit_lead_time": 63482.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", - "template_reference_name": "differ", - "git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "custom-start-points-311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", + "template_reference_name": "custom-start-points", + "git_commit": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071", "git_commit_info": { - "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.", + "sha1": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "message": "Replace attest-generic with attest-decision", "author": "JonJagger ", "branch": "main", - "timestamp": 1781594940.0, - "url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26" + "timestamp": 1782227560.0, + "url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd?artifact_id=28a621da-0165-4160-9915-4c384eb2", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797?artifact_id=2aed2133-b816-44c2-a3e8-c8dd56cc", + "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/ee081fb7be2ac7e2094bb4d02f3effdb9f73dd74...00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_git_commit": "ee081fb7be2ac7e2094bb4d02f3effdb9f73dd74", - "previous_fingerprint": "d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:43d2a72@sha256:d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9", + "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/00c479764cb9eca038fdaaaef108672d0bb0ed26...c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "previous_git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", + "previous_fingerprint": "b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:6b5c159@sha256:b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/ee081fb7be2ac7e2094bb4d02f3effdb9f73dd74", - "previous_trail_name": "differ-d2c30df1412005c8746cef54c3e3a88ddea23fdc0d96085a8ea66d91c61ac6d9", - "previous_template_reference_name": "differ" + "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", + "previous_trail_name": "custom-start-points-b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928", + "previous_template_reference_name": "custom-start-points" }, - "commit_lead_time": 267486.0, + "commit_lead_time": 63482.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] } ], "ecs_context": { - "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/188f5f0511504893942a417bd1807175", + "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/cce78d00505a412f94e50d1376b58c4d", "cluster_name": null, "service_name": null } }, { - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:34f14b6@sha256:f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:42ca333@sha256:d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685", "compliant": true, "deployments": [], "policy_decisions": [ @@ -7367,8 +7365,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "creator-ci", - "trail_name": "34f14b6fc5d87ff95426046716ec8a09141c13a7", + "flow_name": "web-ci", + "trail_name": "42ca333501c90d2cf36ce24035aa0a468e287da4", "artifact_status": null } }, @@ -7376,23 +7374,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-69", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685", "artifact_status": null } } @@ -7412,8 +7410,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "creator-ci", - "trail_name": "34f14b6fc5d87ff95426046716ec8a09141c13a7", + "flow_name": "web-ci", + "trail_name": "42ca333501c90d2cf36ce24035aa0a468e287da4", "artifact_status": "COMPLIANT" } }, @@ -7421,23 +7419,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-69", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685", "artifact_status": "COMPLIANT" } } @@ -7462,8 +7460,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "creator-ci", - "trail_name": "34f14b6fc5d87ff95426046716ec8a09141c13a7", + "flow_name": "web-ci", + "trail_name": "42ca333501c90d2cf36ce24035aa0a468e287da4", "artifact_status": null } }, @@ -7471,23 +7469,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-69", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685", "artifact_status": null } } @@ -7514,8 +7512,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "creator-ci", - "trail_name": "34f14b6fc5d87ff95426046716ec8a09141c13a7", + "flow_name": "web-ci", + "trail_name": "42ca333501c90d2cf36ce24035aa0a468e287da4", "artifact_status": null } }, @@ -7523,23 +7521,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-69", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685", "artifact_status": null } }, { "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685", "artifact_status": null } } @@ -7559,8 +7557,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "creator-ci", - "trail_name": "34f14b6fc5d87ff95426046716ec8a09141c13a7", + "flow_name": "web-ci", + "trail_name": "42ca333501c90d2cf36ce24035aa0a468e287da4", "artifact_status": "COMPLIANT" } }, @@ -7568,23 +7566,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-69", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685", "artifact_status": "COMPLIANT" } } @@ -7594,7 +7592,7 @@ kosli get snapshot aws-prod --output=json "policy_name": "provenance" }, { - "policy_version": 2, + "policy_version": 3, "status": "COMPLIANT", "rule_evaluations": [ { @@ -7611,8 +7609,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "creator-ci", - "trail_name": "34f14b6fc5d87ff95426046716ec8a09141c13a7", + "flow_name": "web-ci", + "trail_name": "42ca333501c90d2cf36ce24035aa0a468e287da4", "artifact_status": null } }, @@ -7620,23 +7618,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-69", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685", "artifact_status": null } } @@ -7656,8 +7654,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "creator-ci", - "trail_name": "34f14b6fc5d87ff95426046716ec8a09141c13a7", + "flow_name": "web-ci", + "trail_name": "42ca333501c90d2cf36ce24035aa0a468e287da4", "artifact_status": "COMPLIANT" } }, @@ -7665,23 +7663,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-69", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685", "artifact_status": "COMPLIANT" } } @@ -7695,7 +7693,7 @@ kosli get snapshot aws-prod --output=json "text": "flow.name == \"snyk-aws-prod-per-artifact\"" }, "name": "snyk-container-scan", - "type": "generic", + "type": "decision", "must_be_compliant": true, "for_control": null } @@ -7706,8 +7704,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "creator-ci", - "trail_name": "34f14b6fc5d87ff95426046716ec8a09141c13a7", + "flow_name": "web-ci", + "trail_name": "42ca333501c90d2cf36ce24035aa0a468e287da4", "artifact_status": null } }, @@ -7715,23 +7713,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-69", + "trail_name": "promote-all-25", "artifact_status": null } }, { - "type": "rule_satisfied", + "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685", "artifact_status": null } }, { - "type": "rule_not_applicable", + "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685", "artifact_status": null } } @@ -7741,7 +7739,7 @@ kosli get snapshot aws-prod --output=json "policy_name": "snyk-scan-aws-prod" }, { - "policy_version": 1, + "policy_version": 2, "status": "COMPLIANT", "rule_evaluations": [ { @@ -7758,8 +7756,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "creator-ci", - "trail_name": "34f14b6fc5d87ff95426046716ec8a09141c13a7", + "flow_name": "web-ci", + "trail_name": "42ca333501c90d2cf36ce24035aa0a468e287da4", "artifact_status": null } }, @@ -7767,23 +7765,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-69", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685", "artifact_status": null } } @@ -7803,8 +7801,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "creator-ci", - "trail_name": "34f14b6fc5d87ff95426046716ec8a09141c13a7", + "flow_name": "web-ci", + "trail_name": "42ca333501c90d2cf36ce24035aa0a468e287da4", "artifact_status": "COMPLIANT" } }, @@ -7812,23 +7810,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-69", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685", "artifact_status": "COMPLIANT" } } @@ -7842,7 +7840,7 @@ kosli get snapshot aws-prod --output=json "text": "flow.name == \"production-promotion\"" }, "name": "snyk-scan", - "type": "generic", + "type": "decision", "must_be_compliant": true, "for_control": null } @@ -7853,8 +7851,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "creator-ci", - "trail_name": "34f14b6fc5d87ff95426046716ec8a09141c13a7", + "flow_name": "web-ci", + "trail_name": "42ca333501c90d2cf36ce24035aa0a468e287da4", "artifact_status": null } }, @@ -7862,23 +7860,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-69", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685", "artifact_status": null } } @@ -7905,8 +7903,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "creator-ci", - "trail_name": "34f14b6fc5d87ff95426046716ec8a09141c13a7", + "flow_name": "web-ci", + "trail_name": "42ca333501c90d2cf36ce24035aa0a468e287da4", "artifact_status": null } }, @@ -7914,23 +7912,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-69", + "trail_name": "promote-all-25", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685", "artifact_status": null } } @@ -7956,8 +7954,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "creator-ci", - "trail_name": "34f14b6fc5d87ff95426046716ec8a09141c13a7", + "flow_name": "web-ci", + "trail_name": "42ca333501c90d2cf36ce24035aa0a468e287da4", "artifact_status": "COMPLIANT" } }, @@ -7965,23 +7963,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-69", + "trail_name": "promote-all-25", "artifact_status": "COMPLIANT" } }, { - "type": "rule_satisfied", + "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685", "artifact_status": "COMPLIANT" } }, { - "type": "rule_not_applicable", + "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685", "artifact_status": "COMPLIANT" } } @@ -7992,69 +7990,71 @@ kosli get snapshot aws-prod --output=json } ], "reasons_for_incompliance": [], - "fingerprint": "f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", + "fingerprint": "d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685", "creationTimestamp": [ - 1781592148 + 1782291035, + 1782291036, + 1782291036 ], "pods": null, "annotation": { "type": "unchanged", - "was": 1, - "now": 1 + "was": 3, + "now": 3 }, - "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", + "flow_name": "web-ci", + "git_commit": "42ca333501c90d2cf36ce24035aa0a468e287da4", + "commit_url": "https://github.com/cyber-dojo/web/commit/42ca333501c90d2cf36ce24035aa0a468e287da4", + "html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci/artifacts/d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685?artifact_id=ad37f417-d1a3-4744-a7b9-f2dec951", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci", "deployment_diff": { - "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", + "diff_url": "https://github.com/cyber-dojo/web/compare/47ef6ca4f22445ca7138a4818f8fe3a8b69b81f1...42ca333501c90d2cf36ce24035aa0a468e287da4", + "previous_git_commit": "47ef6ca4f22445ca7138a4818f8fe3a8b69b81f1", + "previous_fingerprint": "82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:47ef6ca@sha256:82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/creator/commit/a288de54e3751244517d5e04fc73622e5363257d", - "previous_trail_name": "a288de54e3751244517d5e04fc73622e5363257d", - "previous_template_reference_name": "creator" + "previous_git_commit_url": "https://github.com/cyber-dojo/web/commit/47ef6ca4f22445ca7138a4818f8fe3a8b69b81f1", + "previous_trail_name": "47ef6ca4f22445ca7138a4818f8fe3a8b69b81f1", + "previous_template_reference_name": "web" }, - "commit_lead_time": 849.0, + "commit_lead_time": 61115.0, "flows": [ { - "flow_name": "creator-ci", - "trail_name": "34f14b6fc5d87ff95426046716ec8a09141c13a7", - "template_reference_name": "creator", - "git_commit": "34f14b6fc5d87ff95426046716ec8a09141c13a7", - "commit_url": "https://github.com/cyber-dojo/creator/commit/34f14b6fc5d87ff95426046716ec8a09141c13a7", + "flow_name": "web-ci", + "trail_name": "42ca333501c90d2cf36ce24035aa0a468e287da4", + "template_reference_name": "web", + "git_commit": "42ca333501c90d2cf36ce24035aa0a468e287da4", + "commit_url": "https://github.com/cyber-dojo/web/commit/42ca333501c90d2cf36ce24035aa0a468e287da4", "git_commit_info": { - "sha1": "34f14b6fc5d87ff95426046716ec8a09141c13a7", - "message": "Merge pull request #23 from cyber-dojo/remove-infra-upgrade-notice\n\nRemove infrastructure upgrade notice", + "sha1": "42ca333501c90d2cf36ce24035aa0a468e287da4", + "message": "Replace attest-generic with attest-decision for snyk (#365)", "author": "Jon Jagger ", "branch": "", - "timestamp": 1781591299.0, - "url": "https://github.com/cyber-dojo/creator/commit/34f14b6fc5d87ff95426046716ec8a09141c13a7" + "timestamp": 1782229920.0, + "url": "https://github.com/cyber-dojo/web/commit/42ca333501c90d2cf36ce24035aa0a468e287da4" }, - "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", + "html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci/artifacts/d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685?artifact_id=ad37f417-d1a3-4744-a7b9-f2dec951", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci", "deployment_diff": { - "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", + "diff_url": "https://github.com/cyber-dojo/web/compare/47ef6ca4f22445ca7138a4818f8fe3a8b69b81f1...42ca333501c90d2cf36ce24035aa0a468e287da4", + "previous_git_commit": "47ef6ca4f22445ca7138a4818f8fe3a8b69b81f1", + "previous_fingerprint": "82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:47ef6ca@sha256:82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/creator/commit/a288de54e3751244517d5e04fc73622e5363257d", - "previous_trail_name": "a288de54e3751244517d5e04fc73622e5363257d", - "previous_template_reference_name": "creator" + "previous_git_commit_url": "https://github.com/cyber-dojo/web/commit/47ef6ca4f22445ca7138a4818f8fe3a8b69b81f1", + "previous_trail_name": "47ef6ca4f22445ca7138a4818f8fe3a8b69b81f1", + "previous_template_reference_name": "web" }, - "commit_lead_time": 849.0, + "commit_lead_time": 61115.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "production-promotion", - "trail_name": "promotion-one-69", - "template_reference_name": "creator", + "trail_name": "promote-all-25", + "template_reference_name": "web", "git_commit": "01dd4c6406d6655898ef2236875ec9f67091c792", "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/01dd4c6406d6655898ef2236875ec9f67091c792", "git_commit_info": { @@ -8065,88 +8065,88 @@ kosli get snapshot aws-prod --output=json "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/f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43?artifact_id=9c9caf33-c2d0-4732-b203-7de62808", + "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685?artifact_id=a1ef7991-492d-4e61-889e-bf6f9f98", "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/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_fingerprint": "82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:47ef6ca@sha256:82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, "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" + "previous_trail_name": "promote-all-24", + "previous_template_reference_name": "web" }, - "commit_lead_time": 178634.0, + "commit_lead_time": 877521.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", - "template_reference_name": "creator", - "git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685", + "template_reference_name": "web", + "git_commit": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071", "git_commit_info": { - "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.", + "sha1": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "message": "Replace attest-generic with attest-decision", "author": "JonJagger ", "branch": "main", - "timestamp": 1781594940.0, - "url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26" + "timestamp": 1782227560.0, + "url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43?artifact_id=9934654a-4a40-44dd-89af-3720110c", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685?artifact_id=4f730427-cb10-4153-bf6f-9f9117d8", + "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/7172cc22125f480a9f12127edb481a4d84aabea3...00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_git_commit": "7172cc22125f480a9f12127edb481a4d84aabea3", - "previous_fingerprint": "e8b5e25c5550658cdbd2b8339684b18bce86aaf6538611124ff62f2582c2e5b6", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:a288de5@sha256:e8b5e25c5550658cdbd2b8339684b18bce86aaf6538611124ff62f2582c2e5b6", + "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/00c479764cb9eca038fdaaaef108672d0bb0ed26...c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "previous_git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", + "previous_fingerprint": "82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:47ef6ca@sha256:82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", "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" + "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", + "previous_trail_name": "web-82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", + "previous_template_reference_name": "web" }, - "commit_lead_time": -2792.0, + "commit_lead_time": 63475.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", - "template_reference_name": "creator", - "git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685", + "template_reference_name": "web", + "git_commit": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071", "git_commit_info": { - "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.", + "sha1": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "message": "Replace attest-generic with attest-decision", "author": "JonJagger ", "branch": "main", - "timestamp": 1781594940.0, - "url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26" + "timestamp": 1782227560.0, + "url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43?artifact_id=3aa34d39-8c34-4b04-bd8d-a55690df", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685?artifact_id=b9671c71-23bf-45cc-99c1-eebc1680", + "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/7172cc22125f480a9f12127edb481a4d84aabea3...00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_git_commit": "7172cc22125f480a9f12127edb481a4d84aabea3", - "previous_fingerprint": "e8b5e25c5550658cdbd2b8339684b18bce86aaf6538611124ff62f2582c2e5b6", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:a288de5@sha256:e8b5e25c5550658cdbd2b8339684b18bce86aaf6538611124ff62f2582c2e5b6", + "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/00c479764cb9eca038fdaaaef108672d0bb0ed26...c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "previous_git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", + "previous_fingerprint": "29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:f66cc5c@sha256:29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4", "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" + "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", + "previous_trail_name": "web-29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4", + "previous_template_reference_name": "web" }, - "commit_lead_time": -2792.0, + "commit_lead_time": 63475.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] } ], "ecs_context": { - "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/fe497fd2bf964fa5b33898a96aff2883", + "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/b3d139f82a754ee286ae50b33859f6e6", "cluster_name": null, "service_name": null } @@ -8206,7 +8206,7 @@ kosli get snapshot aws-prod --output=json { "id": "93d8505f-bce5-4c7c-a2c8-f98236c8", "name": "snyk-scan-aws-prod", - "version": 2, + "version": 3, "policy_dump": { "schema_version": "1", "artifacts": { @@ -8224,7 +8224,7 @@ kosli get snapshot aws-prod --output=json "text": "flow.name == \"snyk-aws-prod-per-artifact\"" }, "name": "snyk-container-scan", - "type": "generic", + "type": "decision", "must_be_compliant": true, "for_control": null } @@ -8236,7 +8236,7 @@ kosli get snapshot aws-prod --output=json { "id": "bdb8a802-a406-4c76-b289-3fe30be3", "name": "production-promotion", - "version": 1, + "version": 2, "policy_dump": { "schema_version": "1", "artifacts": { @@ -8254,7 +8254,7 @@ kosli get snapshot aws-prod --output=json "text": "flow.name == \"production-promotion\"" }, "name": "snyk-scan", - "type": "generic", + "type": "decision", "must_be_compliant": true, "for_control": null } diff --git a/client_reference/kosli_list_environments.md b/client_reference/kosli_list_environments.md index 79d6871..5ff7bc2 100644 --- a/client_reference/kosli_list_environments.md +++ b/client_reference/kosli_list_environments.md @@ -63,9 +63,9 @@ kosli list environments --output=json "name": "aws-beta", "type": "ECS", "description": "The ECS cluster for staging cyber-dojo", - "last_modified_at": 1782125363.8645833, - "last_reported_at": 1782125363.8645833, - "last_changed_at": 1782112044.1988242, + "last_modified_at": 1782296364.0559509, + "last_reported_at": 1782296364.0559509, + "last_changed_at": 1782295043.9717822, "state": true, "include_scaling": false, "tags": { @@ -84,9 +84,9 @@ kosli list environments --output=json "name": "aws-prod", "type": "ECS", "description": "The ECS cluster for production cyber-dojo", - "last_modified_at": 1782125338.5887742, - "last_reported_at": 1782125338.5887742, - "last_changed_at": 1782112078.6734855, + "last_modified_at": 1782296338.5634644, + "last_reported_at": 1782296338.5634644, + "last_changed_at": 1782295018.5650613, "state": true, "include_scaling": false, "tags": { @@ -106,9 +106,9 @@ kosli list environments --output=json "name": "production", "type": "logical", "description": "Production environments for cyber-dojo", - "last_modified_at": 1782112078.6734855, + "last_modified_at": 1782295018.5650613, "last_reported_at": null, - "last_changed_at": 1782112078.6734855, + "last_changed_at": 1782295018.5650613, "state": true, "include_scaling": false, "tags": {}, @@ -118,6 +118,20 @@ kosli list environments --output=json "terraform-state-differ-prod" ] }, + { + "org": "cyber-dojo", + "name": "terraform-drift-detection-staging", + "type": "server", + "description": "For the detection of drift of the Infrastructure-as-code components", + "last_modified_at": 1782296082.4653108, + "last_reported_at": null, + "last_changed_at": null, + "state": null, + "include_scaling": false, + "tags": {}, + "policies": [], + "included_environments": null + }, { "org": "cyber-dojo", "name": "terraform-state-differ-beta", diff --git a/client_reference/kosli_list_flows.md b/client_reference/kosli_list_flows.md index ea36341..ab85bb3 100644 --- a/client_reference/kosli_list_flows.md +++ b/client_reference/kosli_list_flows.md @@ -67,7 +67,7 @@ kosli list flows --output=json "description": "Custom exercises choices", "visibility": "private", "org": "cyber-dojo", - "template": "version: 1\n\ntrail:\n attestations:\n - name: pull-request\n type: pull_request\n artifacts:\n - name: custom-start-points\n attestations:\n - name: snyk-container-scan\n type: generic\n", + "template": "version: 1\n\ntrail:\n attestations:\n - name: pull-request\n type: pull_request\n artifacts:\n - name: custom-start-points\n attestations:\n - name: snyk-container-scan\n type: decision\n", "repo_url": "https://github.com/cyber-dojo/custom-start-points", "tags": { "ci": "github", @@ -81,7 +81,7 @@ kosli list flows --output=json "description": "UX for a group practice dashboard", "visibility": "private", "org": "cyber-dojo", - "template": "version: 1\n\ntrail:\n attestations:\n - name: pull-request\n type: pull_request\n artifacts:\n - name: dashboard\n attestations:\n - name: rubocop-lint\n type: junit\n - name: snyk-container-scan\n type: generic\n - name: sonarcloud-scan\n type: sonar\n - name: unit-test\n type: junit\n - name: unit-test-coverage\n type: generic\n", + "template": "version: 1\n\ntrail:\n attestations:\n - name: pull-request\n type: pull_request\n artifacts:\n - name: dashboard\n attestations:\n - name: rubocop-lint\n type: junit\n - name: snyk-container-scan\n type: decision\n - name: sonarcloud-scan\n type: sonar\n - name: unit-test\n type: junit\n - name: unit-test-coverage\n type: generic\n", "repo_url": "https://github.com/cyber-dojo/dashboard", "tags": { "ci": "github", @@ -95,7 +95,7 @@ kosli list flows --output=json "description": "Diff files from two traffic-lights", "visibility": "private", "org": "cyber-dojo", - "template": "version: 1\n\ntrail:\n attestations:\n - name: pull-request\n type: pull_request\n artifacts:\n - name: differ\n attestations:\n - name: rubocop-lint\n type: junit\n - name: unit-test\n type: junit\n - name: unit-test-metrics\n type: custom:test-metrics\n - name: unit-test-coverage-metrics\n type: custom:coverage-metrics\n - name: integration-test\n type: junit\n - name: integration-test-metrics\n type: custom:test-metrics\n - name: integration-test-coverage-metrics\n type: custom:coverage-metrics\n - name: sonarcloud-scan\n type: sonar\n - name: snyk-container-scan\n type: generic\n", + "template": "version: 1\n\ntrail:\n attestations:\n - name: pull-request\n type: pull_request\n artifacts:\n - name: differ\n attestations:\n - name: rubocop-lint\n type: junit\n - name: unit-test\n type: junit\n - name: unit-test-metrics\n type: custom:test-metrics\n - name: unit-test-coverage-metrics\n type: custom:coverage-metrics\n - name: integration-test\n type: junit\n - name: integration-test-metrics\n type: custom:test-metrics\n - name: integration-test-coverage-metrics\n type: custom:coverage-metrics\n - name: sonarcloud-scan\n type: sonar\n - name: snyk-container-scan\n type: decision\n", "repo_url": "https://github.com/cyber-dojo/differ", "tags": { "ci": "github", @@ -127,7 +127,7 @@ kosli list flows --output=json "description": "Exercises choices", "visibility": "private", "org": "cyber-dojo", - "template": "version: 1\n\ntrail:\n attestations:\n - name: pull-request\n type: pull_request\n artifacts:\n - name: exercises-start-points\n attestations:\n - name: snyk-container-scan\n type: generic\n", + "template": "version: 1\n\ntrail:\n attestations:\n - name: pull-request\n type: pull_request\n artifacts:\n - name: exercises-start-points\n attestations:\n - name: snyk-container-scan\n type: decision\n", "repo_url": "https://github.com/cyber-dojo/exercises-start-points", "tags": { "ci": "github", @@ -141,7 +141,7 @@ kosli list flows --output=json "description": "Language+TestFramework choices", "visibility": "private", "org": "cyber-dojo", - "template": "version: 1\n\ntrail:\n attestations:\n - name: pull-request\n type: pull_request\n artifacts:\n - name: languages-start-points\n attestations:\n - name: snyk-container-scan\n type: generic\n", + "template": "version: 1\n\ntrail:\n attestations:\n - name: pull-request\n type: pull_request\n artifacts:\n - name: languages-start-points\n attestations:\n - name: snyk-container-scan\n type: decision\n", "repo_url": "https://github.com/cyber-dojo/languages-start-points", "tags": { "ci": "github", @@ -191,7 +191,7 @@ kosli list flows --output=json "description": "Reverse proxy", "visibility": "private", "org": "cyber-dojo", - "template": "version: 1\n\ntrail:\n attestations:\n - name: pull-request\n type: pull_request\n artifacts:\n - name: nginx\n attestations:\n - name: snyk-container-scan\n type: generic\n", + "template": "version: 1\n\ntrail:\n attestations:\n - name: pull-request\n type: pull_request\n artifacts:\n - name: nginx\n attestations:\n - name: snyk-container-scan\n type: decision\n", "repo_url": "https://github.com/cyber-dojo/nginx", "tags": { "ci": "github", @@ -205,7 +205,7 @@ kosli list flows --output=json "description": "Promotes sets of Artifacts from aws-beta to aws-prod", "visibility": "private", "org": "cyber-dojo", - "template": "version: 1\n\ntrail:\n attestations:\n - name: one-promotion\n type: generic\n", + "template": "version: 1\n\ntrail:\n attestations:\n - name: all-promotions\n type: generic\n", "repo_url": "https://github.com/cyber-dojo/aws-prod-co-promotion", "tags": { "ci": "github", @@ -228,7 +228,7 @@ kosli list flows --output=json "description": "Test runner", "visibility": "private", "org": "cyber-dojo", - "template": "version: 1\n\ntrail:\n attestations:\n - name: pull-request\n type: pull_request\n artifacts:\n - name: runner\n attestations:\n - name: rubocop-lint\n type: junit\n\n - name: snyk-container-scan\n type: generic\n\n - name: unit-test\n type: junit\n - name: unit-test-metrics\n type: custom:test-metrics\n - name: unit-test-coverage-metrics\n type: custom:coverage-metrics\n\n - name: integration-test\n type: junit\n - name: integration-test-metrics\n type: custom:test-metrics\n - name: integration-test-coverage-metrics\n type: custom:coverage-metrics\n", + "template": "version: 1\n\ntrail:\n attestations:\n - name: pull-request\n type: pull_request\n artifacts:\n - name: runner\n attestations:\n - name: rubocop-lint\n type: junit\n\n - name: snyk-container-scan\n type: decision\n\n - name: unit-test\n type: junit\n - name: unit-test-metrics\n type: custom:test-metrics\n - name: unit-test-coverage-metrics\n type: custom:coverage-metrics\n\n - name: integration-test\n type: junit\n - name: integration-test-metrics\n type: custom:test-metrics\n - name: integration-test-coverage-metrics\n type: custom:coverage-metrics\n", "repo_url": "https://github.com/cyber-dojo/runner", "tags": { "ci": "github", @@ -242,7 +242,7 @@ kosli list flows --output=json "description": "Group/Kata model+persistence", "visibility": "private", "org": "cyber-dojo", - "template": "version: 1\n\ntrail:\n attestations:\n - name: pull-request\n type: pull_request\n artifacts:\n - name: saver\n attestations:\n - name: snyk-container-scan\n type: generic\n\n - name: unit-test\n type: junit\n - name: unit-test-metrics\n type: custom:test-metrics\n - name: unit-test-coverage-metrics\n type: custom:coverage-metrics\n - name: integration-test\n type: junit\n - name: integration-test-metrics\n type: custom:test-metrics\n - name: integration-test-coverage-metrics\n type: custom:coverage-metrics\n\n", + "template": "version: 1\n\ntrail:\n attestations:\n - name: pull-request\n type: pull_request\n artifacts:\n - name: saver\n attestations:\n - name: snyk-container-scan\n type: decision\n\n - name: unit-test\n type: junit\n - name: unit-test-metrics\n type: custom:test-metrics\n - name: unit-test-coverage-metrics\n type: custom:coverage-metrics\n - name: integration-test\n type: junit\n - name: integration-test-metrics\n type: custom:test-metrics\n - name: integration-test-coverage-metrics\n type: custom:coverage-metrics\n\n", "repo_url": "https://github.com/cyber-dojo/saver", "tags": { "ci": "github", @@ -321,12 +321,12 @@ kosli list flows --output=json } }, { - "name": "terraform-base-infra-prs", - "description": "Kosli flow to track terraform PRs for base infra", + "name": "terraform-apply-prod-terraform-base-infra", + "description": "Kosli flow to track terraform apply being run on the base infra", "visibility": "private", "org": "cyber-dojo", - "template": "version: 1\ntrail:\n attestations:\n - name: tf-plan\n type: generic\n - name: tf-apply-plan\n type: generic\n - name: pull-request\n type: pull_request\n - name: tf-validation\n type: generic", - "repo_url": "", + "template": "version: 1\r\ntrail:\r\n attestations:\r\n - name: terraform-plan\r\n type: generic\r\n - name: terraform-apply\r\n type: generic\r\n - name: pull-request\r\n type: pull_request\r\n artifacts:\r\n - name: terraform-state\r\n - name: drift-plan\r\n", + "repo_url": "https://github.com/cyber-dojo/terraform-base-infra", "tags": {} }, { @@ -334,7 +334,7 @@ kosli list flows --output=json "description": "UX for practicing TDD", "visibility": "private", "org": "cyber-dojo", - "template": "version: 1\n\ntrail:\n attestations:\n - name: pull-request\n type: pull_request\n\n artifacts:\n - name: web\n attestations:\n - name: snyk-container-scan\n type: generic\n - name: provenance-attestation\n type: generic\n - name: sbom\n type: generic\n", + "template": "version: 1\n\ntrail:\n attestations:\n - name: pull-request\n type: pull_request\n\n artifacts:\n - name: web\n attestations:\n - name: snyk-container-scan\n type: decision\n - name: provenance-attestation\n type: generic\n - name: sbom\n type: generic\n", "repo_url": "https://github.com/cyber-dojo/web", "tags": { "ci": "github", diff --git a/client_reference/kosli_list_snapshots.md b/client_reference/kosli_list_snapshots.md index 202b669..0e3a7b3 100644 --- a/client_reference/kosli_list_snapshots.md +++ b/client_reference/kosli_list_snapshots.md @@ -64,109 +64,109 @@ kosli list snapshots aws-prod --output=json ```json [ { - "index": 4814, - "from": 1782112078.6734855, + "index": 4833, + "from": 1782295018.5650613, "to": 0.0, "compliant": true, - "duration": 13318.868420124054 + "duration": 1365.5056719779968 }, { - "index": 4813, - "from": 1782112018.5396478, - "to": 1782112078.6734855, + "index": 4832, + "from": 1782294958.7636094, + "to": 1782295018.5650613, "compliant": true, - "duration": 60.13383769989014 + "duration": 59.80145192146301 }, { - "index": 4812, - "from": 1782111958.6034238, - "to": 1782112018.5396478, - "compliant": true, - "duration": 59.93622398376465 + "index": 4831, + "from": 1782294898.7202442, + "to": 1782294958.7636094, + "compliant": false, + "duration": 60.043365240097046 }, { - "index": 4811, - "from": 1782111898.6284199, - "to": 1782111958.6034238, + "index": 4830, + "from": 1782294418.6282794, + "to": 1782294898.7202442, "compliant": true, - "duration": 59.97500395774841 + "duration": 480.0919647216797 }, { - "index": 4810, - "from": 1782044818.6092193, - "to": 1782111898.6284199, + "index": 4829, + "from": 1782294298.6604407, + "to": 1782294418.6282794, "compliant": true, - "duration": 67080.01920056343 + "duration": 119.96783876419067 }, { - "index": 4809, - "from": 1782044398.7556682, - "to": 1782044818.6092193, + "index": 4828, + "from": 1782291479.0961432, + "to": 1782294298.6604407, "compliant": true, - "duration": 419.8535511493683 + "duration": 2819.564297437668 }, { - "index": 4808, - "from": 1782044338.5470552, - "to": 1782044398.7556682, - "compliant": true, - "duration": 60.20861291885376 + "index": 4827, + "from": 1782291418.655632, + "to": 1782291479.0961432, + "compliant": false, + "duration": 60.44051122665405 }, { - "index": 4807, - "from": 1782023758.6546373, - "to": 1782044338.5470552, - "compliant": true, - "duration": 20579.892417907715 + "index": 4826, + "from": 1782291238.4836733, + "to": 1782291418.655632, + "compliant": false, + "duration": 180.17195868492126 }, { - "index": 4806, - "from": 1782023698.5212252, - "to": 1782023758.6546373, - "compliant": true, - "duration": 60.13341212272644 + "index": 4825, + "from": 1782291178.7075284, + "to": 1782291238.4836733, + "compliant": false, + "duration": 59.77614498138428 }, { - "index": 4805, - "from": 1782023638.8251116, - "to": 1782023698.5212252, - "compliant": true, - "duration": 59.69611358642578 + "index": 4824, + "from": 1782291118.6018608, + "to": 1782291178.7075284, + "compliant": false, + "duration": 60.10566759109497 }, { - "index": 4804, - "from": 1782023578.4854655, - "to": 1782023638.8251116, - "compliant": true, - "duration": 60.339646100997925 + "index": 4823, + "from": 1782291058.5449996, + "to": 1782291118.6018608, + "compliant": false, + "duration": 60.05686116218567 }, { - "index": 4803, - "from": 1781935498.6820252, - "to": 1782023578.4854655, - "compliant": true, - "duration": 88079.80344033241 + "index": 4822, + "from": 1782290520.7159784, + "to": 1782291058.5449996, + "compliant": false, + "duration": 537.8290212154388 }, { - "index": 4802, - "from": 1781935438.6180487, - "to": 1781935498.6820252, + "index": 4821, + "from": 1782289737.7305799, + "to": 1782290520.7159784, "compliant": true, - "duration": 60.063976526260376 + "duration": 782.9853985309601 }, { - "index": 4801, - "from": 1781935378.4333878, - "to": 1781935438.6180487, + "index": 4820, + "from": 1782280318.4011729, + "to": 1782289737.7305799, "compliant": true, - "duration": 60.18466091156006 + "duration": 9419.3294069767 }, { - "index": 4800, - "from": 1781935318.586741, - "to": 1781935378.4333878, + "index": 4819, + "from": 1782280258.6287673, + "to": 1782280318.4011729, "compliant": true, - "duration": 59.846646785736084 + "duration": 59.77240562438965 } ] ``` diff --git a/client_reference/kosli_log_environment.md b/client_reference/kosli_log_environment.md index e303c6c..928028c 100644 --- a/client_reference/kosli_log_environment.md +++ b/client_reference/kosli_log_environment.md @@ -72,11 +72,11 @@ kosli log environment aws-prod --output=json [ { "environment_name": "aws-prod", - "snapshot_index": 4814, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:c248c8e@sha256:a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", - "sha256": "a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", + "snapshot_index": 4833, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:05fa6c1@sha256:5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f", + "sha256": "5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f", "description": "3 instances changed", - "reported_at": 1782112078.6734855, + "reported_at": 1782295018.5650613, "pipeline": "runner-ci", "deployments": [], "flows": [ @@ -89,41 +89,41 @@ kosli log environment aws-prod --output=json "deployments": null }, { - "flow_name": "snyk-aws-prod-per-artifact", + "flow_name": "snyk-aws-beta-per-artifact", "deployments": null }, { - "flow_name": "snyk-aws-beta-per-artifact", + "flow_name": "snyk-aws-prod-per-artifact", "deployments": null } ], "artifact_compliance": true, "snapshot_compliance": true, "type": "updated-provenance", - "code_diff": "https://github.com/cyber-dojo/runner/compare/9cc2a80e1306376b88039715dfdcfc161a0e3904...c248c8e2175307f6906e4a016d09b21d177923bd", + "code_diff": "https://github.com/cyber-dojo/runner/compare/c248c8e2175307f6906e4a016d09b21d177923bd...05fa6c14db21fa6a6f61c0e8ce08e929a28d13cd", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/runner-ci/fingerprint/a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", - "html": "https://app.kosli.com/cyber-dojo/flows/runner-ci/artifacts/a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc?artifact_id=2596689f-18f2-4c1b-b176-64e8b46f" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/runner-ci/fingerprint/5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f", + "html": "https://app.kosli.com/cyber-dojo/flows/runner-ci/artifacts/5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f?artifact_id=6d9685ea-4831-42e9-a40c-e91cafcf" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4814", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4814" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4833", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4833" } } }, { "environment_name": "aws-prod", - "snapshot_index": 4813, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:34f14b6@sha256:f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", - "sha256": "f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", + "snapshot_index": 4832, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:75485ee@sha256:fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", + "sha256": "fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", "description": "1 instance changed", - "reported_at": 1782112018.5396478, - "pipeline": "creator-ci", + "reported_at": 1782294958.7636094, + "pipeline": "exercises-start-points-ci", "deployments": [], "flows": [ { - "flow_name": "creator-ci", + "flow_name": "exercises-start-points-ci", "deployments": null }, { @@ -131,41 +131,41 @@ kosli log environment aws-prod --output=json "deployments": null }, { - "flow_name": "snyk-aws-prod-per-artifact", + "flow_name": "snyk-aws-beta-per-artifact", "deployments": null }, { - "flow_name": "snyk-aws-beta-per-artifact", + "flow_name": "snyk-aws-prod-per-artifact", "deployments": null } ], "artifact_compliance": true, "snapshot_compliance": true, - "type": "updated-provenance", - "code_diff": "https://github.com/cyber-dojo/creator/compare/a288de54e3751244517d5e04fc73622e5363257d...34f14b6fc5d87ff95426046716ec8a09141c13a7", + "type": "became-compliant", + "code_diff": "https://github.com/cyber-dojo/exercises-start-points/compare/11fb35642d6c79603c1979f01d4fae7c1f7f0ce1...75485ee4a18794755de633775a7b56b2b00cd7c9", "_links": { "artifact": { - "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" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/exercises-start-points-ci/fingerprint/fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", + "html": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci/artifacts/fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58?artifact_id=0289c6f2-2ff3-466b-8b94-12e7c2b0" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4813", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4813" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4832", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4832" } } }, { "environment_name": "aws-prod", - "snapshot_index": 4813, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:c248c8e@sha256:a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", - "sha256": "a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", - "description": "3 instances changed", - "reported_at": 1782112018.5396478, - "pipeline": "runner-ci", + "snapshot_index": 4831, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:75485ee@sha256:fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", + "sha256": "fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", + "description": "1 instance changed", + "reported_at": 1782294898.7202442, + "pipeline": "exercises-start-points-ci", "deployments": [], "flows": [ { - "flow_name": "runner-ci", + "flow_name": "exercises-start-points-ci", "deployments": null }, { @@ -181,33 +181,33 @@ kosli log environment aws-prod --output=json "deployments": null } ], - "artifact_compliance": true, - "snapshot_compliance": true, - "type": "updated-provenance", - "code_diff": "https://github.com/cyber-dojo/runner/compare/9cc2a80e1306376b88039715dfdcfc161a0e3904...c248c8e2175307f6906e4a016d09b21d177923bd", + "artifact_compliance": false, + "snapshot_compliance": false, + "type": "became-non-compliant", + "code_diff": "https://github.com/cyber-dojo/exercises-start-points/compare/11fb35642d6c79603c1979f01d4fae7c1f7f0ce1...75485ee4a18794755de633775a7b56b2b00cd7c9", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/runner-ci/fingerprint/a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc", - "html": "https://app.kosli.com/cyber-dojo/flows/runner-ci/artifacts/a08f777df1038d7f01a1ea13420b40be242eda069dc2e23316aa5be5096d20fc?artifact_id=2596689f-18f2-4c1b-b176-64e8b46f" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/exercises-start-points-ci/fingerprint/fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", + "html": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci/artifacts/fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58?artifact_id=0289c6f2-2ff3-466b-8b94-12e7c2b0" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4813", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4813" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4831", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4831" } } }, { "environment_name": "aws-prod", - "snapshot_index": 4813, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:7eeaac4@sha256:7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", - "sha256": "7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", + "snapshot_index": 4831, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:9034c75@sha256:4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6", + "sha256": "4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6", "description": "1 instance changed", - "reported_at": 1782112018.5396478, - "pipeline": "languages-start-points-ci", + "reported_at": 1782294898.7202442, + "pipeline": "creator-ci", "deployments": [], "flows": [ { - "flow_name": "languages-start-points-ci", + "flow_name": "creator-ci", "deployments": null }, { @@ -215,41 +215,41 @@ kosli log environment aws-prod --output=json "deployments": null }, { - "flow_name": "snyk-aws-prod-per-artifact", + "flow_name": "snyk-aws-beta-per-artifact", "deployments": null }, { - "flow_name": "snyk-aws-beta-per-artifact", + "flow_name": "snyk-aws-prod-per-artifact", "deployments": null } ], "artifact_compliance": true, - "snapshot_compliance": true, + "snapshot_compliance": false, "type": "updated-provenance", - "code_diff": "https://github.com/cyber-dojo/languages-start-points/compare/c1cd97e11606d0a705df6619424c9ad8b07a57ca...7eeaac4c57e26887e4d027aa3c815bc2f214f934", + "code_diff": "https://github.com/cyber-dojo/creator/compare/34f14b6fc5d87ff95426046716ec8a09141c13a7...9034c75cdb2846757cff32d24e1c5e91f40060a8", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/languages-start-points-ci/fingerprint/7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", - "html": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci/artifacts/7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f?artifact_id=216380b8-1166-4cd0-a052-709e8f0f" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/creator-ci/fingerprint/4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6", + "html": "https://app.kosli.com/cyber-dojo/flows/creator-ci/artifacts/4aaeb948517477d75c3077d5749e5c470e787b94f583b2cf95c22eb676c2fce6?artifact_id=e8a01a2b-b310-4700-bd41-33c1c4f0" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4813", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4813" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4831", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4831" } } }, { "environment_name": "aws-prod", - "snapshot_index": 4812, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:ff89dd9@sha256:c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", - "sha256": "c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", + "snapshot_index": 4831, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:33b1b15@sha256:c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3", + "sha256": "c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3", "description": "1 instance changed", - "reported_at": 1782111958.6034238, - "pipeline": "dashboard-ci", + "reported_at": 1782294898.7202442, + "pipeline": "nginx-ci", "deployments": [], "flows": [ { - "flow_name": "dashboard-ci", + "flow_name": "nginx-ci", "deployments": null }, { @@ -257,36 +257,36 @@ kosli log environment aws-prod --output=json "deployments": null }, { - "flow_name": "snyk-aws-prod-per-artifact", + "flow_name": "snyk-aws-beta-per-artifact", "deployments": null }, { - "flow_name": "snyk-aws-beta-per-artifact", + "flow_name": "snyk-aws-prod-per-artifact", "deployments": null } ], "artifact_compliance": true, - "snapshot_compliance": true, + "snapshot_compliance": false, "type": "updated-provenance", - "code_diff": "https://github.com/cyber-dojo/dashboard/compare/87f560f87fb2bc242ee5c58d74d0e209d71cd338...ff89dd9bd1bfc5441854450adcf25d5aad9508f4", + "code_diff": "https://github.com/cyber-dojo/nginx/compare/635027125d65a253a9c98bfd97d22cb3abbefa5a...33b1b15247724eee83ab795f3d586b4eac93b456", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/dashboard-ci/fingerprint/c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", - "html": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci/artifacts/c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db?artifact_id=ff697a42-4717-4727-b9de-e3d77870" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/nginx-ci/fingerprint/c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3", + "html": "https://app.kosli.com/cyber-dojo/flows/nginx-ci/artifacts/c0101e646536ba14826d25c3ae7f16e2aef596f6bbc60dd97405fdbd930ddfb3?artifact_id=a6329b0b-72c5-43cd-a27a-e2f52c79" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4812", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4812" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4831", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4831" } } }, { "environment_name": "aws-prod", - "snapshot_index": 4812, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:3ab1ef8@sha256:c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", - "sha256": "c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", + "snapshot_index": 4831, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:3e563ea@sha256:ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38", + "sha256": "ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38", "description": "1 instance changed", - "reported_at": 1782111958.6034238, + "reported_at": 1782294898.7202442, "pipeline": "differ-ci", "deployments": [], "flows": [ @@ -299,41 +299,41 @@ kosli log environment aws-prod --output=json "deployments": null }, { - "flow_name": "snyk-aws-prod-per-artifact", + "flow_name": "snyk-aws-beta-per-artifact", "deployments": null }, { - "flow_name": "snyk-aws-beta-per-artifact", + "flow_name": "snyk-aws-prod-per-artifact", "deployments": null } ], "artifact_compliance": true, - "snapshot_compliance": true, + "snapshot_compliance": false, "type": "updated-provenance", - "code_diff": "https://github.com/cyber-dojo/differ/compare/981dcfc34f584d46afb46b217b47ce68f2f14a08...3ab1ef84cb2243f184502ddb7f491e24d4ced1c1", + "code_diff": "https://github.com/cyber-dojo/differ/compare/3ab1ef84cb2243f184502ddb7f491e24d4ced1c1...3e563eacf76b48caaf2f19f29472544199df8a00", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/differ-ci/fingerprint/c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", - "html": "https://app.kosli.com/cyber-dojo/flows/differ-ci/artifacts/c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd?artifact_id=c25bc6ba-cbfd-4ad5-b5ab-d4bca4e9" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/differ-ci/fingerprint/ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38", + "html": "https://app.kosli.com/cyber-dojo/flows/differ-ci/artifacts/ff893d25180aa091de68a42598a76286843ff8ff590c28dfbb62fd76cb0fcd38?artifact_id=68ef150a-fe86-4b14-845b-7bcb814f" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4812", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4812" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4831", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4831" } } }, { "environment_name": "aws-prod", - "snapshot_index": 4811, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:843d655@sha256:58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", - "sha256": "58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", + "snapshot_index": 4831, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:bb8a712@sha256:5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", + "sha256": "5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", "description": "1 instance changed", - "reported_at": 1782111898.6284199, - "pipeline": "custom-start-points-ci", + "reported_at": 1782294898.7202442, + "pipeline": "languages-start-points-ci", "deployments": [], "flows": [ { - "flow_name": "custom-start-points-ci", + "flow_name": "languages-start-points-ci", "deployments": null }, { @@ -350,27 +350,27 @@ 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/6b5c1598cc13c388a0fec71852e6b03bf0696e0b...843d6556ec718da1a1f51ce906c8c5bd6366d691", + "snapshot_compliance": false, + "type": "updated-provenance", + "code_diff": "https://github.com/cyber-dojo/languages-start-points/compare/7eeaac4c57e26887e4d027aa3c815bc2f214f934...bb8a712de74f2fe3edf48169ca072d4eff997564", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/custom-start-points-ci/fingerprint/58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b", - "html": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci/artifacts/58af6b791d447d089f43c716ef61fe81521af92cd982435968fe4c47ce800c7b?artifact_id=a467f7de-b8f1-45fe-a7aa-3479ee90" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/languages-start-points-ci/fingerprint/5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", + "html": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci/artifacts/5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38?artifact_id=531ae2f0-0b5f-44b9-8253-159ba612" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4811", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4811" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4831", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4831" } } }, { "environment_name": "aws-prod", - "snapshot_index": 4811, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:ff89dd9@sha256:c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", - "sha256": "c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", + "snapshot_index": 4831, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:0e0b4c1@sha256:76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f", + "sha256": "76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f", "description": "1 instance changed", - "reported_at": 1782111898.6284199, + "reported_at": 1782294898.7202442, "pipeline": "dashboard-ci", "deployments": [], "flows": [ @@ -392,27 +392,27 @@ kosli log environment aws-prod --output=json } ], "artifact_compliance": true, - "snapshot_compliance": true, + "snapshot_compliance": false, "type": "updated-provenance", - "code_diff": "https://github.com/cyber-dojo/dashboard/compare/87f560f87fb2bc242ee5c58d74d0e209d71cd338...ff89dd9bd1bfc5441854450adcf25d5aad9508f4", + "code_diff": "https://github.com/cyber-dojo/dashboard/compare/ff89dd9bd1bfc5441854450adcf25d5aad9508f4...0e0b4c1c45ffb25251bbd2b27d892c2e3f810efa", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/dashboard-ci/fingerprint/c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db", - "html": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci/artifacts/c3e10b6879caa50792774c8d5eccf54ce23cbd730bee922846abf28fa534d5db?artifact_id=ff697a42-4717-4727-b9de-e3d77870" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/dashboard-ci/fingerprint/76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f", + "html": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci/artifacts/76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f?artifact_id=5bbbda58-e526-4b64-9f80-6adcda47" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4811", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4811" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4831", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4831" } } }, { "environment_name": "aws-prod", - "snapshot_index": 4811, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:47ef6ca@sha256:82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", - "sha256": "82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", + "snapshot_index": 4831, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:42ca333@sha256:d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685", + "sha256": "d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685", "description": "3 instances changed", - "reported_at": 1782111898.6284199, + "reported_at": 1782294898.7202442, "pipeline": "web-ci", "deployments": [], "flows": [ @@ -425,41 +425,41 @@ kosli log environment aws-prod --output=json "deployments": null }, { - "flow_name": "snyk-aws-prod-per-artifact", + "flow_name": "snyk-aws-beta-per-artifact", "deployments": null }, { - "flow_name": "snyk-aws-beta-per-artifact", + "flow_name": "snyk-aws-prod-per-artifact", "deployments": null } ], "artifact_compliance": true, - "snapshot_compliance": true, - "type": "changed", - "code_diff": "https://github.com/cyber-dojo/web/compare/f66cc5c51fcc19b04b36e0542b36b6cc52515d3c...47ef6ca4f22445ca7138a4818f8fe3a8b69b81f1", + "snapshot_compliance": false, + "type": "updated-provenance", + "code_diff": "https://github.com/cyber-dojo/web/compare/47ef6ca4f22445ca7138a4818f8fe3a8b69b81f1...42ca333501c90d2cf36ce24035aa0a468e287da4", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/web-ci/fingerprint/82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f", - "html": "https://app.kosli.com/cyber-dojo/flows/web-ci/artifacts/82bd54f6d6cce8a290b0dbb106177c731ace68e6d1829c91e969de8d841d125f?artifact_id=87b6ce7f-f34c-485b-8d6f-15a460ab" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/web-ci/fingerprint/d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685", + "html": "https://app.kosli.com/cyber-dojo/flows/web-ci/artifacts/d7112bc0d70f56933b10c90b29e3d47abeaff64b9c95f2b53882f7d3ec819685?artifact_id=ad37f417-d1a3-4744-a7b9-f2dec951" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4811", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4811" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4831", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4831" } } }, { "environment_name": "aws-prod", - "snapshot_index": 4811, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:34f14b6@sha256:f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", - "sha256": "f221996be414b7698b15bfe68d143c90896dc70431099bd42ecc594127087c43", + "snapshot_index": 4831, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:a35d092@sha256:5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e", + "sha256": "5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e", "description": "1 instance changed", - "reported_at": 1782111898.6284199, - "pipeline": "creator-ci", + "reported_at": 1782294898.7202442, + "pipeline": "saver-ci", "deployments": [], "flows": [ { - "flow_name": "creator-ci", + "flow_name": "saver-ci", "deployments": null }, { @@ -476,32 +476,32 @@ kosli log environment aws-prod --output=json } ], "artifact_compliance": true, - "snapshot_compliance": true, + "snapshot_compliance": false, "type": "updated-provenance", - "code_diff": "https://github.com/cyber-dojo/creator/compare/a288de54e3751244517d5e04fc73622e5363257d...34f14b6fc5d87ff95426046716ec8a09141c13a7", + "code_diff": "https://github.com/cyber-dojo/saver/compare/fbae360261d949b25a66a927921e757d4d064543...a35d09232116daff39d0f939cb133edc5750e2a1", "_links": { "artifact": { - "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" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/saver-ci/fingerprint/5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e", + "html": "https://app.kosli.com/cyber-dojo/flows/saver-ci/artifacts/5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e?artifact_id=85ae3f6e-d663-406b-9d5a-fcf95308" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4811", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4811" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4831", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4831" } } }, { "environment_name": "aws-prod", - "snapshot_index": 4811, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:11fb356@sha256:df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", - "sha256": "df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", + "snapshot_index": 4831, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:514f79a@sha256:311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", + "sha256": "311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", "description": "1 instance changed", - "reported_at": 1782111898.6284199, - "pipeline": "exercises-start-points-ci", + "reported_at": 1782294898.7202442, + "pipeline": "custom-start-points-ci", "deployments": [], "flows": [ { - "flow_name": "exercises-start-points-ci", + "flow_name": "custom-start-points-ci", "deployments": null }, { @@ -518,32 +518,32 @@ 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/b8e5cbf56e7fc03becdeee6a1d493c0231fa2d0d...11fb35642d6c79603c1979f01d4fae7c1f7f0ce1", + "snapshot_compliance": false, + "type": "updated-provenance", + "code_diff": "https://github.com/cyber-dojo/custom-start-points/compare/843d6556ec718da1a1f51ce906c8c5bd6366d691...514f79a280dee08bf889a4a4fdf41c9d2f231348", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/exercises-start-points-ci/fingerprint/df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443", - "html": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci/artifacts/df3c3018338b58650f75291ce06fa18e054b88be2a19520e87208dcfc00e1443?artifact_id=6e7dfa64-c5c1-4a47-98f2-5e61c7b4" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/custom-start-points-ci/fingerprint/311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", + "html": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci/artifacts/311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797?artifact_id=b20812a6-ee26-4984-97e9-87c4be75" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4811", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4811" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4831", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4831" } } }, { "environment_name": "aws-prod", - "snapshot_index": 4811, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:3ab1ef8@sha256:c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", - "sha256": "c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", - "description": "1 instance changed", - "reported_at": 1782111898.6284199, - "pipeline": "differ-ci", + "snapshot_index": 4830, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:05fa6c1@sha256:5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f", + "sha256": "5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f", + "description": "3 instances changed", + "reported_at": 1782294418.6282794, + "pipeline": "runner-ci", "deployments": [], "flows": [ { - "flow_name": "differ-ci", + "flow_name": "runner-ci", "deployments": null }, { @@ -553,43 +553,35 @@ kosli log environment aws-prod --output=json { "flow_name": "snyk-aws-beta-per-artifact", "deployments": null - }, - { - "flow_name": "snyk-aws-prod-per-artifact", - "deployments": null } ], "artifact_compliance": true, "snapshot_compliance": true, "type": "updated-provenance", - "code_diff": "https://github.com/cyber-dojo/differ/compare/981dcfc34f584d46afb46b217b47ce68f2f14a08...3ab1ef84cb2243f184502ddb7f491e24d4ced1c1", + "code_diff": "https://github.com/cyber-dojo/runner/compare/c248c8e2175307f6906e4a016d09b21d177923bd...05fa6c14db21fa6a6f61c0e8ce08e929a28d13cd", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/differ-ci/fingerprint/c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd", - "html": "https://app.kosli.com/cyber-dojo/flows/differ-ci/artifacts/c012ad13f83df1701223f5e5d3a88e76cae4e3fd3662255f2b48ed444eea65cd?artifact_id=c25bc6ba-cbfd-4ad5-b5ab-d4bca4e9" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/runner-ci/fingerprint/5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f", + "html": "https://app.kosli.com/cyber-dojo/flows/runner-ci/artifacts/5d093e9ba47c05046427ca26f9eb579f593c98c713695c00ff5206e88e44523f?artifact_id=6d9685ea-4831-42e9-a40c-e91cafcf" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4811", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4811" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4830", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4830" } } }, { "environment_name": "aws-prod", - "snapshot_index": 4811, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:fbae360@sha256:b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", - "sha256": "b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", + "snapshot_index": 4829, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:bb8a712@sha256:5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", + "sha256": "5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", "description": "1 instance changed", - "reported_at": 1782111898.6284199, - "pipeline": "saver-ci", + "reported_at": 1782294298.6604407, + "pipeline": "languages-start-points-ci", "deployments": [], "flows": [ { - "flow_name": "saver-ci", - "deployments": null - }, - { - "flow_name": "snyk-aws-beta-per-artifact", + "flow_name": "languages-start-points-ci", "deployments": null }, { @@ -597,41 +589,37 @@ kosli log environment aws-prod --output=json "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/saver/compare/8c84facc7fd6a663fe7d40a6b4aff8f13a94d600...fbae360261d949b25a66a927921e757d4d064543", + "type": "updated-provenance", + "code_diff": "https://github.com/cyber-dojo/languages-start-points/compare/7eeaac4c57e26887e4d027aa3c815bc2f214f934...bb8a712de74f2fe3edf48169ca072d4eff997564", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/saver-ci/fingerprint/b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e", - "html": "https://app.kosli.com/cyber-dojo/flows/saver-ci/artifacts/b0ac80b4b90e684564fdda70932166d1ccf8033640242bae23aee17e1a5fed6e?artifact_id=6df95847-0740-4e9e-8795-c960e47b" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/languages-start-points-ci/fingerprint/5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", + "html": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci/artifacts/5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38?artifact_id=531ae2f0-0b5f-44b9-8253-159ba612" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4811", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4811" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4829", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4829" } } }, { "environment_name": "aws-prod", - "snapshot_index": 4811, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:7eeaac4@sha256:7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", - "sha256": "7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", + "snapshot_index": 4829, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:a35d092@sha256:5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e", + "sha256": "5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e", "description": "1 instance changed", - "reported_at": 1782111898.6284199, - "pipeline": "languages-start-points-ci", + "reported_at": 1782294298.6604407, + "pipeline": "saver-ci", "deployments": [], "flows": [ { - "flow_name": "languages-start-points-ci", - "deployments": null - }, - { - "flow_name": "snyk-aws-beta-per-artifact", + "flow_name": "saver-ci", "deployments": null }, { @@ -639,47 +627,43 @@ kosli log environment aws-prod --output=json "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": "updated-provenance", - "code_diff": "https://github.com/cyber-dojo/languages-start-points/compare/c1cd97e11606d0a705df6619424c9ad8b07a57ca...7eeaac4c57e26887e4d027aa3c815bc2f214f934", + "code_diff": "https://github.com/cyber-dojo/saver/compare/fbae360261d949b25a66a927921e757d4d064543...a35d09232116daff39d0f939cb133edc5750e2a1", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/languages-start-points-ci/fingerprint/7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f", - "html": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci/artifacts/7f24a41aacf7c218e09b85fc3ce76512fe891cebe5aa6c88719e70096d0afc0f?artifact_id=216380b8-1166-4cd0-a052-709e8f0f" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/saver-ci/fingerprint/5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e", + "html": "https://app.kosli.com/cyber-dojo/flows/saver-ci/artifacts/5153955367bbc753a61648d385a73f0e391d2a7410e3d55e095da7d69b418b7e?artifact_id=85ae3f6e-d663-406b-9d5a-fcf95308" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4811", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4811" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4829", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4829" } } }, { "environment_name": "aws-prod", - "snapshot_index": 4811, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:6350271@sha256:d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", - "sha256": "d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", + "snapshot_index": 4829, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:0e0b4c1@sha256:76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f", + "sha256": "76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f", "description": "1 instance changed", - "reported_at": 1782111898.6284199, - "pipeline": "nginx-ci", + "reported_at": 1782294298.6604407, + "pipeline": "dashboard-ci", "deployments": [], "flows": [ { - "flow_name": "nginx-ci", + "flow_name": "dashboard-ci", "deployments": null }, { "flow_name": "production-promotion", "deployments": null }, - { - "flow_name": "snyk-aws-prod-per-artifact", - "deployments": null - }, { "flow_name": "snyk-aws-beta-per-artifact", "deployments": null @@ -688,15 +672,15 @@ kosli log environment aws-prod --output=json "artifact_compliance": true, "snapshot_compliance": true, "type": "updated-provenance", - "code_diff": "https://github.com/cyber-dojo/nginx/compare/706526874659341458da5bb21903a6423c0a5a29...635027125d65a253a9c98bfd97d22cb3abbefa5a", + "code_diff": "https://github.com/cyber-dojo/dashboard/compare/ff89dd9bd1bfc5441854450adcf25d5aad9508f4...0e0b4c1c45ffb25251bbd2b27d892c2e3f810efa", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/nginx-ci/fingerprint/d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb", - "html": "https://app.kosli.com/cyber-dojo/flows/nginx-ci/artifacts/d89025511c4f629e8a99d2764f9abc8666eb3353e877f3844d56481e0137cefb?artifact_id=4c204b40-ff5f-45b1-843a-4b42fc65" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/dashboard-ci/fingerprint/76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f", + "html": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci/artifacts/76898630b521e22b13e4bbec9e14ada885b5571f7ef64d721369198a3b77480f?artifact_id=5bbbda58-e526-4b64-9f80-6adcda47" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4811", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4811" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/4829", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/4829" } } } diff --git a/client_reference/overview.md b/client_reference/overview.md index 7b73f86..fd20001 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.28.1**. + This reference was generated from Kosli CLI **v2.28.2**. The Kosli CLI allows you to interact with Kosli from your terminal and CI/CD pipelines.