diff --git a/client_reference/kosli_attest_jira.md b/client_reference/kosli_attest_jira.md index 31a8e30..b38f2b4 100644 --- a/client_reference/kosli_attest_jira.md +++ b/client_reference/kosli_attest_jira.md @@ -41,11 +41,13 @@ If the `--ignore-branch-match` is set, the branch name is not parsed for a match The found issue references will be checked against Jira to confirm their existence. The attestation is reported in all cases, and its compliance status depends on referencing -existing Jira issues. -If you have wrong Jira credentials or wrong Jira-base-url it will be reported as non existing Jira issue. -This is because Jira returns same 404 error code in all cases. When Jira's response shows that it did not -accept the credentials, a warning naming them is printed and the issue is reported as not confirmed rather -than silently as missing; run with `--debug` to see the status Jira returned for each issue. +existing Jira issues. + +A reachable but wrong base URL still surfaces as a non-existent issue, because Jira answers 404 +both for an issue that does not exist and for one you may not view. A base URL that cannot be +reached is reported as not confirmed, with the transport error as the reason. A credential +rejection is likewise detected and reported as not confirmed, with a warning identifying the +credentials. Use `--debug` to see the status Jira returned per issue. The `--jira-issue-fields` can be used to include fields from the jira issue. By default no fields are included. `*all` will give all fields. Using `--jira-issue-fields "*all" --dry-run` will give you diff --git a/client_reference/kosli_attest_sonar.md b/client_reference/kosli_attest_sonar.md index f0ad1a2..8dd609b 100644 --- a/client_reference/kosli_attest_sonar.md +++ b/client_reference/kosli_attest_sonar.md @@ -26,8 +26,8 @@ exponential backoff between retries. Once the results are available they are att 2. Providing the Sonar project key and either the revision or the pull-request ID of the scan (plus the SonarQube server URL if relevant). For branch scans: if running the Kosli CLI in some CI/CD pipeline, the revision is defaulted to the commit SHA. If you are running the command locally, or have overriden the revision in SonarQube via parameters to the Sonar scanner, you can provide the correct revision using the `--sonar-revision` flag. -If the scan ran on a branch other than the project's main branch in SonarQube, also provide the branch name using the `--sonar-branch` flag: -SonarQube searches only the main branch unless it is told otherwise, so without it the scan cannot be found. +If the scan ran on a branch other than the project's main branch in SonarQube, also provide the branch name using the `--sonar-branch` flag. +SonarQube only searches the project's main branch unless told otherwise, so without this flag the scan cannot be found. For pull request scans: provide the pull-request ID using the `--pull-request` flag instead of the revision. Kosli then finds the scan results for the specified project key and revision or pull-request ID. diff --git a/client_reference/kosli_begin_trail.md b/client_reference/kosli_begin_trail.md index 99d54e4..f390523 100644 --- a/client_reference/kosli_begin_trail.md +++ b/client_reference/kosli_begin_trail.md @@ -60,7 +60,7 @@ 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/76610271f641f1a5634465e97f880dfe019e515e/.github/workflows/main.yml#L78), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/runner-ci/trails/76610271f641f1a5634465e97f880dfe019e515e?attestation_id=1). + In [this YAML file](https://github.com/cyber-dojo/runner/blob/976b63e8001ec7441ebc7737ca69f620d47e7ffe/.github/workflows/main.yml#L78), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/runner-ci/trails/976b63e8001ec7441ebc7737ca69f620d47e7ffe?attestation_id=1). View an example of the `kosli begin trail` command in GitLab. diff --git a/client_reference/kosli_create_attestation-type.md b/client_reference/kosli_create_attestation-type.md index 7ee7e79..59b3155 100644 --- a/client_reference/kosli_create_attestation-type.md +++ b/client_reference/kosli_create_attestation-type.md @@ -84,7 +84,7 @@ kosli create attestation-type customTypeName ``` - + ```shell kosli create attestation-type customTypeName --description "Attest that a person meets the age requirements." diff --git a/client_reference/kosli_create_flow.md b/client_reference/kosli_create_flow.md index c3713fe..c86d35e 100644 --- a/client_reference/kosli_create_flow.md +++ b/client_reference/kosli_create_flow.md @@ -46,7 +46,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/76610271f641f1a5634465e97f880dfe019e515e/.github/workflows/main.yml#L62) + In [this YAML file](https://github.com/cyber-dojo/runner/blob/976b63e8001ec7441ebc7737ca69f620d47e7ffe/.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 6f2f73a..8be0b2c 100644 --- a/client_reference/kosli_diff_snapshots.md +++ b/client_reference/kosli_diff_snapshots.md @@ -66,7 +66,7 @@ kosli diff snapshots aws-beta aws-prod --output=json ```json { "snappish1": { - "snapshot_id": "aws-beta#8212", + "snapshot_id": "aws-beta#8227", "artifacts": [ { "fingerprint": "2827829889b4acc994c3ffbfca250346d5f1f0ddf21847bcbe4864ae484ebe4f", @@ -84,14 +84,6 @@ kosli diff snapshots aws-beta aws-prod --output=json "commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/b12a5c9b17023462d13e81381a69c7ef05f84dc2", "instance_count": 1 }, - { - "fingerprint": "36ad0020c6cd8716c1463808a185ca65379ec8151a9619d72549ee597d86accc", - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:cbe481c@sha256:36ad0020c6cd8716c1463808a185ca65379ec8151a9619d72549ee597d86accc", - "most_recent_timestamp": 1787905359, - "flow": "web-ci", - "commit_url": "https://github.com/cyber-dojo/web/commit/cbe481c4b842f897e4e9e411cd78461a3a12a334", - "instance_count": 3 - }, { "fingerprint": "41aab2a45d074e91162ffde031d094118f0be3bdffa4d769ea24b415f5e8a9d6", "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:f22a30e@sha256:41aab2a45d074e91162ffde031d094118f0be3bdffa4d769ea24b415f5e8a9d6", @@ -108,14 +100,6 @@ kosli diff snapshots aws-beta aws-prod --output=json "commit_url": "https://github.com/cyber-dojo/nginx/commit/9f52d31fe193e246154b5c7c51d0b0cd9e2072c8", "instance_count": 1 }, - { - "fingerprint": "596f149446bad7e8b1dfef6dbf4d036457339b984b22a05082c75ef2bde3e236", - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:7f0fb7b@sha256:596f149446bad7e8b1dfef6dbf4d036457339b984b22a05082c75ef2bde3e236", - "most_recent_timestamp": 1787895830, - "flow": "runner-ci", - "commit_url": "https://github.com/cyber-dojo/runner/commit/7f0fb7b049c2b9ceea5915b4fe780ca4090a289c", - "instance_count": 3 - }, { "fingerprint": "6440151a9419255a47d8f9fb0e610f5af3f555ad68fa84a50f950abae8b098fd", "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/spooler:90c8d98@sha256:6440151a9419255a47d8f9fb0e610f5af3f555ad68fa84a50f950abae8b098fd", @@ -159,7 +143,7 @@ kosli diff snapshots aws-beta aws-prod --output=json ] }, "snappish2": { - "snapshot_id": "aws-prod#5285", + "snapshot_id": "aws-prod#5292", "artifacts": [ { "fingerprint": "1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", @@ -185,14 +169,6 @@ kosli diff snapshots aws-beta aws-prod --output=json "commit_url": "https://github.com/cyber-dojo/differ/commit/108cccf9bccf9af5d455db66c250480b53cbecc7", "instance_count": 1 }, - { - "fingerprint": "6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:5e4b987@sha256:6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", - "most_recent_timestamp": 1786425419, - "flow": "web-ci", - "commit_url": "https://github.com/cyber-dojo/web/commit/5e4b9873df93525c041c386c06e0ab8fc36b6f33", - "instance_count": 3 - }, { "fingerprint": "8e965dda26af2d2e68032c25d68e792c85e0c7bd9814862de231bc4c6e935b81", "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:790d86b@sha256:8e965dda26af2d2e68032c25d68e792c85e0c7bd9814862de231bc4c6e935b81", @@ -233,14 +209,6 @@ kosli diff snapshots aws-beta aws-prod --output=json "commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/258b6d07d2b28ad5cb2ce6d29934997f72380f1a", "instance_count": 1 }, - { - "fingerprint": "f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:7661027@sha256:f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", - "most_recent_timestamp": 1787665129, - "flow": "runner-ci", - "commit_url": "https://github.com/cyber-dojo/runner/commit/76610271f641f1a5634465e97f880dfe019e515e", - "instance_count": 3 - }, { "fingerprint": "ff871c3c8f4b5cfb60012bed1cd7f020b20f17fdabc2db0d8a5c77e75518fce0", "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/spooler:dc7dea2@sha256:ff871c3c8f4b5cfb60012bed1cd7f020b20f17fdabc2db0d8a5c77e75518fce0", @@ -255,7 +223,24 @@ kosli diff snapshots aws-beta aws-prod --output=json "artifacts": [] }, "not-changed": { - "artifacts": [] + "artifacts": [ + { + "fingerprint": "01311f8b73bb61f65baabe680aa75ef9c0e6c5d1697ad81cfd89c89812de6fe9", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:976b63e@sha256:01311f8b73bb61f65baabe680aa75ef9c0e6c5d1697ad81cfd89c89812de6fe9", + "most_recent_timestamp": 1788074312, + "flow": "runner-ci", + "commit_url": "https://github.com/cyber-dojo/runner/commit/976b63e8001ec7441ebc7737ca69f620d47e7ffe", + "instance_count": 3 + }, + { + "fingerprint": "36ad0020c6cd8716c1463808a185ca65379ec8151a9619d72549ee597d86accc", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:cbe481c@sha256:36ad0020c6cd8716c1463808a185ca65379ec8151a9619d72549ee597d86accc", + "most_recent_timestamp": 1788074889, + "flow": "web-ci", + "commit_url": "https://github.com/cyber-dojo/web/commit/cbe481c4b842f897e4e9e411cd78461a3a12a334", + "instance_count": 3 + } + ] } } ``` diff --git a/client_reference/kosli_get_environment.md b/client_reference/kosli_get_environment.md index c641eda..106f560 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": 1788000298.4718719, - "last_reported_at": 1788000298.4718719, - "last_changed_at": 1787991898.5420277, + "last_modified_at": 1788098998.3881242, + "last_reported_at": 1788098998.3881242, + "last_changed_at": 1788074998.5362537, "state": true, "include_scaling": false, "tags": { diff --git a/client_reference/kosli_get_snapshot.md b/client_reference/kosli_get_snapshot.md index b332074..8373781 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": 5285, + "index": 5292, "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": 1787991898.5420277, + "timestamp": 1788074998.5362537, "type": "ECS", "compliant": true, - "html_url": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5285", + "html_url": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5292", "artifacts": [ { - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:258b6d0@sha256:c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:cbe481c@sha256:36ad0020c6cd8716c1463808a185ca65379ec8151a9619d72549ee597d86accc", "compliant": true, "deployments": [], "policy_decisions": [ @@ -100,8 +100,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "258b6d07d2b28ad5cb2ce6d29934997f72380f1a", + "flow_name": "web-ci", + "trail_name": "cbe481c4b842f897e4e9e411cd78461a3a12a334", "artifact_status": null } }, @@ -109,7 +109,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-31", + "trail_name": "promotion-one-161", "artifact_status": null } }, @@ -117,15 +117,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-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", - "artifact_status": null - } - }, - { - "type": "rule_not_applicable", - "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", + "trail_name": "web-36ad0020c6cd8716c1463808a185ca65379ec8151a9619d72549ee597d86accc", "artifact_status": null } } @@ -145,8 +137,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "258b6d07d2b28ad5cb2ce6d29934997f72380f1a", + "flow_name": "web-ci", + "trail_name": "cbe481c4b842f897e4e9e411cd78461a3a12a334", "artifact_status": "COMPLIANT" } }, @@ -154,7 +146,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-31", + "trail_name": "promotion-one-161", "artifact_status": "COMPLIANT" } }, @@ -162,15 +154,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-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", - "artifact_status": "COMPLIANT" - } - }, - { - "type": "rule_not_applicable", - "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", + "trail_name": "web-36ad0020c6cd8716c1463808a185ca65379ec8151a9619d72549ee597d86accc", "artifact_status": "COMPLIANT" } } @@ -195,8 +179,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "258b6d07d2b28ad5cb2ce6d29934997f72380f1a", + "flow_name": "web-ci", + "trail_name": "cbe481c4b842f897e4e9e411cd78461a3a12a334", "artifact_status": null } }, @@ -204,7 +188,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-31", + "trail_name": "promotion-one-161", "artifact_status": null } }, @@ -212,15 +196,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-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", - "artifact_status": null - } - }, - { - "type": "rule_not_applicable", - "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", + "trail_name": "web-36ad0020c6cd8716c1463808a185ca65379ec8151a9619d72549ee597d86accc", "artifact_status": null } } @@ -247,8 +223,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "258b6d07d2b28ad5cb2ce6d29934997f72380f1a", + "flow_name": "web-ci", + "trail_name": "cbe481c4b842f897e4e9e411cd78461a3a12a334", "artifact_status": null } }, @@ -256,7 +232,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-31", + "trail_name": "promotion-one-161", "artifact_status": null } }, @@ -264,15 +240,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", - "artifact_status": null - } - }, - { - "type": "rule_satisfied", - "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", + "trail_name": "web-36ad0020c6cd8716c1463808a185ca65379ec8151a9619d72549ee597d86accc", "artifact_status": null } } @@ -292,8 +260,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "258b6d07d2b28ad5cb2ce6d29934997f72380f1a", + "flow_name": "web-ci", + "trail_name": "cbe481c4b842f897e4e9e411cd78461a3a12a334", "artifact_status": "COMPLIANT" } }, @@ -301,7 +269,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-31", + "trail_name": "promotion-one-161", "artifact_status": "COMPLIANT" } }, @@ -309,15 +277,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-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", - "artifact_status": "COMPLIANT" - } - }, - { - "type": "rule_not_applicable", - "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", + "trail_name": "web-36ad0020c6cd8716c1463808a185ca65379ec8151a9619d72549ee597d86accc", "artifact_status": "COMPLIANT" } } @@ -342,8 +302,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "258b6d07d2b28ad5cb2ce6d29934997f72380f1a", + "flow_name": "web-ci", + "trail_name": "cbe481c4b842f897e4e9e411cd78461a3a12a334", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -352,7 +312,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-31", + "trail_name": "promotion-one-161", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -361,16 +321,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-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", - "artifact_status": null, - "for_control": "SDLC-CTRL-0002" - } - }, - { - "type": "rule_not_applicable", - "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", + "trail_name": "web-36ad0020c6cd8716c1463808a185ca65379ec8151a9619d72549ee597d86accc", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -398,8 +349,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "258b6d07d2b28ad5cb2ce6d29934997f72380f1a", + "flow_name": "web-ci", + "trail_name": "cbe481c4b842f897e4e9e411cd78461a3a12a334", "artifact_status": null } }, @@ -407,7 +358,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-31", + "trail_name": "promotion-one-161", "artifact_status": null } }, @@ -415,15 +366,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-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", - "artifact_status": null - } - }, - { - "type": "rule_not_applicable", - "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", + "trail_name": "web-36ad0020c6cd8716c1463808a185ca65379ec8151a9619d72549ee597d86accc", "artifact_status": null } } @@ -443,8 +386,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "258b6d07d2b28ad5cb2ce6d29934997f72380f1a", + "flow_name": "web-ci", + "trail_name": "cbe481c4b842f897e4e9e411cd78461a3a12a334", "artifact_status": "COMPLIANT" } }, @@ -452,7 +395,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-31", + "trail_name": "promotion-one-161", "artifact_status": "COMPLIANT" } }, @@ -460,15 +403,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-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", - "artifact_status": "COMPLIANT" - } - }, - { - "type": "rule_not_applicable", - "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", + "trail_name": "web-36ad0020c6cd8716c1463808a185ca65379ec8151a9619d72549ee597d86accc", "artifact_status": "COMPLIANT" } } @@ -487,14 +422,14 @@ kosli get snapshot aws-prod --output=json "for_control": "SDLC-CTRL-0022" } }, - "satisfied": true, - "ignored": false, + "satisfied": null, + "ignored": true, "resolutions": [ { "type": "rule_not_applicable", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "258b6d07d2b28ad5cb2ce6d29934997f72380f1a", + "flow_name": "web-ci", + "trail_name": "cbe481c4b842f897e4e9e411cd78461a3a12a334", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -503,7 +438,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-31", + "trail_name": "promotion-one-161", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -512,16 +447,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-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", - "artifact_status": null, - "for_control": "SDLC-CTRL-0022" - } - }, - { - "type": "rule_satisfied", - "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", + "trail_name": "web-36ad0020c6cd8716c1463808a185ca65379ec8151a9619d72549ee597d86accc", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -549,8 +475,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "258b6d07d2b28ad5cb2ce6d29934997f72380f1a", + "flow_name": "web-ci", + "trail_name": "cbe481c4b842f897e4e9e411cd78461a3a12a334", "artifact_status": null } }, @@ -558,7 +484,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-31", + "trail_name": "promotion-one-161", "artifact_status": null } }, @@ -566,15 +492,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-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", - "artifact_status": null - } - }, - { - "type": "rule_not_applicable", - "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", + "trail_name": "web-36ad0020c6cd8716c1463808a185ca65379ec8151a9619d72549ee597d86accc", "artifact_status": null } } @@ -594,8 +512,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "258b6d07d2b28ad5cb2ce6d29934997f72380f1a", + "flow_name": "web-ci", + "trail_name": "cbe481c4b842f897e4e9e411cd78461a3a12a334", "artifact_status": "COMPLIANT" } }, @@ -603,7 +521,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-31", + "trail_name": "promotion-one-161", "artifact_status": "COMPLIANT" } }, @@ -611,15 +529,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-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", - "artifact_status": "COMPLIANT" - } - }, - { - "type": "rule_not_applicable", - "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", + "trail_name": "web-36ad0020c6cd8716c1463808a185ca65379ec8151a9619d72549ee597d86accc", "artifact_status": "COMPLIANT" } } @@ -644,8 +554,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "258b6d07d2b28ad5cb2ce6d29934997f72380f1a", + "flow_name": "web-ci", + "trail_name": "cbe481c4b842f897e4e9e411cd78461a3a12a334", "artifact_status": null } }, @@ -653,7 +563,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-31", + "trail_name": "promotion-one-161", "artifact_status": null } }, @@ -661,15 +571,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-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", - "artifact_status": null - } - }, - { - "type": "rule_not_applicable", - "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", + "trail_name": "web-36ad0020c6cd8716c1463808a185ca65379ec8151a9619d72549ee597d86accc", "artifact_status": null } } @@ -696,8 +598,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "258b6d07d2b28ad5cb2ce6d29934997f72380f1a", + "flow_name": "web-ci", + "trail_name": "cbe481c4b842f897e4e9e411cd78461a3a12a334", "artifact_status": null } }, @@ -705,7 +607,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-31", + "trail_name": "promotion-one-161", "artifact_status": null } }, @@ -713,15 +615,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-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", - "artifact_status": null - } - }, - { - "type": "rule_not_applicable", - "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", + "trail_name": "web-36ad0020c6cd8716c1463808a185ca65379ec8151a9619d72549ee597d86accc", "artifact_status": null } } @@ -747,8 +641,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "258b6d07d2b28ad5cb2ce6d29934997f72380f1a", + "flow_name": "web-ci", + "trail_name": "cbe481c4b842f897e4e9e411cd78461a3a12a334", "artifact_status": "COMPLIANT" } }, @@ -756,7 +650,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-31", + "trail_name": "promotion-one-161", "artifact_status": "COMPLIANT" } }, @@ -764,15 +658,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-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", - "artifact_status": "COMPLIANT" - } - }, - { - "type": "rule_satisfied", - "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", + "trail_name": "web-36ad0020c6cd8716c1463808a185ca65379ec8151a9619d72549ee597d86accc", "artifact_status": "COMPLIANT" } } @@ -783,131 +669,102 @@ kosli get snapshot aws-prod --output=json } ], "reasons_for_incompliance": [], - "fingerprint": "c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", + "fingerprint": "36ad0020c6cd8716c1463808a185ca65379ec8151a9619d72549ee597d86accc", "creationTimestamp": [ - 1785241255 + 1788074885, + 1788074889, + 1788074889 ], "pods": null, "annotation": { - "type": "changed", - "was": 1, - "now": 1 + "type": "unchanged", + "was": 3, + "now": 3 }, - "flow_name": "exercises-start-points-ci", - "git_commit": "258b6d07d2b28ad5cb2ce6d29934997f72380f1a", - "commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/258b6d07d2b28ad5cb2ce6d29934997f72380f1a", - "html_url": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci/artifacts/c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea?artifact_id=ffb671be-6388-4f6a-ae64-8ba95d82", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci", + "flow_name": "web-ci", + "git_commit": "cbe481c4b842f897e4e9e411cd78461a3a12a334", + "commit_url": "https://github.com/cyber-dojo/web/commit/cbe481c4b842f897e4e9e411cd78461a3a12a334", + "html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci/artifacts/36ad0020c6cd8716c1463808a185ca65379ec8151a9619d72549ee597d86accc?artifact_id=41957e62-eaad-48d2-af40-46879efb", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/exercises-start-points/compare/804f248d832dc34e564507b009c246dfb4f0c657...258b6d07d2b28ad5cb2ce6d29934997f72380f1a", - "previous_git_commit": "804f248d832dc34e564507b009c246dfb4f0c657", - "previous_fingerprint": "a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:804f248@sha256:a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "diff_url": "https://github.com/cyber-dojo/web/compare/5e4b9873df93525c041c386c06e0ab8fc36b6f33...cbe481c4b842f897e4e9e411cd78461a3a12a334", + "previous_git_commit": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "previous_fingerprint": "6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:5e4b987@sha256:6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/804f248d832dc34e564507b009c246dfb4f0c657", - "previous_trail_name": "804f248d832dc34e564507b009c246dfb4f0c657", - "previous_template_reference_name": "exercises-start-points" + "previous_git_commit_url": "https://github.com/cyber-dojo/web/commit/5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "previous_trail_name": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "previous_template_reference_name": "web" }, - "commit_lead_time": 929108.0, + "commit_lead_time": 169904.0, "flows": [ { - "flow_name": "exercises-start-points-ci", - "trail_name": "258b6d07d2b28ad5cb2ce6d29934997f72380f1a", - "template_reference_name": "exercises-start-points", - "git_commit": "258b6d07d2b28ad5cb2ce6d29934997f72380f1a", - "commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/258b6d07d2b28ad5cb2ce6d29934997f72380f1a", + "flow_name": "web-ci", + "trail_name": "cbe481c4b842f897e4e9e411cd78461a3a12a334", + "template_reference_name": "web", + "git_commit": "cbe481c4b842f897e4e9e411cd78461a3a12a334", + "commit_url": "https://github.com/cyber-dojo/web/commit/cbe481c4b842f897e4e9e411cd78461a3a12a334", "git_commit_info": { - "sha1": "258b6d07d2b28ad5cb2ce6d29934997f72380f1a", - "message": "Merge pull request #146 from cyber-dojo/add-drift-detection\n\nAdd periodic drift-detection workflow", + "sha1": "cbe481c4b842f897e4e9e411cd78461a3a12a334", + "message": "Match the siblings on test-output buffering and frozen-string comments (#424)\n\nThe tee in the server test run makes ruby block-buffer stdout, so the\n progress dots only appeared once the whole run had finished. saver sets\n $stdout.sync in its own -e script for exactly this reason; web now does\n too.\n\n Every repo already freezes literals globally via RUBYOPT in up.sh, so a\n per-file magic comment buys nothing. runner, creator and differ exclude\n source/ from the cop, while web grandfathered each file in the todo\n instead, which is why the cop fired on the one newly added file.\n Excluding source/ matches them and leaves the todo holding only the bin/\n script that RUBYOPT does not reach.", "author": "Jon Jagger ", "branch": "", - "timestamp": 1784312147.0, - "url": "https://github.com/cyber-dojo/exercises-start-points/commit/258b6d07d2b28ad5cb2ce6d29934997f72380f1a" + "timestamp": 1787904981.0, + "url": "https://github.com/cyber-dojo/web/commit/cbe481c4b842f897e4e9e411cd78461a3a12a334" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci/artifacts/c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea?artifact_id=ffb671be-6388-4f6a-ae64-8ba95d82", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci", + "html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci/artifacts/36ad0020c6cd8716c1463808a185ca65379ec8151a9619d72549ee597d86accc?artifact_id=41957e62-eaad-48d2-af40-46879efb", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/exercises-start-points/compare/804f248d832dc34e564507b009c246dfb4f0c657...258b6d07d2b28ad5cb2ce6d29934997f72380f1a", - "previous_git_commit": "804f248d832dc34e564507b009c246dfb4f0c657", - "previous_fingerprint": "a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:804f248@sha256:a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "diff_url": "https://github.com/cyber-dojo/web/compare/5e4b9873df93525c041c386c06e0ab8fc36b6f33...cbe481c4b842f897e4e9e411cd78461a3a12a334", + "previous_git_commit": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "previous_fingerprint": "6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:5e4b987@sha256:6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/804f248d832dc34e564507b009c246dfb4f0c657", - "previous_trail_name": "804f248d832dc34e564507b009c246dfb4f0c657", - "previous_template_reference_name": "exercises-start-points" + "previous_git_commit_url": "https://github.com/cyber-dojo/web/commit/5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "previous_trail_name": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "previous_template_reference_name": "web" }, - "commit_lead_time": 929108.0, + "commit_lead_time": 169904.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "production-promotion", - "trail_name": "promote-all-31", - "template_reference_name": "exercises-start-points", - "git_commit": "81c216a55b2cb1787645e699ceaceca868cad253", - "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/81c216a55b2cb1787645e699ceaceca868cad253", + "trail_name": "promotion-one-161", + "template_reference_name": "web", + "git_commit": "7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", + "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", "git_commit_info": { - "sha1": "81c216a55b2cb1787645e699ceaceca868cad253", - "message": "Add spooler service name to promote_one.yml", + "sha1": "7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", + "message": "Drop lone use of = separator on Kosli CLI boolean flag", "author": "JonJagger ", "branch": "main", - "timestamp": 1785143054.0, - "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/81c216a55b2cb1787645e699ceaceca868cad253" + "timestamp": 1785316994.0, + "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea?artifact_id=b17578fc-3dc0-42c5-98a7-216ebe8a", + "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/36ad0020c6cd8716c1463808a185ca65379ec8151a9619d72549ee597d86accc?artifact_id=3e754e79-8e4c-486a-ad94-0b183d32", "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/d7e31ce0207b766140ae689f38625da4374acf87...81c216a55b2cb1787645e699ceaceca868cad253", - "previous_git_commit": "d7e31ce0207b766140ae689f38625da4374acf87", - "previous_fingerprint": "a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:804f248@sha256:a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", - "previous_artifact_compliance_state": "COMPLIANT", - "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/d7e31ce0207b766140ae689f38625da4374acf87", - "previous_trail_name": "promote-all-30", - "previous_template_reference_name": "exercises-start-points" - }, - "commit_lead_time": 98201.0, - "artifact_compliance_in_flow": true, - "flow_reasons_for_non_compliance": [] - }, - { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", - "template_reference_name": "exercises-start-points", - "git_commit": "c0666c020044ac5b5181999ec153db1e7f6cd303", - "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c0666c020044ac5b5181999ec153db1e7f6cd303", - "git_commit_info": { - "sha1": "c0666c020044ac5b5181999ec153db1e7f6cd303", - "message": "Drop lone use of = separator on Kosli CLI boolean flag", - "author": "JonJagger ", - "branch": "main", - "timestamp": 1785316951.0, - "url": "https://github.com/cyber-dojo/snyk-scanning/commit/c0666c020044ac5b5181999ec153db1e7f6cd303" - }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea?artifact_id=c5be014c-5c90-4940-9d24-3f1d472a", - "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/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7...c0666c020044ac5b5181999ec153db1e7f6cd303", - "previous_git_commit": "35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", - "previous_fingerprint": "a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:804f248@sha256:a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584...7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", + "previous_git_commit": "7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", + "previous_fingerprint": "6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:5e4b987@sha256:6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", - "previous_trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", - "previous_template_reference_name": "exercises-start-points" + "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", + "previous_trail_name": "promote-all-33", + "previous_template_reference_name": "web" }, - "commit_lead_time": -75696.0, + "commit_lead_time": 2757891.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", - "template_reference_name": "exercises-start-points", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-36ad0020c6cd8716c1463808a185ca65379ec8151a9619d72549ee597d86accc", + "template_reference_name": "web", "git_commit": "ed3c81d7322bb8058615095f4aab28c147c53933", "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/ed3c81d7322bb8058615095f4aab28c147c53933", "git_commit_info": { @@ -918,32 +775,32 @@ kosli get snapshot aws-prod --output=json "timestamp": 1787661987.0, "url": "https://github.com/cyber-dojo/snyk-scanning/commit/ed3c81d7322bb8058615095f4aab28c147c53933" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea?artifact_id=aaa56030-d1b5-4840-bab1-e9c9d309", - "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/36ad0020c6cd8716c1463808a185ca65379ec8151a9619d72549ee597d86accc?artifact_id=7e2d1204-16c1-4d83-8c52-a2117008", + "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...ed3c81d7322bb8058615095f4aab28c147c53933", - "previous_git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "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/c0666c020044ac5b5181999ec153db1e7f6cd303...ed3c81d7322bb8058615095f4aab28c147c53933", + "previous_git_commit": "c0666c020044ac5b5181999ec153db1e7f6cd303", + "previous_fingerprint": "6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:5e4b987@sha256:6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", "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_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c0666c020044ac5b5181999ec153db1e7f6cd303", + "previous_trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "previous_template_reference_name": "web" }, - "commit_lead_time": -2420732.0, + "commit_lead_time": 412898.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] } ], "ecs_context": { - "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/f248719ae7814027825075c5ea81acff", + "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/d68ae20a684745c6ba576ab68a51dd25", "cluster_name": null, "service_name": null } }, { - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:7661027@sha256:f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:976b63e@sha256:01311f8b73bb61f65baabe680aa75ef9c0e6c5d1697ad81cfd89c89812de6fe9", "compliant": true, "deployments": [], "policy_decisions": [ @@ -966,7 +823,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "runner-ci", - "trail_name": "76610271f641f1a5634465e97f880dfe019e515e", + "trail_name": "976b63e8001ec7441ebc7737ca69f620d47e7ffe", "artifact_status": null } }, @@ -974,7 +831,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-159", + "trail_name": "promotion-one-160", "artifact_status": null } }, @@ -982,15 +839,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", - "artifact_status": null - } - }, - { - "type": "rule_not_applicable", - "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", + "trail_name": "runner-01311f8b73bb61f65baabe680aa75ef9c0e6c5d1697ad81cfd89c89812de6fe9", "artifact_status": null } } @@ -1011,7 +860,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "runner-ci", - "trail_name": "76610271f641f1a5634465e97f880dfe019e515e", + "trail_name": "976b63e8001ec7441ebc7737ca69f620d47e7ffe", "artifact_status": "COMPLIANT" } }, @@ -1019,7 +868,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-159", + "trail_name": "promotion-one-160", "artifact_status": "COMPLIANT" } }, @@ -1027,15 +876,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", - "artifact_status": "COMPLIANT" - } - }, - { - "type": "rule_not_applicable", - "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", + "trail_name": "runner-01311f8b73bb61f65baabe680aa75ef9c0e6c5d1697ad81cfd89c89812de6fe9", "artifact_status": "COMPLIANT" } } @@ -1061,7 +902,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "runner-ci", - "trail_name": "76610271f641f1a5634465e97f880dfe019e515e", + "trail_name": "976b63e8001ec7441ebc7737ca69f620d47e7ffe", "artifact_status": null } }, @@ -1069,7 +910,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-159", + "trail_name": "promotion-one-160", "artifact_status": null } }, @@ -1077,15 +918,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", - "artifact_status": null - } - }, - { - "type": "rule_not_applicable", - "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", + "trail_name": "runner-01311f8b73bb61f65baabe680aa75ef9c0e6c5d1697ad81cfd89c89812de6fe9", "artifact_status": null } } @@ -1113,7 +946,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "runner-ci", - "trail_name": "76610271f641f1a5634465e97f880dfe019e515e", + "trail_name": "976b63e8001ec7441ebc7737ca69f620d47e7ffe", "artifact_status": null } }, @@ -1121,7 +954,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-159", + "trail_name": "promotion-one-160", "artifact_status": null } }, @@ -1129,15 +962,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", - "artifact_status": null - } - }, - { - "type": "rule_satisfied", - "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", + "trail_name": "runner-01311f8b73bb61f65baabe680aa75ef9c0e6c5d1697ad81cfd89c89812de6fe9", "artifact_status": null } } @@ -1158,7 +983,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "runner-ci", - "trail_name": "76610271f641f1a5634465e97f880dfe019e515e", + "trail_name": "976b63e8001ec7441ebc7737ca69f620d47e7ffe", "artifact_status": "COMPLIANT" } }, @@ -1166,7 +991,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-159", + "trail_name": "promotion-one-160", "artifact_status": "COMPLIANT" } }, @@ -1174,15 +999,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", - "artifact_status": "COMPLIANT" - } - }, - { - "type": "rule_not_applicable", - "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", + "trail_name": "runner-01311f8b73bb61f65baabe680aa75ef9c0e6c5d1697ad81cfd89c89812de6fe9", "artifact_status": "COMPLIANT" } } @@ -1208,7 +1025,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "runner-ci", - "trail_name": "76610271f641f1a5634465e97f880dfe019e515e", + "trail_name": "976b63e8001ec7441ebc7737ca69f620d47e7ffe", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -1217,7 +1034,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-159", + "trail_name": "promotion-one-160", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -1226,16 +1043,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", - "artifact_status": null, - "for_control": "SDLC-CTRL-0002" - } - }, - { - "type": "rule_not_applicable", - "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", + "trail_name": "runner-01311f8b73bb61f65baabe680aa75ef9c0e6c5d1697ad81cfd89c89812de6fe9", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -1264,7 +1072,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "runner-ci", - "trail_name": "76610271f641f1a5634465e97f880dfe019e515e", + "trail_name": "976b63e8001ec7441ebc7737ca69f620d47e7ffe", "artifact_status": null } }, @@ -1272,7 +1080,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-159", + "trail_name": "promotion-one-160", "artifact_status": null } }, @@ -1280,15 +1088,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", - "artifact_status": null - } - }, - { - "type": "rule_not_applicable", - "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", + "trail_name": "runner-01311f8b73bb61f65baabe680aa75ef9c0e6c5d1697ad81cfd89c89812de6fe9", "artifact_status": null } } @@ -1309,7 +1109,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "runner-ci", - "trail_name": "76610271f641f1a5634465e97f880dfe019e515e", + "trail_name": "976b63e8001ec7441ebc7737ca69f620d47e7ffe", "artifact_status": "COMPLIANT" } }, @@ -1317,7 +1117,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-159", + "trail_name": "promotion-one-160", "artifact_status": "COMPLIANT" } }, @@ -1325,15 +1125,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", - "artifact_status": "COMPLIANT" - } - }, - { - "type": "rule_not_applicable", - "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", + "trail_name": "runner-01311f8b73bb61f65baabe680aa75ef9c0e6c5d1697ad81cfd89c89812de6fe9", "artifact_status": "COMPLIANT" } } @@ -1352,14 +1144,14 @@ kosli get snapshot aws-prod --output=json "for_control": "SDLC-CTRL-0022" } }, - "satisfied": true, - "ignored": false, + "satisfied": null, + "ignored": true, "resolutions": [ { "type": "rule_not_applicable", "context": { "flow_name": "runner-ci", - "trail_name": "76610271f641f1a5634465e97f880dfe019e515e", + "trail_name": "976b63e8001ec7441ebc7737ca69f620d47e7ffe", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -1368,7 +1160,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-159", + "trail_name": "promotion-one-160", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -1377,16 +1169,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", - "artifact_status": null, - "for_control": "SDLC-CTRL-0022" - } - }, - { - "type": "rule_satisfied", - "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", + "trail_name": "runner-01311f8b73bb61f65baabe680aa75ef9c0e6c5d1697ad81cfd89c89812de6fe9", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -1415,7 +1198,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "runner-ci", - "trail_name": "76610271f641f1a5634465e97f880dfe019e515e", + "trail_name": "976b63e8001ec7441ebc7737ca69f620d47e7ffe", "artifact_status": null } }, @@ -1423,7 +1206,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-159", + "trail_name": "promotion-one-160", "artifact_status": null } }, @@ -1431,15 +1214,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", - "artifact_status": null - } - }, - { - "type": "rule_not_applicable", - "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", + "trail_name": "runner-01311f8b73bb61f65baabe680aa75ef9c0e6c5d1697ad81cfd89c89812de6fe9", "artifact_status": null } } @@ -1460,7 +1235,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "runner-ci", - "trail_name": "76610271f641f1a5634465e97f880dfe019e515e", + "trail_name": "976b63e8001ec7441ebc7737ca69f620d47e7ffe", "artifact_status": "COMPLIANT" } }, @@ -1468,7 +1243,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-159", + "trail_name": "promotion-one-160", "artifact_status": "COMPLIANT" } }, @@ -1476,15 +1251,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", - "artifact_status": "COMPLIANT" - } - }, - { - "type": "rule_not_applicable", - "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", + "trail_name": "runner-01311f8b73bb61f65baabe680aa75ef9c0e6c5d1697ad81cfd89c89812de6fe9", "artifact_status": "COMPLIANT" } } @@ -1510,7 +1277,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "runner-ci", - "trail_name": "76610271f641f1a5634465e97f880dfe019e515e", + "trail_name": "976b63e8001ec7441ebc7737ca69f620d47e7ffe", "artifact_status": null } }, @@ -1518,7 +1285,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-159", + "trail_name": "promotion-one-160", "artifact_status": null } }, @@ -1526,15 +1293,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", - "artifact_status": null - } - }, - { - "type": "rule_not_applicable", - "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", + "trail_name": "runner-01311f8b73bb61f65baabe680aa75ef9c0e6c5d1697ad81cfd89c89812de6fe9", "artifact_status": null } } @@ -1562,7 +1321,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "runner-ci", - "trail_name": "76610271f641f1a5634465e97f880dfe019e515e", + "trail_name": "976b63e8001ec7441ebc7737ca69f620d47e7ffe", "artifact_status": null } }, @@ -1570,7 +1329,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-159", + "trail_name": "promotion-one-160", "artifact_status": null } }, @@ -1578,15 +1337,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", - "artifact_status": null - } - }, - { - "type": "rule_not_applicable", - "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", + "trail_name": "runner-01311f8b73bb61f65baabe680aa75ef9c0e6c5d1697ad81cfd89c89812de6fe9", "artifact_status": null } } @@ -1613,7 +1364,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "runner-ci", - "trail_name": "76610271f641f1a5634465e97f880dfe019e515e", + "trail_name": "976b63e8001ec7441ebc7737ca69f620d47e7ffe", "artifact_status": "COMPLIANT" } }, @@ -1621,7 +1372,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-159", + "trail_name": "promotion-one-160", "artifact_status": "COMPLIANT" } }, @@ -1629,15 +1380,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", - "artifact_status": "COMPLIANT" - } - }, - { - "type": "rule_satisfied", - "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", + "trail_name": "runner-01311f8b73bb61f65baabe680aa75ef9c0e6c5d1697ad81cfd89c89812de6fe9", "artifact_status": "COMPLIANT" } } @@ -1648,11 +1391,11 @@ kosli get snapshot aws-prod --output=json } ], "reasons_for_incompliance": [], - "fingerprint": "f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", + "fingerprint": "01311f8b73bb61f65baabe680aa75ef9c0e6c5d1697ad81cfd89c89812de6fe9", "creationTimestamp": [ - 1787665123, - 1787665128, - 1787665129 + 1788074305, + 1788074311, + 1788074312 ], "pods": null, "annotation": { @@ -1661,12 +1404,12 @@ kosli get snapshot aws-prod --output=json "now": 3 }, "flow_name": "runner-ci", - "git_commit": "76610271f641f1a5634465e97f880dfe019e515e", - "commit_url": "https://github.com/cyber-dojo/runner/commit/76610271f641f1a5634465e97f880dfe019e515e", - "html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci/artifacts/f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9?artifact_id=977cfbff-032e-4f5d-8ae3-4e9512e3", + "git_commit": "976b63e8001ec7441ebc7737ca69f620d47e7ffe", + "commit_url": "https://github.com/cyber-dojo/runner/commit/976b63e8001ec7441ebc7737ca69f620d47e7ffe", + "html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci/artifacts/01311f8b73bb61f65baabe680aa75ef9c0e6c5d1697ad81cfd89c89812de6fe9?artifact_id=e63d6d6b-d7ee-4fad-a66a-32a4ebba", "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/runner/compare/d7541d3fb2c548bd68a81f812b5a6c95fcf9a1bd...76610271f641f1a5634465e97f880dfe019e515e", + "diff_url": "https://github.com/cyber-dojo/runner/compare/d7541d3fb2c548bd68a81f812b5a6c95fcf9a1bd...976b63e8001ec7441ebc7737ca69f620d47e7ffe", "previous_git_commit": "d7541d3fb2c548bd68a81f812b5a6c95fcf9a1bd", "previous_fingerprint": "fd8c68c615a68bfa49569beea07d071950dcfeac676028543f530dd7193f5631", "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:d7541d3@sha256:fd8c68c615a68bfa49569beea07d071950dcfeac676028543f530dd7193f5631", @@ -1676,26 +1419,26 @@ kosli get snapshot aws-prod --output=json "previous_trail_name": "d7541d3fb2c548bd68a81f812b5a6c95fcf9a1bd", "previous_template_reference_name": "runner" }, - "commit_lead_time": 20693.0, + "commit_lead_time": 2945.0, "flows": [ { "flow_name": "runner-ci", - "trail_name": "76610271f641f1a5634465e97f880dfe019e515e", + "trail_name": "976b63e8001ec7441ebc7737ca69f620d47e7ffe", "template_reference_name": "runner", - "git_commit": "76610271f641f1a5634465e97f880dfe019e515e", - "commit_url": "https://github.com/cyber-dojo/runner/commit/76610271f641f1a5634465e97f880dfe019e515e", + "git_commit": "976b63e8001ec7441ebc7737ca69f620d47e7ffe", + "commit_url": "https://github.com/cyber-dojo/runner/commit/976b63e8001ec7441ebc7737ca69f620d47e7ffe", "git_commit_info": { - "sha1": "76610271f641f1a5634465e97f880dfe019e515e", - "message": "Merge pull request #286 from cyber-dojo/run-workflow-137\n\nAdd doc/probes on ways to make runner faster", + "sha1": "976b63e8001ec7441ebc7737ca69f620d47e7ffe", + "message": "Expand the image tag to a full sha before checking out (#303)\n\nA hand deploy passes the 7 digit image tag to apply.yml as the ref for the\n terraform to apply. actions/checkout only fetches a ref as a commit when it is\n a full 40 hex digit sha; given 7 digits it builds refspecs for a branch and a\n tag of that name, matches nothing, and fails before terraform runs.\n\n So resolve the tag to its commit sha first, and stop the run when it does not\n resolve: an empty ref would silently check out the default branch, which is\n the today's-terraform-against-yesterday's-image pairing that passing a ref at\n all exists to prevent.\n\n This also names the Kosli trail by the full sha, matching the automatic\n deploy, which passes no ref and falls back to github.sha in the same\n terraform-apply--runner flow.\n\n Covers both the beta and prod manual workflows.", "author": "Jon Jagger ", "branch": "", - "timestamp": 1787644430.0, - "url": "https://github.com/cyber-dojo/runner/commit/76610271f641f1a5634465e97f880dfe019e515e" + "timestamp": 1788071360.0, + "url": "https://github.com/cyber-dojo/runner/commit/976b63e8001ec7441ebc7737ca69f620d47e7ffe" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci/artifacts/f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9?artifact_id=977cfbff-032e-4f5d-8ae3-4e9512e3", + "html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci/artifacts/01311f8b73bb61f65baabe680aa75ef9c0e6c5d1697ad81cfd89c89812de6fe9?artifact_id=e63d6d6b-d7ee-4fad-a66a-32a4ebba", "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/runner/compare/d7541d3fb2c548bd68a81f812b5a6c95fcf9a1bd...76610271f641f1a5634465e97f880dfe019e515e", + "diff_url": "https://github.com/cyber-dojo/runner/compare/d7541d3fb2c548bd68a81f812b5a6c95fcf9a1bd...976b63e8001ec7441ebc7737ca69f620d47e7ffe", "previous_git_commit": "d7541d3fb2c548bd68a81f812b5a6c95fcf9a1bd", "previous_fingerprint": "fd8c68c615a68bfa49569beea07d071950dcfeac676028543f530dd7193f5631", "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:d7541d3@sha256:fd8c68c615a68bfa49569beea07d071950dcfeac676028543f530dd7193f5631", @@ -1705,13 +1448,13 @@ kosli get snapshot aws-prod --output=json "previous_trail_name": "d7541d3fb2c548bd68a81f812b5a6c95fcf9a1bd", "previous_template_reference_name": "runner" }, - "commit_lead_time": 20693.0, + "commit_lead_time": 2945.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "production-promotion", - "trail_name": "promotion-one-159", + "trail_name": "promotion-one-160", "template_reference_name": "runner", "git_commit": "7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", @@ -1723,7 +1466,7 @@ kosli get snapshot aws-prod --output=json "timestamp": 1785316994.0, "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9?artifact_id=62a91047-acb0-4aaa-b2ba-b0a3efe7", + "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/01311f8b73bb61f65baabe680aa75ef9c0e6c5d1697ad81cfd89c89812de6fe9?artifact_id=03c1db6a-80cb-49e4-a5e0-91a23174", "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/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584...7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", @@ -1736,13 +1479,13 @@ kosli get snapshot aws-prod --output=json "previous_trail_name": "promotion-one-158", "previous_template_reference_name": "runner" }, - "commit_lead_time": 2348129.0, + "commit_lead_time": 2757311.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", + "trail_name": "runner-01311f8b73bb61f65baabe680aa75ef9c0e6c5d1697ad81cfd89c89812de6fe9", "template_reference_name": "runner", "git_commit": "ed3c81d7322bb8058615095f4aab28c147c53933", "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/ed3c81d7322bb8058615095f4aab28c147c53933", @@ -1754,57 +1497,26 @@ kosli get snapshot aws-prod --output=json "timestamp": 1787661987.0, "url": "https://github.com/cyber-dojo/snyk-scanning/commit/ed3c81d7322bb8058615095f4aab28c147c53933" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9?artifact_id=3c9ec587-3a18-4a54-a16a-f77a871a", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/01311f8b73bb61f65baabe680aa75ef9c0e6c5d1697ad81cfd89c89812de6fe9?artifact_id=5b23c60c-3ed3-43e8-99a7-49a9f6f1", "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/c0666c020044ac5b5181999ec153db1e7f6cd303...ed3c81d7322bb8058615095f4aab28c147c53933", - "previous_git_commit": "c0666c020044ac5b5181999ec153db1e7f6cd303", - "previous_fingerprint": "f3cdc22a599ddb789e7791389a5a58b43fd9c30d3af079aec392d5962d181096", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:85cac88@sha256:f3cdc22a599ddb789e7791389a5a58b43fd9c30d3af079aec392d5962d181096", - "previous_artifact_compliance_state": "COMPLIANT", - "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c0666c020044ac5b5181999ec153db1e7f6cd303", - "previous_trail_name": "runner-f3cdc22a599ddb789e7791389a5a58b43fd9c30d3af079aec392d5962d181096", - "previous_template_reference_name": "runner" - }, - "commit_lead_time": 3136.0, - "artifact_compliance_in_flow": true, - "flow_reasons_for_non_compliance": [] - }, - { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", - "template_reference_name": "runner", - "git_commit": "ed3c81d7322bb8058615095f4aab28c147c53933", - "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/ed3c81d7322bb8058615095f4aab28c147c53933", - "git_commit_info": { - "sha1": "ed3c81d7322bb8058615095f4aab28c147c53933", - "message": "Unpack one pinned commit instead of fetching each file\n\n a0c005a moved these two jobs' files to RUNNER_TEMP, which kept them out of\n the caller's checkout but left the prefix repeated at every use. The paths\n are absolute because the run steps stay in the checkout, where the Kosli\n CLI reads git commit information from the working directory, so the prefix\n cannot be dropped. It can only be folded into the definitions, and a\n literal /tmp folds where runner.temp does not: the runner context is\n unavailable in workflow- and job-level env blocks. Both jobs are pinned to\n ubuntu-latest, one fresh VM per job, so /tmp neither collides nor persists.\n\n The files also arrived as five separate fetches of main, one per file, so a\n push landing mid-run could pair a rego policy with params from a different\n commit. find-snyk-vulns already checks this repo out, so it now publishes\n the SHA it resolved, and the two later jobs unpack that exact commit as a\n single tarball. One run reads one version.\n\n An env-var's prefix now says where its file came from: SNYK_SCANNING_ from\n this repo at the pinned commit, CALLER_ from the repo being scanned, TMP_\n produced by the run. That split is worth naming because only one of these\n files is the caller's, and it is the one .snyk that the decision attests\n against. Two bare filenames survive because an artifact name cannot\n contain a '/'.\n\n fetch-url-to-file now has exactly one caller, for that .snyk.", - "author": "JonJagger ", - "branch": "main", - "timestamp": 1787661987.0, - "url": "https://github.com/cyber-dojo/snyk-scanning/commit/ed3c81d7322bb8058615095f4aab28c147c53933" - }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9?artifact_id=935fe938-5908-4664-8862-505506ce", - "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...ed3c81d7322bb8058615095f4aab28c147c53933", - "previous_git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "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/snyk-scanning/compare/ad256a36cfd9d90f78acbf393e4bff5a2ef45fcf...ed3c81d7322bb8058615095f4aab28c147c53933", + "previous_git_commit": "ad256a36cfd9d90f78acbf393e4bff5a2ef45fcf", + "previous_fingerprint": "fd8c68c615a68bfa49569beea07d071950dcfeac676028543f530dd7193f5631", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:d7541d3@sha256:fd8c68c615a68bfa49569beea07d071950dcfeac676028543f530dd7193f5631", "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_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/ad256a36cfd9d90f78acbf393e4bff5a2ef45fcf", + "previous_trail_name": "runner-fd8c68c615a68bfa49569beea07d071950dcfeac676028543f530dd7193f5631", "previous_template_reference_name": "runner" }, - "commit_lead_time": 3136.0, + "commit_lead_time": 412318.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] } ], "ecs_context": { - "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/afd611868ed14afc80fe2de51b9fc95d", + "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/cf488f12ff9843f4ba567f44c249fa40", "cluster_name": null, "service_name": null } @@ -2640,7 +2352,7 @@ kosli get snapshot aws-prod --output=json "timestamp": 1787661987.0, "url": "https://github.com/cyber-dojo/snyk-scanning/commit/ed3c81d7322bb8058615095f4aab28c147c53933" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/ff871c3c8f4b5cfb60012bed1cd7f020b20f17fdabc2db0d8a5c77e75518fce0?artifact_id=38623356-21cb-4f5f-88b3-356a860e", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/ff871c3c8f4b5cfb60012bed1cd7f020b20f17fdabc2db0d8a5c77e75518fce0?artifact_id=c516df8e-f0ee-4cce-ab77-fc71de8c", "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact", "deployment_diff": null, "commit_lead_time": -1236475.0, @@ -2655,7 +2367,7 @@ kosli get snapshot aws-prod --output=json } }, { - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:5e4b987@sha256:6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:83357f1@sha256:adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", "compliant": true, "deployments": [], "policy_decisions": [ @@ -2677,8 +2389,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "web-ci", - "trail_name": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "flow_name": "creator-ci", + "trail_name": "83357f112ef5c10b157cb84732c77965cc8ddc48", "artifact_status": null } }, @@ -2686,7 +2398,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", "artifact_status": null } }, @@ -2702,7 +2414,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", "artifact_status": null } } @@ -2722,8 +2434,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "web-ci", - "trail_name": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "flow_name": "creator-ci", + "trail_name": "83357f112ef5c10b157cb84732c77965cc8ddc48", "artifact_status": "COMPLIANT" } }, @@ -2731,7 +2443,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", "artifact_status": "COMPLIANT" } }, @@ -2747,7 +2459,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", "artifact_status": "COMPLIANT" } } @@ -2772,8 +2484,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "web-ci", - "trail_name": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "flow_name": "creator-ci", + "trail_name": "83357f112ef5c10b157cb84732c77965cc8ddc48", "artifact_status": null } }, @@ -2781,7 +2493,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", "artifact_status": null } }, @@ -2797,7 +2509,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", "artifact_status": null } } @@ -2824,8 +2536,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "web-ci", - "trail_name": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "flow_name": "creator-ci", + "trail_name": "83357f112ef5c10b157cb84732c77965cc8ddc48", "artifact_status": null } }, @@ -2833,7 +2545,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", "artifact_status": null } }, @@ -2849,7 +2561,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", "artifact_status": null } } @@ -2869,8 +2581,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "web-ci", - "trail_name": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "flow_name": "creator-ci", + "trail_name": "83357f112ef5c10b157cb84732c77965cc8ddc48", "artifact_status": "COMPLIANT" } }, @@ -2878,7 +2590,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", "artifact_status": "COMPLIANT" } }, @@ -2894,7 +2606,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", "artifact_status": "COMPLIANT" } } @@ -2919,8 +2631,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "web-ci", - "trail_name": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "flow_name": "creator-ci", + "trail_name": "83357f112ef5c10b157cb84732c77965cc8ddc48", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -2929,7 +2641,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -2947,7 +2659,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -2975,8 +2687,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "web-ci", - "trail_name": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "flow_name": "creator-ci", + "trail_name": "83357f112ef5c10b157cb84732c77965cc8ddc48", "artifact_status": null } }, @@ -2984,7 +2696,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", "artifact_status": null } }, @@ -3000,7 +2712,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", "artifact_status": null } } @@ -3020,8 +2732,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "web-ci", - "trail_name": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "flow_name": "creator-ci", + "trail_name": "83357f112ef5c10b157cb84732c77965cc8ddc48", "artifact_status": "COMPLIANT" } }, @@ -3029,7 +2741,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", "artifact_status": "COMPLIANT" } }, @@ -3045,7 +2757,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", "artifact_status": "COMPLIANT" } } @@ -3070,8 +2782,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "web-ci", - "trail_name": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "flow_name": "creator-ci", + "trail_name": "83357f112ef5c10b157cb84732c77965cc8ddc48", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -3080,7 +2792,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -3098,7 +2810,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -3126,8 +2838,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "web-ci", - "trail_name": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "flow_name": "creator-ci", + "trail_name": "83357f112ef5c10b157cb84732c77965cc8ddc48", "artifact_status": null } }, @@ -3135,7 +2847,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", "artifact_status": null } }, @@ -3151,7 +2863,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", "artifact_status": null } } @@ -3171,8 +2883,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "web-ci", - "trail_name": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "flow_name": "creator-ci", + "trail_name": "83357f112ef5c10b157cb84732c77965cc8ddc48", "artifact_status": "COMPLIANT" } }, @@ -3180,7 +2892,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", "artifact_status": "COMPLIANT" } }, @@ -3196,7 +2908,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", "artifact_status": "COMPLIANT" } } @@ -3221,8 +2933,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "web-ci", - "trail_name": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "flow_name": "creator-ci", + "trail_name": "83357f112ef5c10b157cb84732c77965cc8ddc48", "artifact_status": null } }, @@ -3230,7 +2942,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", "artifact_status": null } }, @@ -3246,7 +2958,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", "artifact_status": null } } @@ -3273,8 +2985,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "web-ci", - "trail_name": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "flow_name": "creator-ci", + "trail_name": "83357f112ef5c10b157cb84732c77965cc8ddc48", "artifact_status": null } }, @@ -3282,7 +2994,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", "artifact_status": null } }, @@ -3298,7 +3010,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", "artifact_status": null } } @@ -3324,8 +3036,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "web-ci", - "trail_name": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "flow_name": "creator-ci", + "trail_name": "83357f112ef5c10b157cb84732c77965cc8ddc48", "artifact_status": "COMPLIANT" } }, @@ -3333,7 +3045,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", "artifact_status": "COMPLIANT" } }, @@ -3349,7 +3061,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", "artifact_status": "COMPLIANT" } } @@ -3360,71 +3072,69 @@ kosli get snapshot aws-prod --output=json } ], "reasons_for_incompliance": [], - "fingerprint": "6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "fingerprint": "adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", "creationTimestamp": [ - 1786425419, - 1786425419, - 1786425419 + 1786425173 ], "pods": null, "annotation": { "type": "unchanged", - "was": 3, - "now": 3 + "was": 1, + "now": 1 }, - "flow_name": "web-ci", - "git_commit": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", - "commit_url": "https://github.com/cyber-dojo/web/commit/5e4b9873df93525c041c386c06e0ab8fc36b6f33", - "html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci/artifacts/6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd?artifact_id=f658e6e3-9ce8-462f-a29e-a2cc6f7b", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci", + "flow_name": "creator-ci", + "git_commit": "83357f112ef5c10b157cb84732c77965cc8ddc48", + "commit_url": "https://github.com/cyber-dojo/creator/commit/83357f112ef5c10b157cb84732c77965cc8ddc48", + "html_url": "https://app.kosli.com/cyber-dojo/flows/creator-ci/artifacts/adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b?artifact_id=11539f6a-befb-4b79-9484-fd9f25d3", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/creator-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/web/compare/0c31ab46a7d8c7d34d2ce0654dc09f8ae4229c7e...5e4b9873df93525c041c386c06e0ab8fc36b6f33", - "previous_git_commit": "0c31ab46a7d8c7d34d2ce0654dc09f8ae4229c7e", - "previous_fingerprint": "1e03ce9811f7ffaa0d00bb4da3dbc60e939e6d1b3f8e87b88a99121dca481018", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:0c31ab4@sha256:1e03ce9811f7ffaa0d00bb4da3dbc60e939e6d1b3f8e87b88a99121dca481018", + "diff_url": "https://github.com/cyber-dojo/creator/compare/89019f6d8059406e56fa499b2dec2dbf93f4d5c7...83357f112ef5c10b157cb84732c77965cc8ddc48", + "previous_git_commit": "89019f6d8059406e56fa499b2dec2dbf93f4d5c7", + "previous_fingerprint": "aa64db9bd0519d00fba81faf620d0bb1aae3d13839b585ed2ec8179d5e035a34", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:89019f6@sha256:aa64db9bd0519d00fba81faf620d0bb1aae3d13839b585ed2ec8179d5e035a34", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/web/commit/0c31ab46a7d8c7d34d2ce0654dc09f8ae4229c7e", - "previous_trail_name": "0c31ab46a7d8c7d34d2ce0654dc09f8ae4229c7e", - "previous_template_reference_name": "web" + "previous_git_commit_url": "https://github.com/cyber-dojo/creator/commit/89019f6d8059406e56fa499b2dec2dbf93f4d5c7", + "previous_trail_name": "89019f6d8059406e56fa499b2dec2dbf93f4d5c7", + "previous_template_reference_name": "creator" }, - "commit_lead_time": 58766.0, + "commit_lead_time": 660751.0, "flows": [ { - "flow_name": "web-ci", - "trail_name": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", - "template_reference_name": "web", - "git_commit": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", - "commit_url": "https://github.com/cyber-dojo/web/commit/5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "flow_name": "creator-ci", + "trail_name": "83357f112ef5c10b157cb84732c77965cc8ddc48", + "template_reference_name": "creator", + "git_commit": "83357f112ef5c10b157cb84732c77965cc8ddc48", + "commit_url": "https://github.com/cyber-dojo/creator/commit/83357f112ef5c10b157cb84732c77965cc8ddc48", "git_commit_info": { - "sha1": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", - "message": "Name the creation-event rule instead of restating it (#417)\n\nDeciding whether the review navigator's activity test (events.length > 1)\n agreed with the dashboard's (any event with index != 0) meant reading five\n files and saver's event-placement code, because the same fact - event 0 is\n the kata's creation, anything after it is something someone did - was spelled\n differently at every site. The two rules do agree, but nothing in the code\n said so, so the only way to find out was to go and check.\n\n cd.lib now carries isCreationEvent(event) and hasActivity(events), each\n documenting the invariant it rests on: an event's index is its position in the\n array, because saver places every write at head+1. The review partials ask\n through them rather than restating index==0 or length==1.\n\n Two sites keep their own spelling on purpose. previousIndex's index == 0 reads\n as array arithmetic rather than the creation rule, and kata_app has the only\n Ruby site in this repo, so a predicate there would add indirection without\n removing duplication.\n\n The avatars_tests fixtures now hold real event objects rather than bare\n integers, because the rule reads an event's index. Those tests still do not\n run: there is no jest here and require('./avatars') resolves to nothing.", + "sha1": "83357f112ef5c10b157cb84732c77965cc8ddc48", + "message": "Run the linter as the invoking user (#53)\n\nThe rubocop container wrote reports/rubocop/junit.xml as its own user, so on a\n linux runner the file belongs to someone else. That broke the attestation added\n in #52: kosli attest copies evidence with PreserveOwner when given more than one\n path, and a non-root process cannot chown a file to another uid.\n\n chown /tmp/1800768837/reports/rubocop/junit.xml: operation not permitted\n\n The single-path form tars in place and never copies, which is why --results-dir\n alone had been fine and adding --attachments broke it.\n\n Passing --user makes the container write as whoever ran it. Worth doing on its\n own account - a container should not leave files you cannot delete in your\n working tree - and it sidesteps the CLI's behaviour without waiting on it. That\n behaviour looks like a bug and is written up in\n ../kosli-cli-preserve-owner-bug.md for an issue against kosli-dev/cli.\n\n Docker Desktop maps ownership back to the calling user, so this is invisible on a\n mac and only shows on the runner.", "author": "Jon Jagger ", "branch": "", - "timestamp": 1786366653.0, - "url": "https://github.com/cyber-dojo/web/commit/5e4b9873df93525c041c386c06e0ab8fc36b6f33" + "timestamp": 1785764422.0, + "url": "https://github.com/cyber-dojo/creator/commit/83357f112ef5c10b157cb84732c77965cc8ddc48" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci/artifacts/6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd?artifact_id=f658e6e3-9ce8-462f-a29e-a2cc6f7b", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci", + "html_url": "https://app.kosli.com/cyber-dojo/flows/creator-ci/artifacts/adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b?artifact_id=11539f6a-befb-4b79-9484-fd9f25d3", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/creator-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/web/compare/0c31ab46a7d8c7d34d2ce0654dc09f8ae4229c7e...5e4b9873df93525c041c386c06e0ab8fc36b6f33", - "previous_git_commit": "0c31ab46a7d8c7d34d2ce0654dc09f8ae4229c7e", - "previous_fingerprint": "1e03ce9811f7ffaa0d00bb4da3dbc60e939e6d1b3f8e87b88a99121dca481018", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:0c31ab4@sha256:1e03ce9811f7ffaa0d00bb4da3dbc60e939e6d1b3f8e87b88a99121dca481018", + "diff_url": "https://github.com/cyber-dojo/creator/compare/89019f6d8059406e56fa499b2dec2dbf93f4d5c7...83357f112ef5c10b157cb84732c77965cc8ddc48", + "previous_git_commit": "89019f6d8059406e56fa499b2dec2dbf93f4d5c7", + "previous_fingerprint": "aa64db9bd0519d00fba81faf620d0bb1aae3d13839b585ed2ec8179d5e035a34", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:89019f6@sha256:aa64db9bd0519d00fba81faf620d0bb1aae3d13839b585ed2ec8179d5e035a34", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/web/commit/0c31ab46a7d8c7d34d2ce0654dc09f8ae4229c7e", - "previous_trail_name": "0c31ab46a7d8c7d34d2ce0654dc09f8ae4229c7e", - "previous_template_reference_name": "web" + "previous_git_commit_url": "https://github.com/cyber-dojo/creator/commit/89019f6d8059406e56fa499b2dec2dbf93f4d5c7", + "previous_trail_name": "89019f6d8059406e56fa499b2dec2dbf93f4d5c7", + "previous_template_reference_name": "creator" }, - "commit_lead_time": 58766.0, + "commit_lead_time": 660751.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", - "template_reference_name": "web", + "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", + "template_reference_name": "creator", "git_commit": "c0666c020044ac5b5181999ec153db1e7f6cd303", "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c0666c020044ac5b5181999ec153db1e7f6cd303", "git_commit_info": { @@ -3435,27 +3145,27 @@ kosli get snapshot aws-prod --output=json "timestamp": 1785316951.0, "url": "https://github.com/cyber-dojo/snyk-scanning/commit/c0666c020044ac5b5181999ec153db1e7f6cd303" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd?artifact_id=da135937-1562-4662-b672-53688f17", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b?artifact_id=6feaf5cb-761e-4f05-8591-1db09ac4", "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/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7...c0666c020044ac5b5181999ec153db1e7f6cd303", - "previous_git_commit": "35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", - "previous_fingerprint": "0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:3f0b997@sha256:0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", + "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/c0666c020044ac5b5181999ec153db1e7f6cd303...c0666c020044ac5b5181999ec153db1e7f6cd303", + "previous_git_commit": "c0666c020044ac5b5181999ec153db1e7f6cd303", + "previous_fingerprint": "26a4c8a14ccf71978ec75fe01edad50d892d7f9054f95fc41d6922fb42995d59", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:07ed087@sha256:26a4c8a14ccf71978ec75fe01edad50d892d7f9054f95fc41d6922fb42995d59", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", - "previous_trail_name": "web-0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", - "previous_template_reference_name": "web" + "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c0666c020044ac5b5181999ec153db1e7f6cd303", + "previous_trail_name": "creator-26a4c8a14ccf71978ec75fe01edad50d892d7f9054f95fc41d6922fb42995d59", + "previous_template_reference_name": "creator" }, - "commit_lead_time": 1108468.0, + "commit_lead_time": 1108222.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "production-promotion", "trail_name": "promote-all-33", - "template_reference_name": "web", + "template_reference_name": "creator", "git_commit": "7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", "git_commit_info": { @@ -3466,27 +3176,27 @@ kosli get snapshot aws-prod --output=json "timestamp": 1785316994.0, "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd?artifact_id=5254e39c-72c5-4946-86ed-08f7b11a", + "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b?artifact_id=d5412ba4-c8b6-4bf3-8a8f-05f2ed00", "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/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584...7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", "previous_git_commit": "7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", - "previous_fingerprint": "1e03ce9811f7ffaa0d00bb4da3dbc60e939e6d1b3f8e87b88a99121dca481018", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:0c31ab4@sha256:1e03ce9811f7ffaa0d00bb4da3dbc60e939e6d1b3f8e87b88a99121dca481018", + "previous_fingerprint": "aa64db9bd0519d00fba81faf620d0bb1aae3d13839b585ed2ec8179d5e035a34", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:89019f6@sha256:aa64db9bd0519d00fba81faf620d0bb1aae3d13839b585ed2ec8179d5e035a34", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", - "previous_trail_name": "promotion-one-157", - "previous_template_reference_name": "web" + "previous_trail_name": "promotion-one-150", + "previous_template_reference_name": "creator" }, - "commit_lead_time": 1108425.0, + "commit_lead_time": 1108179.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", - "template_reference_name": "web", + "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", + "template_reference_name": "creator", "git_commit": "ed3c81d7322bb8058615095f4aab28c147c53933", "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/ed3c81d7322bb8058615095f4aab28c147c53933", "git_commit_info": { @@ -3497,32 +3207,32 @@ kosli get snapshot aws-prod --output=json "timestamp": 1787661987.0, "url": "https://github.com/cyber-dojo/snyk-scanning/commit/ed3c81d7322bb8058615095f4aab28c147c53933" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd?artifact_id=f0b44d3b-bff5-45f4-8bda-b6c1b7f6", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b?artifact_id=d0ae3017-db9d-4502-aa9b-d9d6cbff", "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...ed3c81d7322bb8058615095f4aab28c147c53933", - "previous_git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "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/snyk-scanning/compare/7172cc22125f480a9f12127edb481a4d84aabea3...ed3c81d7322bb8058615095f4aab28c147c53933", + "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": "web-29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4", - "previous_template_reference_name": "web" + "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": -1236568.0, + "commit_lead_time": -1236814.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] } ], "ecs_context": { - "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/1af4cc2636fa44c3867fc792d9285670", + "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/d85a1f3513dd45c788f6341641110bfd", "cluster_name": null, "service_name": null } }, { - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:83357f1@sha256:adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:108cccf@sha256:31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", "compliant": true, "deployments": [], "policy_decisions": [ @@ -3544,8 +3254,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "creator-ci", - "trail_name": "83357f112ef5c10b157cb84732c77965cc8ddc48", + "flow_name": "differ-ci", + "trail_name": "108cccf9bccf9af5d455db66c250480b53cbecc7", "artifact_status": null } }, @@ -3553,7 +3263,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", + "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", "artifact_status": null } }, @@ -3569,7 +3279,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", + "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", "artifact_status": null } } @@ -3589,8 +3299,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "creator-ci", - "trail_name": "83357f112ef5c10b157cb84732c77965cc8ddc48", + "flow_name": "differ-ci", + "trail_name": "108cccf9bccf9af5d455db66c250480b53cbecc7", "artifact_status": "COMPLIANT" } }, @@ -3598,7 +3308,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", + "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", "artifact_status": "COMPLIANT" } }, @@ -3614,7 +3324,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", + "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", "artifact_status": "COMPLIANT" } } @@ -3639,8 +3349,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "creator-ci", - "trail_name": "83357f112ef5c10b157cb84732c77965cc8ddc48", + "flow_name": "differ-ci", + "trail_name": "108cccf9bccf9af5d455db66c250480b53cbecc7", "artifact_status": null } }, @@ -3648,7 +3358,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", + "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", "artifact_status": null } }, @@ -3664,7 +3374,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", + "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", "artifact_status": null } } @@ -3691,8 +3401,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "creator-ci", - "trail_name": "83357f112ef5c10b157cb84732c77965cc8ddc48", + "flow_name": "differ-ci", + "trail_name": "108cccf9bccf9af5d455db66c250480b53cbecc7", "artifact_status": null } }, @@ -3700,7 +3410,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", + "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", "artifact_status": null } }, @@ -3716,7 +3426,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", + "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", "artifact_status": null } } @@ -3736,8 +3446,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "creator-ci", - "trail_name": "83357f112ef5c10b157cb84732c77965cc8ddc48", + "flow_name": "differ-ci", + "trail_name": "108cccf9bccf9af5d455db66c250480b53cbecc7", "artifact_status": "COMPLIANT" } }, @@ -3745,7 +3455,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", + "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", "artifact_status": "COMPLIANT" } }, @@ -3761,7 +3471,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", + "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", "artifact_status": "COMPLIANT" } } @@ -3786,8 +3496,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "creator-ci", - "trail_name": "83357f112ef5c10b157cb84732c77965cc8ddc48", + "flow_name": "differ-ci", + "trail_name": "108cccf9bccf9af5d455db66c250480b53cbecc7", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -3796,7 +3506,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", + "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -3814,7 +3524,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", + "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -3842,8 +3552,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "creator-ci", - "trail_name": "83357f112ef5c10b157cb84732c77965cc8ddc48", + "flow_name": "differ-ci", + "trail_name": "108cccf9bccf9af5d455db66c250480b53cbecc7", "artifact_status": null } }, @@ -3851,7 +3561,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", + "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", "artifact_status": null } }, @@ -3867,7 +3577,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", + "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", "artifact_status": null } } @@ -3887,8 +3597,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "creator-ci", - "trail_name": "83357f112ef5c10b157cb84732c77965cc8ddc48", + "flow_name": "differ-ci", + "trail_name": "108cccf9bccf9af5d455db66c250480b53cbecc7", "artifact_status": "COMPLIANT" } }, @@ -3896,7 +3606,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", + "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", "artifact_status": "COMPLIANT" } }, @@ -3912,7 +3622,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", + "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", "artifact_status": "COMPLIANT" } } @@ -3937,8 +3647,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "creator-ci", - "trail_name": "83357f112ef5c10b157cb84732c77965cc8ddc48", + "flow_name": "differ-ci", + "trail_name": "108cccf9bccf9af5d455db66c250480b53cbecc7", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -3947,7 +3657,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", + "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -3965,7 +3675,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", + "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -3993,8 +3703,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "creator-ci", - "trail_name": "83357f112ef5c10b157cb84732c77965cc8ddc48", + "flow_name": "differ-ci", + "trail_name": "108cccf9bccf9af5d455db66c250480b53cbecc7", "artifact_status": null } }, @@ -4002,7 +3712,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", + "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", "artifact_status": null } }, @@ -4018,7 +3728,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", + "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", "artifact_status": null } } @@ -4038,8 +3748,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "creator-ci", - "trail_name": "83357f112ef5c10b157cb84732c77965cc8ddc48", + "flow_name": "differ-ci", + "trail_name": "108cccf9bccf9af5d455db66c250480b53cbecc7", "artifact_status": "COMPLIANT" } }, @@ -4047,7 +3757,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", + "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", "artifact_status": "COMPLIANT" } }, @@ -4063,7 +3773,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", + "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", "artifact_status": "COMPLIANT" } } @@ -4088,8 +3798,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "creator-ci", - "trail_name": "83357f112ef5c10b157cb84732c77965cc8ddc48", + "flow_name": "differ-ci", + "trail_name": "108cccf9bccf9af5d455db66c250480b53cbecc7", "artifact_status": null } }, @@ -4097,7 +3807,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", + "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", "artifact_status": null } }, @@ -4113,7 +3823,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", + "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", "artifact_status": null } } @@ -4140,8 +3850,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "creator-ci", - "trail_name": "83357f112ef5c10b157cb84732c77965cc8ddc48", + "flow_name": "differ-ci", + "trail_name": "108cccf9bccf9af5d455db66c250480b53cbecc7", "artifact_status": null } }, @@ -4149,7 +3859,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", + "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", "artifact_status": null } }, @@ -4165,7 +3875,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", + "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", "artifact_status": null } } @@ -4191,8 +3901,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "creator-ci", - "trail_name": "83357f112ef5c10b157cb84732c77965cc8ddc48", + "flow_name": "differ-ci", + "trail_name": "108cccf9bccf9af5d455db66c250480b53cbecc7", "artifact_status": "COMPLIANT" } }, @@ -4200,7 +3910,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", + "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", "artifact_status": "COMPLIANT" } }, @@ -4216,7 +3926,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", + "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", "artifact_status": "COMPLIANT" } } @@ -4227,9 +3937,9 @@ kosli get snapshot aws-prod --output=json } ], "reasons_for_incompliance": [], - "fingerprint": "adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", + "fingerprint": "31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", "creationTimestamp": [ - 1786425173 + 1786425092 ], "pods": null, "annotation": { @@ -4237,59 +3947,59 @@ kosli get snapshot aws-prod --output=json "was": 1, "now": 1 }, - "flow_name": "creator-ci", - "git_commit": "83357f112ef5c10b157cb84732c77965cc8ddc48", - "commit_url": "https://github.com/cyber-dojo/creator/commit/83357f112ef5c10b157cb84732c77965cc8ddc48", - "html_url": "https://app.kosli.com/cyber-dojo/flows/creator-ci/artifacts/adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b?artifact_id=11539f6a-befb-4b79-9484-fd9f25d3", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/creator-ci", + "flow_name": "differ-ci", + "git_commit": "108cccf9bccf9af5d455db66c250480b53cbecc7", + "commit_url": "https://github.com/cyber-dojo/differ/commit/108cccf9bccf9af5d455db66c250480b53cbecc7", + "html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci/artifacts/31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac?artifact_id=50b8cff6-1888-4c76-b31a-fdd7a311", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/creator/compare/89019f6d8059406e56fa499b2dec2dbf93f4d5c7...83357f112ef5c10b157cb84732c77965cc8ddc48", - "previous_git_commit": "89019f6d8059406e56fa499b2dec2dbf93f4d5c7", - "previous_fingerprint": "aa64db9bd0519d00fba81faf620d0bb1aae3d13839b585ed2ec8179d5e035a34", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:89019f6@sha256:aa64db9bd0519d00fba81faf620d0bb1aae3d13839b585ed2ec8179d5e035a34", + "diff_url": "https://github.com/cyber-dojo/differ/compare/10e162d4e1294815375a31121f14d57e13183b34...108cccf9bccf9af5d455db66c250480b53cbecc7", + "previous_git_commit": "10e162d4e1294815375a31121f14d57e13183b34", + "previous_fingerprint": "f68c19b4ca97267fb5be505ec33eb6b89a5297e9ed7ee40d0a3e88fb4082a6e4", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:10e162d@sha256:f68c19b4ca97267fb5be505ec33eb6b89a5297e9ed7ee40d0a3e88fb4082a6e4", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/creator/commit/89019f6d8059406e56fa499b2dec2dbf93f4d5c7", - "previous_trail_name": "89019f6d8059406e56fa499b2dec2dbf93f4d5c7", - "previous_template_reference_name": "creator" + "previous_git_commit_url": "https://github.com/cyber-dojo/differ/commit/10e162d4e1294815375a31121f14d57e13183b34", + "previous_trail_name": "10e162d4e1294815375a31121f14d57e13183b34", + "previous_template_reference_name": "differ" }, - "commit_lead_time": 660751.0, + "commit_lead_time": 162716.0, "flows": [ { - "flow_name": "creator-ci", - "trail_name": "83357f112ef5c10b157cb84732c77965cc8ddc48", - "template_reference_name": "creator", - "git_commit": "83357f112ef5c10b157cb84732c77965cc8ddc48", - "commit_url": "https://github.com/cyber-dojo/creator/commit/83357f112ef5c10b157cb84732c77965cc8ddc48", + "flow_name": "differ-ci", + "trail_name": "108cccf9bccf9af5d455db66c250480b53cbecc7", + "template_reference_name": "differ", + "git_commit": "108cccf9bccf9af5d455db66c250480b53cbecc7", + "commit_url": "https://github.com/cyber-dojo/differ/commit/108cccf9bccf9af5d455db66c250480b53cbecc7", "git_commit_info": { - "sha1": "83357f112ef5c10b157cb84732c77965cc8ddc48", - "message": "Run the linter as the invoking user (#53)\n\nThe rubocop container wrote reports/rubocop/junit.xml as its own user, so on a\n linux runner the file belongs to someone else. That broke the attestation added\n in #52: kosli attest copies evidence with PreserveOwner when given more than one\n path, and a non-root process cannot chown a file to another uid.\n\n chown /tmp/1800768837/reports/rubocop/junit.xml: operation not permitted\n\n The single-path form tars in place and never copies, which is why --results-dir\n alone had been fine and adding --attachments broke it.\n\n Passing --user makes the container write as whoever ran it. Worth doing on its\n own account - a container should not leave files you cannot delete in your\n working tree - and it sidesteps the CLI's behaviour without waiting on it. That\n behaviour looks like a bug and is written up in\n ../kosli-cli-preserve-owner-bug.md for an issue against kosli-dev/cli.\n\n Docker Desktop maps ownership back to the calling user, so this is invisible on a\n mac and only shows on the runner.", - "author": "Jon Jagger ", + "sha1": "108cccf9bccf9af5d455db66c250480b53cbecc7", + "message": "Merge pull request #449 from cyber-dojo/fix-exit-non-zero", + "author": "AlexKantor87 ", "branch": "", - "timestamp": 1785764422.0, - "url": "https://github.com/cyber-dojo/creator/commit/83357f112ef5c10b157cb84732c77965cc8ddc48" + "timestamp": 1786262376.0, + "url": "https://github.com/cyber-dojo/differ/commit/108cccf9bccf9af5d455db66c250480b53cbecc7" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/creator-ci/artifacts/adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b?artifact_id=11539f6a-befb-4b79-9484-fd9f25d3", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/creator-ci", + "html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci/artifacts/31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac?artifact_id=50b8cff6-1888-4c76-b31a-fdd7a311", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/creator/compare/89019f6d8059406e56fa499b2dec2dbf93f4d5c7...83357f112ef5c10b157cb84732c77965cc8ddc48", - "previous_git_commit": "89019f6d8059406e56fa499b2dec2dbf93f4d5c7", - "previous_fingerprint": "aa64db9bd0519d00fba81faf620d0bb1aae3d13839b585ed2ec8179d5e035a34", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:89019f6@sha256:aa64db9bd0519d00fba81faf620d0bb1aae3d13839b585ed2ec8179d5e035a34", + "diff_url": "https://github.com/cyber-dojo/differ/compare/10e162d4e1294815375a31121f14d57e13183b34...108cccf9bccf9af5d455db66c250480b53cbecc7", + "previous_git_commit": "10e162d4e1294815375a31121f14d57e13183b34", + "previous_fingerprint": "f68c19b4ca97267fb5be505ec33eb6b89a5297e9ed7ee40d0a3e88fb4082a6e4", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:10e162d@sha256:f68c19b4ca97267fb5be505ec33eb6b89a5297e9ed7ee40d0a3e88fb4082a6e4", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/creator/commit/89019f6d8059406e56fa499b2dec2dbf93f4d5c7", - "previous_trail_name": "89019f6d8059406e56fa499b2dec2dbf93f4d5c7", - "previous_template_reference_name": "creator" + "previous_git_commit_url": "https://github.com/cyber-dojo/differ/commit/10e162d4e1294815375a31121f14d57e13183b34", + "previous_trail_name": "10e162d4e1294815375a31121f14d57e13183b34", + "previous_template_reference_name": "differ" }, - "commit_lead_time": 660751.0, + "commit_lead_time": 162716.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", - "template_reference_name": "creator", + "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", + "template_reference_name": "differ", "git_commit": "c0666c020044ac5b5181999ec153db1e7f6cd303", "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c0666c020044ac5b5181999ec153db1e7f6cd303", "git_commit_info": { @@ -4300,27 +4010,27 @@ kosli get snapshot aws-prod --output=json "timestamp": 1785316951.0, "url": "https://github.com/cyber-dojo/snyk-scanning/commit/c0666c020044ac5b5181999ec153db1e7f6cd303" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b?artifact_id=6feaf5cb-761e-4f05-8591-1db09ac4", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac?artifact_id=33c43d32-ff7c-4f02-8819-c03ff8e0", "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/c0666c020044ac5b5181999ec153db1e7f6cd303...c0666c020044ac5b5181999ec153db1e7f6cd303", "previous_git_commit": "c0666c020044ac5b5181999ec153db1e7f6cd303", - "previous_fingerprint": "26a4c8a14ccf71978ec75fe01edad50d892d7f9054f95fc41d6922fb42995d59", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:07ed087@sha256:26a4c8a14ccf71978ec75fe01edad50d892d7f9054f95fc41d6922fb42995d59", + "previous_fingerprint": "f68c19b4ca97267fb5be505ec33eb6b89a5297e9ed7ee40d0a3e88fb4082a6e4", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:10e162d@sha256:f68c19b4ca97267fb5be505ec33eb6b89a5297e9ed7ee40d0a3e88fb4082a6e4", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c0666c020044ac5b5181999ec153db1e7f6cd303", - "previous_trail_name": "creator-26a4c8a14ccf71978ec75fe01edad50d892d7f9054f95fc41d6922fb42995d59", - "previous_template_reference_name": "creator" + "previous_trail_name": "differ-f68c19b4ca97267fb5be505ec33eb6b89a5297e9ed7ee40d0a3e88fb4082a6e4", + "previous_template_reference_name": "differ" }, - "commit_lead_time": 1108222.0, + "commit_lead_time": 1108141.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "production-promotion", "trail_name": "promote-all-33", - "template_reference_name": "creator", + "template_reference_name": "differ", "git_commit": "7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", "git_commit_info": { @@ -4331,27 +4041,27 @@ kosli get snapshot aws-prod --output=json "timestamp": 1785316994.0, "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b?artifact_id=d5412ba4-c8b6-4bf3-8a8f-05f2ed00", + "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac?artifact_id=a1a352b5-d5bb-4420-b064-c0b165d7", "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/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584...7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", "previous_git_commit": "7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", - "previous_fingerprint": "aa64db9bd0519d00fba81faf620d0bb1aae3d13839b585ed2ec8179d5e035a34", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:89019f6@sha256:aa64db9bd0519d00fba81faf620d0bb1aae3d13839b585ed2ec8179d5e035a34", + "previous_fingerprint": "f68c19b4ca97267fb5be505ec33eb6b89a5297e9ed7ee40d0a3e88fb4082a6e4", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:10e162d@sha256:f68c19b4ca97267fb5be505ec33eb6b89a5297e9ed7ee40d0a3e88fb4082a6e4", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", - "previous_trail_name": "promotion-one-150", - "previous_template_reference_name": "creator" + "previous_trail_name": "promote-all-32", + "previous_template_reference_name": "differ" }, - "commit_lead_time": 1108179.0, + "commit_lead_time": 1108098.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", - "template_reference_name": "creator", + "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", + "template_reference_name": "differ", "git_commit": "ed3c81d7322bb8058615095f4aab28c147c53933", "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/ed3c81d7322bb8058615095f4aab28c147c53933", "git_commit_info": { @@ -4362,32 +4072,32 @@ kosli get snapshot aws-prod --output=json "timestamp": 1787661987.0, "url": "https://github.com/cyber-dojo/snyk-scanning/commit/ed3c81d7322bb8058615095f4aab28c147c53933" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b?artifact_id=533ebbe2-e4c3-40db-93b3-56ba7259", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac?artifact_id=68f0e4cc-648c-4e46-8b32-03848340", "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...ed3c81d7322bb8058615095f4aab28c147c53933", - "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...ed3c81d7322bb8058615095f4aab28c147c53933", + "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/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": "differ-902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b", + "previous_template_reference_name": "differ" }, - "commit_lead_time": -1236814.0, + "commit_lead_time": -1236895.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] } ], "ecs_context": { - "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/d85a1f3513dd45c788f6341641110bfd", + "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/35d500a5dc23412bad3e1fe7459c66fb", "cluster_name": null, "service_name": null } }, { - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:108cccf@sha256:31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:36f0420@sha256:2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", "compliant": true, "deployments": [], "policy_decisions": [ @@ -4409,8 +4119,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "differ-ci", - "trail_name": "108cccf9bccf9af5d455db66c250480b53cbecc7", + "flow_name": "saver-ci", + "trail_name": "36f0420f728fe61e44a3ab0043cf9a3d70863cad", "artifact_status": null } }, @@ -4418,7 +4128,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", + "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", "artifact_status": null } }, @@ -4434,7 +4144,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", + "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", "artifact_status": null } } @@ -4454,8 +4164,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "differ-ci", - "trail_name": "108cccf9bccf9af5d455db66c250480b53cbecc7", + "flow_name": "saver-ci", + "trail_name": "36f0420f728fe61e44a3ab0043cf9a3d70863cad", "artifact_status": "COMPLIANT" } }, @@ -4463,7 +4173,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", + "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", "artifact_status": "COMPLIANT" } }, @@ -4479,7 +4189,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", + "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", "artifact_status": "COMPLIANT" } } @@ -4504,8 +4214,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "differ-ci", - "trail_name": "108cccf9bccf9af5d455db66c250480b53cbecc7", + "flow_name": "saver-ci", + "trail_name": "36f0420f728fe61e44a3ab0043cf9a3d70863cad", "artifact_status": null } }, @@ -4513,7 +4223,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", + "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", "artifact_status": null } }, @@ -4529,7 +4239,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", + "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", "artifact_status": null } } @@ -4556,8 +4266,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "differ-ci", - "trail_name": "108cccf9bccf9af5d455db66c250480b53cbecc7", + "flow_name": "saver-ci", + "trail_name": "36f0420f728fe61e44a3ab0043cf9a3d70863cad", "artifact_status": null } }, @@ -4565,7 +4275,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", + "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", "artifact_status": null } }, @@ -4581,7 +4291,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", + "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", "artifact_status": null } } @@ -4601,8 +4311,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "differ-ci", - "trail_name": "108cccf9bccf9af5d455db66c250480b53cbecc7", + "flow_name": "saver-ci", + "trail_name": "36f0420f728fe61e44a3ab0043cf9a3d70863cad", "artifact_status": "COMPLIANT" } }, @@ -4610,7 +4320,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", + "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", "artifact_status": "COMPLIANT" } }, @@ -4626,7 +4336,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", + "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", "artifact_status": "COMPLIANT" } } @@ -4651,8 +4361,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "differ-ci", - "trail_name": "108cccf9bccf9af5d455db66c250480b53cbecc7", + "flow_name": "saver-ci", + "trail_name": "36f0420f728fe61e44a3ab0043cf9a3d70863cad", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -4661,7 +4371,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", + "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -4679,7 +4389,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", + "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -4707,8 +4417,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "differ-ci", - "trail_name": "108cccf9bccf9af5d455db66c250480b53cbecc7", + "flow_name": "saver-ci", + "trail_name": "36f0420f728fe61e44a3ab0043cf9a3d70863cad", "artifact_status": null } }, @@ -4716,7 +4426,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", + "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", "artifact_status": null } }, @@ -4732,7 +4442,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", + "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", "artifact_status": null } } @@ -4752,8 +4462,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "differ-ci", - "trail_name": "108cccf9bccf9af5d455db66c250480b53cbecc7", + "flow_name": "saver-ci", + "trail_name": "36f0420f728fe61e44a3ab0043cf9a3d70863cad", "artifact_status": "COMPLIANT" } }, @@ -4761,7 +4471,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", + "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", "artifact_status": "COMPLIANT" } }, @@ -4777,7 +4487,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", + "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", "artifact_status": "COMPLIANT" } } @@ -4802,8 +4512,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "differ-ci", - "trail_name": "108cccf9bccf9af5d455db66c250480b53cbecc7", + "flow_name": "saver-ci", + "trail_name": "36f0420f728fe61e44a3ab0043cf9a3d70863cad", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -4812,7 +4522,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", + "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -4830,7 +4540,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", + "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -4858,8 +4568,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "differ-ci", - "trail_name": "108cccf9bccf9af5d455db66c250480b53cbecc7", + "flow_name": "saver-ci", + "trail_name": "36f0420f728fe61e44a3ab0043cf9a3d70863cad", "artifact_status": null } }, @@ -4867,7 +4577,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", + "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", "artifact_status": null } }, @@ -4883,7 +4593,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", + "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", "artifact_status": null } } @@ -4903,8 +4613,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "differ-ci", - "trail_name": "108cccf9bccf9af5d455db66c250480b53cbecc7", + "flow_name": "saver-ci", + "trail_name": "36f0420f728fe61e44a3ab0043cf9a3d70863cad", "artifact_status": "COMPLIANT" } }, @@ -4912,7 +4622,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", + "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", "artifact_status": "COMPLIANT" } }, @@ -4928,7 +4638,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", + "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", "artifact_status": "COMPLIANT" } } @@ -4953,8 +4663,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "differ-ci", - "trail_name": "108cccf9bccf9af5d455db66c250480b53cbecc7", + "flow_name": "saver-ci", + "trail_name": "36f0420f728fe61e44a3ab0043cf9a3d70863cad", "artifact_status": null } }, @@ -4962,7 +4672,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", + "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", "artifact_status": null } }, @@ -4978,7 +4688,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", + "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", "artifact_status": null } } @@ -5005,8 +4715,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "differ-ci", - "trail_name": "108cccf9bccf9af5d455db66c250480b53cbecc7", + "flow_name": "saver-ci", + "trail_name": "36f0420f728fe61e44a3ab0043cf9a3d70863cad", "artifact_status": null } }, @@ -5014,7 +4724,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", + "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", "artifact_status": null } }, @@ -5030,7 +4740,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", + "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", "artifact_status": null } } @@ -5056,8 +4766,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "differ-ci", - "trail_name": "108cccf9bccf9af5d455db66c250480b53cbecc7", + "flow_name": "saver-ci", + "trail_name": "36f0420f728fe61e44a3ab0043cf9a3d70863cad", "artifact_status": "COMPLIANT" } }, @@ -5065,7 +4775,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", + "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", "artifact_status": "COMPLIANT" } }, @@ -5081,7 +4791,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", + "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", "artifact_status": "COMPLIANT" } } @@ -5092,9 +4802,9 @@ kosli get snapshot aws-prod --output=json } ], "reasons_for_incompliance": [], - "fingerprint": "31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", + "fingerprint": "2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", "creationTimestamp": [ - 1786425092 + 1786425086 ], "pods": null, "annotation": { @@ -5102,59 +4812,59 @@ kosli get snapshot aws-prod --output=json "was": 1, "now": 1 }, - "flow_name": "differ-ci", - "git_commit": "108cccf9bccf9af5d455db66c250480b53cbecc7", - "commit_url": "https://github.com/cyber-dojo/differ/commit/108cccf9bccf9af5d455db66c250480b53cbecc7", - "html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci/artifacts/31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac?artifact_id=50b8cff6-1888-4c76-b31a-fdd7a311", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci", + "flow_name": "saver-ci", + "git_commit": "36f0420f728fe61e44a3ab0043cf9a3d70863cad", + "commit_url": "https://github.com/cyber-dojo/saver/commit/36f0420f728fe61e44a3ab0043cf9a3d70863cad", + "html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci/artifacts/2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a?artifact_id=01bf7de8-52fc-4585-a4b6-abf82047", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/differ/compare/10e162d4e1294815375a31121f14d57e13183b34...108cccf9bccf9af5d455db66c250480b53cbecc7", - "previous_git_commit": "10e162d4e1294815375a31121f14d57e13183b34", - "previous_fingerprint": "f68c19b4ca97267fb5be505ec33eb6b89a5297e9ed7ee40d0a3e88fb4082a6e4", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:10e162d@sha256:f68c19b4ca97267fb5be505ec33eb6b89a5297e9ed7ee40d0a3e88fb4082a6e4", + "diff_url": "https://github.com/cyber-dojo/saver/compare/595e902fa2f5844d9ce0612a5c9295cd8dab5b97...36f0420f728fe61e44a3ab0043cf9a3d70863cad", + "previous_git_commit": "595e902fa2f5844d9ce0612a5c9295cd8dab5b97", + "previous_fingerprint": "a5b224c24732c48daaf6ea495e57345bc4b9fde34b37bf4b7c758b6ee778bee3", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:595e902@sha256:a5b224c24732c48daaf6ea495e57345bc4b9fde34b37bf4b7c758b6ee778bee3", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/differ/commit/10e162d4e1294815375a31121f14d57e13183b34", - "previous_trail_name": "10e162d4e1294815375a31121f14d57e13183b34", - "previous_template_reference_name": "differ" + "previous_git_commit_url": "https://github.com/cyber-dojo/saver/commit/595e902fa2f5844d9ce0612a5c9295cd8dab5b97", + "previous_trail_name": "595e902fa2f5844d9ce0612a5c9295cd8dab5b97", + "previous_template_reference_name": "saver" }, - "commit_lead_time": 162716.0, + "commit_lead_time": 171420.0, "flows": [ { - "flow_name": "differ-ci", - "trail_name": "108cccf9bccf9af5d455db66c250480b53cbecc7", - "template_reference_name": "differ", - "git_commit": "108cccf9bccf9af5d455db66c250480b53cbecc7", - "commit_url": "https://github.com/cyber-dojo/differ/commit/108cccf9bccf9af5d455db66c250480b53cbecc7", + "flow_name": "saver-ci", + "trail_name": "36f0420f728fe61e44a3ab0043cf9a3d70863cad", + "template_reference_name": "saver", + "git_commit": "36f0420f728fe61e44a3ab0043cf9a3d70863cad", + "commit_url": "https://github.com/cyber-dojo/saver/commit/36f0420f728fe61e44a3ab0043cf9a3d70863cad", "git_commit_info": { - "sha1": "108cccf9bccf9af5d455db66c250480b53cbecc7", - "message": "Merge pull request #449 from cyber-dojo/fix-exit-non-zero", - "author": "AlexKantor87 ", + "sha1": "36f0420f728fe61e44a3ab0043cf9a3d70863cad", + "message": "Make exit_non_zero actually exit (#438)\n\nkill -INT $$ only stops the script while nothing traps INT. Add\n a cleanup trap on INT - a normal thing for a script to do - and\n bash runs the handler and resumes at the next statement, so a\n guard prints its error and the script carries on to exit 0.\n exit 42 cannot be declined, and the EXIT trap still cleans up.", + "author": "Jon Jagger ", "branch": "", - "timestamp": 1786262376.0, - "url": "https://github.com/cyber-dojo/differ/commit/108cccf9bccf9af5d455db66c250480b53cbecc7" + "timestamp": 1786253666.0, + "url": "https://github.com/cyber-dojo/saver/commit/36f0420f728fe61e44a3ab0043cf9a3d70863cad" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci/artifacts/31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac?artifact_id=50b8cff6-1888-4c76-b31a-fdd7a311", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci", + "html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci/artifacts/2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a?artifact_id=01bf7de8-52fc-4585-a4b6-abf82047", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/differ/compare/10e162d4e1294815375a31121f14d57e13183b34...108cccf9bccf9af5d455db66c250480b53cbecc7", - "previous_git_commit": "10e162d4e1294815375a31121f14d57e13183b34", - "previous_fingerprint": "f68c19b4ca97267fb5be505ec33eb6b89a5297e9ed7ee40d0a3e88fb4082a6e4", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:10e162d@sha256:f68c19b4ca97267fb5be505ec33eb6b89a5297e9ed7ee40d0a3e88fb4082a6e4", + "diff_url": "https://github.com/cyber-dojo/saver/compare/595e902fa2f5844d9ce0612a5c9295cd8dab5b97...36f0420f728fe61e44a3ab0043cf9a3d70863cad", + "previous_git_commit": "595e902fa2f5844d9ce0612a5c9295cd8dab5b97", + "previous_fingerprint": "a5b224c24732c48daaf6ea495e57345bc4b9fde34b37bf4b7c758b6ee778bee3", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:595e902@sha256:a5b224c24732c48daaf6ea495e57345bc4b9fde34b37bf4b7c758b6ee778bee3", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/differ/commit/10e162d4e1294815375a31121f14d57e13183b34", - "previous_trail_name": "10e162d4e1294815375a31121f14d57e13183b34", - "previous_template_reference_name": "differ" + "previous_git_commit_url": "https://github.com/cyber-dojo/saver/commit/595e902fa2f5844d9ce0612a5c9295cd8dab5b97", + "previous_trail_name": "595e902fa2f5844d9ce0612a5c9295cd8dab5b97", + "previous_template_reference_name": "saver" }, - "commit_lead_time": 162716.0, + "commit_lead_time": 171420.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", - "template_reference_name": "differ", + "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", + "template_reference_name": "saver", "git_commit": "c0666c020044ac5b5181999ec153db1e7f6cd303", "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c0666c020044ac5b5181999ec153db1e7f6cd303", "git_commit_info": { @@ -5165,27 +4875,27 @@ kosli get snapshot aws-prod --output=json "timestamp": 1785316951.0, "url": "https://github.com/cyber-dojo/snyk-scanning/commit/c0666c020044ac5b5181999ec153db1e7f6cd303" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac?artifact_id=33c43d32-ff7c-4f02-8819-c03ff8e0", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a?artifact_id=070b4e9b-f146-43ef-89f9-49b75fa4", "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/c0666c020044ac5b5181999ec153db1e7f6cd303...c0666c020044ac5b5181999ec153db1e7f6cd303", "previous_git_commit": "c0666c020044ac5b5181999ec153db1e7f6cd303", - "previous_fingerprint": "f68c19b4ca97267fb5be505ec33eb6b89a5297e9ed7ee40d0a3e88fb4082a6e4", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:10e162d@sha256:f68c19b4ca97267fb5be505ec33eb6b89a5297e9ed7ee40d0a3e88fb4082a6e4", + "previous_fingerprint": "a5b224c24732c48daaf6ea495e57345bc4b9fde34b37bf4b7c758b6ee778bee3", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:595e902@sha256:a5b224c24732c48daaf6ea495e57345bc4b9fde34b37bf4b7c758b6ee778bee3", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c0666c020044ac5b5181999ec153db1e7f6cd303", - "previous_trail_name": "differ-f68c19b4ca97267fb5be505ec33eb6b89a5297e9ed7ee40d0a3e88fb4082a6e4", - "previous_template_reference_name": "differ" + "previous_trail_name": "saver-a5b224c24732c48daaf6ea495e57345bc4b9fde34b37bf4b7c758b6ee778bee3", + "previous_template_reference_name": "saver" }, - "commit_lead_time": 1108141.0, + "commit_lead_time": 1108135.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "production-promotion", "trail_name": "promote-all-33", - "template_reference_name": "differ", + "template_reference_name": "saver", "git_commit": "7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", "git_commit_info": { @@ -5196,27 +4906,27 @@ kosli get snapshot aws-prod --output=json "timestamp": 1785316994.0, "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac?artifact_id=a1a352b5-d5bb-4420-b064-c0b165d7", + "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a?artifact_id=b3939e7a-afe0-460c-8da7-f456c2df", "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/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584...7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", "previous_git_commit": "7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", - "previous_fingerprint": "f68c19b4ca97267fb5be505ec33eb6b89a5297e9ed7ee40d0a3e88fb4082a6e4", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:10e162d@sha256:f68c19b4ca97267fb5be505ec33eb6b89a5297e9ed7ee40d0a3e88fb4082a6e4", + "previous_fingerprint": "a5b224c24732c48daaf6ea495e57345bc4b9fde34b37bf4b7c758b6ee778bee3", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:595e902@sha256:a5b224c24732c48daaf6ea495e57345bc4b9fde34b37bf4b7c758b6ee778bee3", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", "previous_trail_name": "promote-all-32", - "previous_template_reference_name": "differ" + "previous_template_reference_name": "saver" }, - "commit_lead_time": 1108098.0, + "commit_lead_time": 1108092.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", - "template_reference_name": "differ", + "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", + "template_reference_name": "saver", "git_commit": "ed3c81d7322bb8058615095f4aab28c147c53933", "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/ed3c81d7322bb8058615095f4aab28c147c53933", "git_commit_info": { @@ -5227,32 +4937,32 @@ kosli get snapshot aws-prod --output=json "timestamp": 1787661987.0, "url": "https://github.com/cyber-dojo/snyk-scanning/commit/ed3c81d7322bb8058615095f4aab28c147c53933" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac?artifact_id=9b314251-1c8c-49c6-b810-0ca86615", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a?artifact_id=d3c22d42-58bd-49e4-8b2e-f8d51080", "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...ed3c81d7322bb8058615095f4aab28c147c53933", "previous_git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_fingerprint": "902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:981dcfc@sha256:902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b", + "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": "differ-902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b", - "previous_template_reference_name": "differ" + "previous_trail_name": "saver-f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419", + "previous_template_reference_name": "saver" }, - "commit_lead_time": -1236895.0, + "commit_lead_time": -1236901.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] } ], "ecs_context": { - "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/35d500a5dc23412bad3e1fe7459c66fb", + "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/d20584d0428f41a3944ac335cea4da5c", "cluster_name": null, "service_name": null } }, { - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:36f0420@sha256:2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:2b300f4@sha256:1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", "compliant": true, "deployments": [], "policy_decisions": [ @@ -5274,8 +4984,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "saver-ci", - "trail_name": "36f0420f728fe61e44a3ab0043cf9a3d70863cad", + "flow_name": "dashboard-ci", + "trail_name": "2b300f450f72006f6a9000aaf9cd04485f1e8095", "artifact_status": null } }, @@ -5283,7 +4993,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", + "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", "artifact_status": null } }, @@ -5299,7 +5009,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", + "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", "artifact_status": null } } @@ -5319,8 +5029,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "saver-ci", - "trail_name": "36f0420f728fe61e44a3ab0043cf9a3d70863cad", + "flow_name": "dashboard-ci", + "trail_name": "2b300f450f72006f6a9000aaf9cd04485f1e8095", "artifact_status": "COMPLIANT" } }, @@ -5328,7 +5038,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", + "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", "artifact_status": "COMPLIANT" } }, @@ -5344,7 +5054,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", + "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", "artifact_status": "COMPLIANT" } } @@ -5369,8 +5079,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "saver-ci", - "trail_name": "36f0420f728fe61e44a3ab0043cf9a3d70863cad", + "flow_name": "dashboard-ci", + "trail_name": "2b300f450f72006f6a9000aaf9cd04485f1e8095", "artifact_status": null } }, @@ -5378,7 +5088,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", + "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", "artifact_status": null } }, @@ -5394,7 +5104,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", + "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", "artifact_status": null } } @@ -5421,8 +5131,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "saver-ci", - "trail_name": "36f0420f728fe61e44a3ab0043cf9a3d70863cad", + "flow_name": "dashboard-ci", + "trail_name": "2b300f450f72006f6a9000aaf9cd04485f1e8095", "artifact_status": null } }, @@ -5430,7 +5140,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", + "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", "artifact_status": null } }, @@ -5446,7 +5156,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", + "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", "artifact_status": null } } @@ -5466,8 +5176,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "saver-ci", - "trail_name": "36f0420f728fe61e44a3ab0043cf9a3d70863cad", + "flow_name": "dashboard-ci", + "trail_name": "2b300f450f72006f6a9000aaf9cd04485f1e8095", "artifact_status": "COMPLIANT" } }, @@ -5475,7 +5185,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", + "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", "artifact_status": "COMPLIANT" } }, @@ -5491,7 +5201,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", + "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", "artifact_status": "COMPLIANT" } } @@ -5516,8 +5226,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "saver-ci", - "trail_name": "36f0420f728fe61e44a3ab0043cf9a3d70863cad", + "flow_name": "dashboard-ci", + "trail_name": "2b300f450f72006f6a9000aaf9cd04485f1e8095", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -5526,7 +5236,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", + "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -5544,7 +5254,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", + "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -5572,8 +5282,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "saver-ci", - "trail_name": "36f0420f728fe61e44a3ab0043cf9a3d70863cad", + "flow_name": "dashboard-ci", + "trail_name": "2b300f450f72006f6a9000aaf9cd04485f1e8095", "artifact_status": null } }, @@ -5581,7 +5291,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", + "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", "artifact_status": null } }, @@ -5597,7 +5307,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", + "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", "artifact_status": null } } @@ -5617,8 +5327,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "saver-ci", - "trail_name": "36f0420f728fe61e44a3ab0043cf9a3d70863cad", + "flow_name": "dashboard-ci", + "trail_name": "2b300f450f72006f6a9000aaf9cd04485f1e8095", "artifact_status": "COMPLIANT" } }, @@ -5626,7 +5336,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", + "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", "artifact_status": "COMPLIANT" } }, @@ -5642,7 +5352,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", + "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", "artifact_status": "COMPLIANT" } } @@ -5667,8 +5377,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "saver-ci", - "trail_name": "36f0420f728fe61e44a3ab0043cf9a3d70863cad", + "flow_name": "dashboard-ci", + "trail_name": "2b300f450f72006f6a9000aaf9cd04485f1e8095", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -5677,7 +5387,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", + "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -5695,7 +5405,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", + "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -5723,8 +5433,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "saver-ci", - "trail_name": "36f0420f728fe61e44a3ab0043cf9a3d70863cad", + "flow_name": "dashboard-ci", + "trail_name": "2b300f450f72006f6a9000aaf9cd04485f1e8095", "artifact_status": null } }, @@ -5732,7 +5442,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", + "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", "artifact_status": null } }, @@ -5748,7 +5458,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", + "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", "artifact_status": null } } @@ -5768,8 +5478,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "saver-ci", - "trail_name": "36f0420f728fe61e44a3ab0043cf9a3d70863cad", + "flow_name": "dashboard-ci", + "trail_name": "2b300f450f72006f6a9000aaf9cd04485f1e8095", "artifact_status": "COMPLIANT" } }, @@ -5777,7 +5487,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", + "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", "artifact_status": "COMPLIANT" } }, @@ -5793,7 +5503,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", + "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", "artifact_status": "COMPLIANT" } } @@ -5818,8 +5528,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "saver-ci", - "trail_name": "36f0420f728fe61e44a3ab0043cf9a3d70863cad", + "flow_name": "dashboard-ci", + "trail_name": "2b300f450f72006f6a9000aaf9cd04485f1e8095", "artifact_status": null } }, @@ -5827,7 +5537,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", + "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", "artifact_status": null } }, @@ -5843,7 +5553,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", + "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", "artifact_status": null } } @@ -5870,8 +5580,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "saver-ci", - "trail_name": "36f0420f728fe61e44a3ab0043cf9a3d70863cad", + "flow_name": "dashboard-ci", + "trail_name": "2b300f450f72006f6a9000aaf9cd04485f1e8095", "artifact_status": null } }, @@ -5879,7 +5589,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", + "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", "artifact_status": null } }, @@ -5895,7 +5605,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", + "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", "artifact_status": null } } @@ -5921,8 +5631,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "saver-ci", - "trail_name": "36f0420f728fe61e44a3ab0043cf9a3d70863cad", + "flow_name": "dashboard-ci", + "trail_name": "2b300f450f72006f6a9000aaf9cd04485f1e8095", "artifact_status": "COMPLIANT" } }, @@ -5930,7 +5640,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", + "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", "artifact_status": "COMPLIANT" } }, @@ -5946,7 +5656,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", + "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", "artifact_status": "COMPLIANT" } } @@ -5957,9 +5667,9 @@ kosli get snapshot aws-prod --output=json } ], "reasons_for_incompliance": [], - "fingerprint": "2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", + "fingerprint": "1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", "creationTimestamp": [ - 1786425086 + 1786425083 ], "pods": null, "annotation": { @@ -5967,59 +5677,59 @@ kosli get snapshot aws-prod --output=json "was": 1, "now": 1 }, - "flow_name": "saver-ci", - "git_commit": "36f0420f728fe61e44a3ab0043cf9a3d70863cad", - "commit_url": "https://github.com/cyber-dojo/saver/commit/36f0420f728fe61e44a3ab0043cf9a3d70863cad", - "html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci/artifacts/2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a?artifact_id=01bf7de8-52fc-4585-a4b6-abf82047", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci", + "flow_name": "dashboard-ci", + "git_commit": "2b300f450f72006f6a9000aaf9cd04485f1e8095", + "commit_url": "https://github.com/cyber-dojo/dashboard/commit/2b300f450f72006f6a9000aaf9cd04485f1e8095", + "html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci/artifacts/1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5?artifact_id=a805b555-f25a-4828-89d2-a28881c8", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/saver/compare/595e902fa2f5844d9ce0612a5c9295cd8dab5b97...36f0420f728fe61e44a3ab0043cf9a3d70863cad", - "previous_git_commit": "595e902fa2f5844d9ce0612a5c9295cd8dab5b97", - "previous_fingerprint": "a5b224c24732c48daaf6ea495e57345bc4b9fde34b37bf4b7c758b6ee778bee3", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:595e902@sha256:a5b224c24732c48daaf6ea495e57345bc4b9fde34b37bf4b7c758b6ee778bee3", + "diff_url": "https://github.com/cyber-dojo/dashboard/compare/da7bacefac23b0983d2b9f39d87508e0f85b1167...2b300f450f72006f6a9000aaf9cd04485f1e8095", + "previous_git_commit": "da7bacefac23b0983d2b9f39d87508e0f85b1167", + "previous_fingerprint": "8a89de34c6d8102bc376b6a238015b1dd768a81f16a741b28dbd8c8af3deefd6", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:da7bace@sha256:8a89de34c6d8102bc376b6a238015b1dd768a81f16a741b28dbd8c8af3deefd6", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/saver/commit/595e902fa2f5844d9ce0612a5c9295cd8dab5b97", - "previous_trail_name": "595e902fa2f5844d9ce0612a5c9295cd8dab5b97", - "previous_template_reference_name": "saver" + "previous_git_commit_url": "https://github.com/cyber-dojo/dashboard/commit/da7bacefac23b0983d2b9f39d87508e0f85b1167", + "previous_trail_name": "da7bacefac23b0983d2b9f39d87508e0f85b1167", + "previous_template_reference_name": "dashboard" }, - "commit_lead_time": 171420.0, + "commit_lead_time": 660655.0, "flows": [ { - "flow_name": "saver-ci", - "trail_name": "36f0420f728fe61e44a3ab0043cf9a3d70863cad", - "template_reference_name": "saver", - "git_commit": "36f0420f728fe61e44a3ab0043cf9a3d70863cad", - "commit_url": "https://github.com/cyber-dojo/saver/commit/36f0420f728fe61e44a3ab0043cf9a3d70863cad", + "flow_name": "dashboard-ci", + "trail_name": "2b300f450f72006f6a9000aaf9cd04485f1e8095", + "template_reference_name": "dashboard", + "git_commit": "2b300f450f72006f6a9000aaf9cd04485f1e8095", + "commit_url": "https://github.com/cyber-dojo/dashboard/commit/2b300f450f72006f6a9000aaf9cd04485f1e8095", "git_commit_info": { - "sha1": "36f0420f728fe61e44a3ab0043cf9a3d70863cad", - "message": "Make exit_non_zero actually exit (#438)\n\nkill -INT $$ only stops the script while nothing traps INT. Add\n a cleanup trap on INT - a normal thing for a script to do - and\n bash runs the handler and resumes at the next statement, so a\n guard prints its error and the script carries on to exit 0.\n exit 42 cannot be declined, and the EXIT trap still cleans up.", + "sha1": "2b300f450f72006f6a9000aaf9cd04485f1e8095", + "message": "Run the linter as the invoking user (#432)\n\nThe rubocop container wrote reports/rubocop/junit.xml as its own user, so on a\n linux runner the file belongs to someone else. That breaks the attestation as\n soon as it has more than one path to send: kosli attest copies evidence with\n PreserveOwner, and a non-root process cannot chown a file to another uid.\n\n chown /tmp/1800768837/reports/rubocop/junit.xml: operation not permitted\n\n Attaching .rubocop.yml in #431 is what supplied the second path. With one path\n the CLI tars in place and never copies, which is why this had been fine.\n\n Passing --user makes the container write as whoever ran it. Worth doing on its\n own account - a container should not leave files you cannot delete in your\n working tree - and it sidesteps the CLI's behaviour without waiting on it. That\n behaviour looks like a bug and is written up in\n ../kosli-cli-preserve-owner-bug.md for an issue against kosli-dev/cli.\n\n Docker Desktop maps ownership back to the calling user, so this is invisible on a\n mac and only shows on the runner.", "author": "Jon Jagger ", "branch": "", - "timestamp": 1786253666.0, - "url": "https://github.com/cyber-dojo/saver/commit/36f0420f728fe61e44a3ab0043cf9a3d70863cad" + "timestamp": 1785764428.0, + "url": "https://github.com/cyber-dojo/dashboard/commit/2b300f450f72006f6a9000aaf9cd04485f1e8095" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci/artifacts/2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a?artifact_id=01bf7de8-52fc-4585-a4b6-abf82047", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci", + "html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci/artifacts/1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5?artifact_id=a805b555-f25a-4828-89d2-a28881c8", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/saver/compare/595e902fa2f5844d9ce0612a5c9295cd8dab5b97...36f0420f728fe61e44a3ab0043cf9a3d70863cad", - "previous_git_commit": "595e902fa2f5844d9ce0612a5c9295cd8dab5b97", - "previous_fingerprint": "a5b224c24732c48daaf6ea495e57345bc4b9fde34b37bf4b7c758b6ee778bee3", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:595e902@sha256:a5b224c24732c48daaf6ea495e57345bc4b9fde34b37bf4b7c758b6ee778bee3", + "diff_url": "https://github.com/cyber-dojo/dashboard/compare/da7bacefac23b0983d2b9f39d87508e0f85b1167...2b300f450f72006f6a9000aaf9cd04485f1e8095", + "previous_git_commit": "da7bacefac23b0983d2b9f39d87508e0f85b1167", + "previous_fingerprint": "8a89de34c6d8102bc376b6a238015b1dd768a81f16a741b28dbd8c8af3deefd6", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:da7bace@sha256:8a89de34c6d8102bc376b6a238015b1dd768a81f16a741b28dbd8c8af3deefd6", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/saver/commit/595e902fa2f5844d9ce0612a5c9295cd8dab5b97", - "previous_trail_name": "595e902fa2f5844d9ce0612a5c9295cd8dab5b97", - "previous_template_reference_name": "saver" + "previous_git_commit_url": "https://github.com/cyber-dojo/dashboard/commit/da7bacefac23b0983d2b9f39d87508e0f85b1167", + "previous_trail_name": "da7bacefac23b0983d2b9f39d87508e0f85b1167", + "previous_template_reference_name": "dashboard" }, - "commit_lead_time": 171420.0, + "commit_lead_time": 660655.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", - "template_reference_name": "saver", + "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", + "template_reference_name": "dashboard", "git_commit": "c0666c020044ac5b5181999ec153db1e7f6cd303", "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c0666c020044ac5b5181999ec153db1e7f6cd303", "git_commit_info": { @@ -6030,27 +5740,27 @@ kosli get snapshot aws-prod --output=json "timestamp": 1785316951.0, "url": "https://github.com/cyber-dojo/snyk-scanning/commit/c0666c020044ac5b5181999ec153db1e7f6cd303" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a?artifact_id=070b4e9b-f146-43ef-89f9-49b75fa4", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5?artifact_id=12bfdb5d-1c9b-4420-b2e1-83318c0f", "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/c0666c020044ac5b5181999ec153db1e7f6cd303...c0666c020044ac5b5181999ec153db1e7f6cd303", "previous_git_commit": "c0666c020044ac5b5181999ec153db1e7f6cd303", - "previous_fingerprint": "a5b224c24732c48daaf6ea495e57345bc4b9fde34b37bf4b7c758b6ee778bee3", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:595e902@sha256:a5b224c24732c48daaf6ea495e57345bc4b9fde34b37bf4b7c758b6ee778bee3", + "previous_fingerprint": "8a89de34c6d8102bc376b6a238015b1dd768a81f16a741b28dbd8c8af3deefd6", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:da7bace@sha256:8a89de34c6d8102bc376b6a238015b1dd768a81f16a741b28dbd8c8af3deefd6", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c0666c020044ac5b5181999ec153db1e7f6cd303", - "previous_trail_name": "saver-a5b224c24732c48daaf6ea495e57345bc4b9fde34b37bf4b7c758b6ee778bee3", - "previous_template_reference_name": "saver" + "previous_trail_name": "dashboard-8a89de34c6d8102bc376b6a238015b1dd768a81f16a741b28dbd8c8af3deefd6", + "previous_template_reference_name": "dashboard" }, - "commit_lead_time": 1108135.0, + "commit_lead_time": 1108132.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "production-promotion", "trail_name": "promote-all-33", - "template_reference_name": "saver", + "template_reference_name": "dashboard", "git_commit": "7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", "git_commit_info": { @@ -6061,27 +5771,27 @@ kosli get snapshot aws-prod --output=json "timestamp": 1785316994.0, "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a?artifact_id=b3939e7a-afe0-460c-8da7-f456c2df", + "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5?artifact_id=2eff9d42-2240-4f5b-8217-ccc995c3", "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/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584...7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", "previous_git_commit": "7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", - "previous_fingerprint": "a5b224c24732c48daaf6ea495e57345bc4b9fde34b37bf4b7c758b6ee778bee3", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:595e902@sha256:a5b224c24732c48daaf6ea495e57345bc4b9fde34b37bf4b7c758b6ee778bee3", + "previous_fingerprint": "8a89de34c6d8102bc376b6a238015b1dd768a81f16a741b28dbd8c8af3deefd6", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:da7bace@sha256:8a89de34c6d8102bc376b6a238015b1dd768a81f16a741b28dbd8c8af3deefd6", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", - "previous_trail_name": "promote-all-32", - "previous_template_reference_name": "saver" + "previous_trail_name": "promotion-one-153", + "previous_template_reference_name": "dashboard" }, - "commit_lead_time": 1108092.0, + "commit_lead_time": 1108089.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", - "template_reference_name": "saver", + "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", + "template_reference_name": "dashboard", "git_commit": "ed3c81d7322bb8058615095f4aab28c147c53933", "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/ed3c81d7322bb8058615095f4aab28c147c53933", "git_commit_info": { @@ -6092,32 +5802,32 @@ kosli get snapshot aws-prod --output=json "timestamp": 1787661987.0, "url": "https://github.com/cyber-dojo/snyk-scanning/commit/ed3c81d7322bb8058615095f4aab28c147c53933" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a?artifact_id=c3e0d240-b44a-4e2c-911a-6c7ec22b", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5?artifact_id=48855ac3-9ebe-4c09-92d7-8852020b", "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...ed3c81d7322bb8058615095f4aab28c147c53933", "previous_git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_fingerprint": "f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:8c84fac@sha256:f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419", + "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/00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_trail_name": "saver-f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419", - "previous_template_reference_name": "saver" + "previous_trail_name": "dashboard-45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c", + "previous_template_reference_name": "dashboard" }, - "commit_lead_time": -1236901.0, + "commit_lead_time": -1236904.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] } ], "ecs_context": { - "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/d20584d0428f41a3944ac335cea4da5c", + "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/fb58f1ca5ba94c30b59fe097af55fd5f", "cluster_name": null, "service_name": null } }, { - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:2b300f4@sha256:1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:068b342@sha256:adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", "compliant": true, "deployments": [], "policy_decisions": [ @@ -6139,8 +5849,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "dashboard-ci", - "trail_name": "2b300f450f72006f6a9000aaf9cd04485f1e8095", + "flow_name": "languages-start-points-ci", + "trail_name": "068b3424c7da843a4f2d428d2e4915f33efc4a02", "artifact_status": null } }, @@ -6148,7 +5858,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", + "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", "artifact_status": null } }, @@ -6164,7 +5874,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", + "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", "artifact_status": null } } @@ -6184,8 +5894,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "dashboard-ci", - "trail_name": "2b300f450f72006f6a9000aaf9cd04485f1e8095", + "flow_name": "languages-start-points-ci", + "trail_name": "068b3424c7da843a4f2d428d2e4915f33efc4a02", "artifact_status": "COMPLIANT" } }, @@ -6193,7 +5903,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", + "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", "artifact_status": "COMPLIANT" } }, @@ -6209,7 +5919,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", + "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", "artifact_status": "COMPLIANT" } } @@ -6234,8 +5944,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "dashboard-ci", - "trail_name": "2b300f450f72006f6a9000aaf9cd04485f1e8095", + "flow_name": "languages-start-points-ci", + "trail_name": "068b3424c7da843a4f2d428d2e4915f33efc4a02", "artifact_status": null } }, @@ -6243,7 +5953,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", + "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", "artifact_status": null } }, @@ -6259,7 +5969,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", + "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", "artifact_status": null } } @@ -6286,8 +5996,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "dashboard-ci", - "trail_name": "2b300f450f72006f6a9000aaf9cd04485f1e8095", + "flow_name": "languages-start-points-ci", + "trail_name": "068b3424c7da843a4f2d428d2e4915f33efc4a02", "artifact_status": null } }, @@ -6295,7 +6005,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", + "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", "artifact_status": null } }, @@ -6311,7 +6021,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", + "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", "artifact_status": null } } @@ -6331,8 +6041,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "dashboard-ci", - "trail_name": "2b300f450f72006f6a9000aaf9cd04485f1e8095", + "flow_name": "languages-start-points-ci", + "trail_name": "068b3424c7da843a4f2d428d2e4915f33efc4a02", "artifact_status": "COMPLIANT" } }, @@ -6340,7 +6050,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", + "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", "artifact_status": "COMPLIANT" } }, @@ -6356,7 +6066,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", + "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", "artifact_status": "COMPLIANT" } } @@ -6381,8 +6091,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "dashboard-ci", - "trail_name": "2b300f450f72006f6a9000aaf9cd04485f1e8095", + "flow_name": "languages-start-points-ci", + "trail_name": "068b3424c7da843a4f2d428d2e4915f33efc4a02", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -6391,7 +6101,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", + "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -6409,7 +6119,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", + "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -6437,8 +6147,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "dashboard-ci", - "trail_name": "2b300f450f72006f6a9000aaf9cd04485f1e8095", + "flow_name": "languages-start-points-ci", + "trail_name": "068b3424c7da843a4f2d428d2e4915f33efc4a02", "artifact_status": null } }, @@ -6446,7 +6156,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", + "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", "artifact_status": null } }, @@ -6462,7 +6172,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", + "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", "artifact_status": null } } @@ -6482,8 +6192,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "dashboard-ci", - "trail_name": "2b300f450f72006f6a9000aaf9cd04485f1e8095", + "flow_name": "languages-start-points-ci", + "trail_name": "068b3424c7da843a4f2d428d2e4915f33efc4a02", "artifact_status": "COMPLIANT" } }, @@ -6491,7 +6201,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", + "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", "artifact_status": "COMPLIANT" } }, @@ -6507,7 +6217,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", + "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", "artifact_status": "COMPLIANT" } } @@ -6532,8 +6242,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "dashboard-ci", - "trail_name": "2b300f450f72006f6a9000aaf9cd04485f1e8095", + "flow_name": "languages-start-points-ci", + "trail_name": "068b3424c7da843a4f2d428d2e4915f33efc4a02", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -6542,7 +6252,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", + "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -6560,7 +6270,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", + "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -6588,8 +6298,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "dashboard-ci", - "trail_name": "2b300f450f72006f6a9000aaf9cd04485f1e8095", + "flow_name": "languages-start-points-ci", + "trail_name": "068b3424c7da843a4f2d428d2e4915f33efc4a02", "artifact_status": null } }, @@ -6597,7 +6307,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", + "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", "artifact_status": null } }, @@ -6613,7 +6323,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", + "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", "artifact_status": null } } @@ -6633,8 +6343,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "dashboard-ci", - "trail_name": "2b300f450f72006f6a9000aaf9cd04485f1e8095", + "flow_name": "languages-start-points-ci", + "trail_name": "068b3424c7da843a4f2d428d2e4915f33efc4a02", "artifact_status": "COMPLIANT" } }, @@ -6642,7 +6352,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", + "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", "artifact_status": "COMPLIANT" } }, @@ -6658,7 +6368,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", + "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", "artifact_status": "COMPLIANT" } } @@ -6683,8 +6393,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "dashboard-ci", - "trail_name": "2b300f450f72006f6a9000aaf9cd04485f1e8095", + "flow_name": "languages-start-points-ci", + "trail_name": "068b3424c7da843a4f2d428d2e4915f33efc4a02", "artifact_status": null } }, @@ -6692,7 +6402,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", + "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", "artifact_status": null } }, @@ -6708,7 +6418,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", + "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", "artifact_status": null } } @@ -6735,8 +6445,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "dashboard-ci", - "trail_name": "2b300f450f72006f6a9000aaf9cd04485f1e8095", + "flow_name": "languages-start-points-ci", + "trail_name": "068b3424c7da843a4f2d428d2e4915f33efc4a02", "artifact_status": null } }, @@ -6744,7 +6454,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", + "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", "artifact_status": null } }, @@ -6760,7 +6470,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", + "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", "artifact_status": null } } @@ -6786,8 +6496,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "dashboard-ci", - "trail_name": "2b300f450f72006f6a9000aaf9cd04485f1e8095", + "flow_name": "languages-start-points-ci", + "trail_name": "068b3424c7da843a4f2d428d2e4915f33efc4a02", "artifact_status": "COMPLIANT" } }, @@ -6795,7 +6505,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", + "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", "artifact_status": "COMPLIANT" } }, @@ -6811,7 +6521,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", + "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", "artifact_status": "COMPLIANT" } } @@ -6822,9 +6532,9 @@ kosli get snapshot aws-prod --output=json } ], "reasons_for_incompliance": [], - "fingerprint": "1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", + "fingerprint": "adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", "creationTimestamp": [ - 1786425083 + 1786425079 ], "pods": null, "annotation": { @@ -6832,59 +6542,59 @@ kosli get snapshot aws-prod --output=json "was": 1, "now": 1 }, - "flow_name": "dashboard-ci", - "git_commit": "2b300f450f72006f6a9000aaf9cd04485f1e8095", - "commit_url": "https://github.com/cyber-dojo/dashboard/commit/2b300f450f72006f6a9000aaf9cd04485f1e8095", - "html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci/artifacts/1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5?artifact_id=a805b555-f25a-4828-89d2-a28881c8", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci", + "flow_name": "languages-start-points-ci", + "git_commit": "068b3424c7da843a4f2d428d2e4915f33efc4a02", + "commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/068b3424c7da843a4f2d428d2e4915f33efc4a02", + "html_url": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci/artifacts/adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb?artifact_id=4154b9c8-14cc-426f-abc5-05220611", + "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/da7bacefac23b0983d2b9f39d87508e0f85b1167...2b300f450f72006f6a9000aaf9cd04485f1e8095", - "previous_git_commit": "da7bacefac23b0983d2b9f39d87508e0f85b1167", - "previous_fingerprint": "8a89de34c6d8102bc376b6a238015b1dd768a81f16a741b28dbd8c8af3deefd6", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:da7bace@sha256:8a89de34c6d8102bc376b6a238015b1dd768a81f16a741b28dbd8c8af3deefd6", + "diff_url": "https://github.com/cyber-dojo/languages-start-points/compare/6a7f7be81022f7ed3fa8383f016b55af86e2af23...068b3424c7da843a4f2d428d2e4915f33efc4a02", + "previous_git_commit": "6a7f7be81022f7ed3fa8383f016b55af86e2af23", + "previous_fingerprint": "b1ee961719fe5dabc18f85450c26719c67a4f9ac3959ba836465ceb14bc67e7b", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:6a7f7be@sha256:b1ee961719fe5dabc18f85450c26719c67a4f9ac3959ba836465ceb14bc67e7b", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/dashboard/commit/da7bacefac23b0983d2b9f39d87508e0f85b1167", - "previous_trail_name": "da7bacefac23b0983d2b9f39d87508e0f85b1167", - "previous_template_reference_name": "dashboard" + "previous_git_commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/6a7f7be81022f7ed3fa8383f016b55af86e2af23", + "previous_trail_name": "6a7f7be81022f7ed3fa8383f016b55af86e2af23", + "previous_template_reference_name": "languages-start-points" }, - "commit_lead_time": 660655.0, + "commit_lead_time": 31476.0, "flows": [ { - "flow_name": "dashboard-ci", - "trail_name": "2b300f450f72006f6a9000aaf9cd04485f1e8095", - "template_reference_name": "dashboard", - "git_commit": "2b300f450f72006f6a9000aaf9cd04485f1e8095", - "commit_url": "https://github.com/cyber-dojo/dashboard/commit/2b300f450f72006f6a9000aaf9cd04485f1e8095", - "git_commit_info": { - "sha1": "2b300f450f72006f6a9000aaf9cd04485f1e8095", - "message": "Run the linter as the invoking user (#432)\n\nThe rubocop container wrote reports/rubocop/junit.xml as its own user, so on a\n linux runner the file belongs to someone else. That breaks the attestation as\n soon as it has more than one path to send: kosli attest copies evidence with\n PreserveOwner, and a non-root process cannot chown a file to another uid.\n\n chown /tmp/1800768837/reports/rubocop/junit.xml: operation not permitted\n\n Attaching .rubocop.yml in #431 is what supplied the second path. With one path\n the CLI tars in place and never copies, which is why this had been fine.\n\n Passing --user makes the container write as whoever ran it. Worth doing on its\n own account - a container should not leave files you cannot delete in your\n working tree - and it sidesteps the CLI's behaviour without waiting on it. That\n behaviour looks like a bug and is written up in\n ../kosli-cli-preserve-owner-bug.md for an issue against kosli-dev/cli.\n\n Docker Desktop maps ownership back to the calling user, so this is invisible on a\n mac and only shows on the runner.", + "flow_name": "languages-start-points-ci", + "trail_name": "068b3424c7da843a4f2d428d2e4915f33efc4a02", + "template_reference_name": "languages-start-points", + "git_commit": "068b3424c7da843a4f2d428d2e4915f33efc4a02", + "commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/068b3424c7da843a4f2d428d2e4915f33efc4a02", + "git_commit_info": { + "sha1": "068b3424c7da843a4f2d428d2e4915f33efc4a02", + "message": "Merge pull request #245 from cyber-dojo/update-zig\n\nUpdate zig-test to 0.16.0", "author": "Jon Jagger ", "branch": "", - "timestamp": 1785764428.0, - "url": "https://github.com/cyber-dojo/dashboard/commit/2b300f450f72006f6a9000aaf9cd04485f1e8095" + "timestamp": 1786393603.0, + "url": "https://github.com/cyber-dojo/languages-start-points/commit/068b3424c7da843a4f2d428d2e4915f33efc4a02" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci/artifacts/1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5?artifact_id=a805b555-f25a-4828-89d2-a28881c8", - "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/adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb?artifact_id=4154b9c8-14cc-426f-abc5-05220611", + "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/da7bacefac23b0983d2b9f39d87508e0f85b1167...2b300f450f72006f6a9000aaf9cd04485f1e8095", - "previous_git_commit": "da7bacefac23b0983d2b9f39d87508e0f85b1167", - "previous_fingerprint": "8a89de34c6d8102bc376b6a238015b1dd768a81f16a741b28dbd8c8af3deefd6", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:da7bace@sha256:8a89de34c6d8102bc376b6a238015b1dd768a81f16a741b28dbd8c8af3deefd6", + "diff_url": "https://github.com/cyber-dojo/languages-start-points/compare/6a7f7be81022f7ed3fa8383f016b55af86e2af23...068b3424c7da843a4f2d428d2e4915f33efc4a02", + "previous_git_commit": "6a7f7be81022f7ed3fa8383f016b55af86e2af23", + "previous_fingerprint": "b1ee961719fe5dabc18f85450c26719c67a4f9ac3959ba836465ceb14bc67e7b", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:6a7f7be@sha256:b1ee961719fe5dabc18f85450c26719c67a4f9ac3959ba836465ceb14bc67e7b", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/dashboard/commit/da7bacefac23b0983d2b9f39d87508e0f85b1167", - "previous_trail_name": "da7bacefac23b0983d2b9f39d87508e0f85b1167", - "previous_template_reference_name": "dashboard" + "previous_git_commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/6a7f7be81022f7ed3fa8383f016b55af86e2af23", + "previous_trail_name": "6a7f7be81022f7ed3fa8383f016b55af86e2af23", + "previous_template_reference_name": "languages-start-points" }, - "commit_lead_time": 660655.0, + "commit_lead_time": 31476.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", - "template_reference_name": "dashboard", + "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", + "template_reference_name": "languages-start-points", "git_commit": "c0666c020044ac5b5181999ec153db1e7f6cd303", "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c0666c020044ac5b5181999ec153db1e7f6cd303", "git_commit_info": { @@ -6895,27 +6605,27 @@ kosli get snapshot aws-prod --output=json "timestamp": 1785316951.0, "url": "https://github.com/cyber-dojo/snyk-scanning/commit/c0666c020044ac5b5181999ec153db1e7f6cd303" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5?artifact_id=12bfdb5d-1c9b-4420-b2e1-83318c0f", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb?artifact_id=d9e69b41-322d-4dea-8b56-dbd50334", "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/c0666c020044ac5b5181999ec153db1e7f6cd303...c0666c020044ac5b5181999ec153db1e7f6cd303", "previous_git_commit": "c0666c020044ac5b5181999ec153db1e7f6cd303", - "previous_fingerprint": "8a89de34c6d8102bc376b6a238015b1dd768a81f16a741b28dbd8c8af3deefd6", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:da7bace@sha256:8a89de34c6d8102bc376b6a238015b1dd768a81f16a741b28dbd8c8af3deefd6", + "previous_fingerprint": "b1ee961719fe5dabc18f85450c26719c67a4f9ac3959ba836465ceb14bc67e7b", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:6a7f7be@sha256:b1ee961719fe5dabc18f85450c26719c67a4f9ac3959ba836465ceb14bc67e7b", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c0666c020044ac5b5181999ec153db1e7f6cd303", - "previous_trail_name": "dashboard-8a89de34c6d8102bc376b6a238015b1dd768a81f16a741b28dbd8c8af3deefd6", - "previous_template_reference_name": "dashboard" + "previous_trail_name": "languages-start-points-b1ee961719fe5dabc18f85450c26719c67a4f9ac3959ba836465ceb14bc67e7b", + "previous_template_reference_name": "languages-start-points" }, - "commit_lead_time": 1108132.0, + "commit_lead_time": 1108128.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "production-promotion", "trail_name": "promote-all-33", - "template_reference_name": "dashboard", + "template_reference_name": "languages-start-points", "git_commit": "7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", "git_commit_info": { @@ -6926,27 +6636,27 @@ kosli get snapshot aws-prod --output=json "timestamp": 1785316994.0, "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5?artifact_id=2eff9d42-2240-4f5b-8217-ccc995c3", + "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb?artifact_id=ee065d98-ce20-46c7-bc2f-a4502952", "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/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584...7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", - "previous_git_commit": "7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", - "previous_fingerprint": "8a89de34c6d8102bc376b6a238015b1dd768a81f16a741b28dbd8c8af3deefd6", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:da7bace@sha256:8a89de34c6d8102bc376b6a238015b1dd768a81f16a741b28dbd8c8af3deefd6", + "diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/81c216a55b2cb1787645e699ceaceca868cad253...7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", + "previous_git_commit": "81c216a55b2cb1787645e699ceaceca868cad253", + "previous_fingerprint": "b1ee961719fe5dabc18f85450c26719c67a4f9ac3959ba836465ceb14bc67e7b", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:6a7f7be@sha256:b1ee961719fe5dabc18f85450c26719c67a4f9ac3959ba836465ceb14bc67e7b", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", - "previous_trail_name": "promotion-one-153", - "previous_template_reference_name": "dashboard" + "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/81c216a55b2cb1787645e699ceaceca868cad253", + "previous_trail_name": "promote-all-31", + "previous_template_reference_name": "languages-start-points" }, - "commit_lead_time": 1108089.0, + "commit_lead_time": 1108085.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", - "template_reference_name": "dashboard", + "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", + "template_reference_name": "languages-start-points", "git_commit": "ed3c81d7322bb8058615095f4aab28c147c53933", "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/ed3c81d7322bb8058615095f4aab28c147c53933", "git_commit_info": { @@ -6957,32 +6667,32 @@ kosli get snapshot aws-prod --output=json "timestamp": 1787661987.0, "url": "https://github.com/cyber-dojo/snyk-scanning/commit/ed3c81d7322bb8058615095f4aab28c147c53933" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5?artifact_id=0ad96f49-a195-4cea-9b7e-40b5105e", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb?artifact_id=a3e6ce3c-3e0f-4bac-8a4e-3860189f", "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...ed3c81d7322bb8058615095f4aab28c147c53933", "previous_git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_fingerprint": "45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:87f560f@sha256:45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c", + "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/00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_trail_name": "dashboard-45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c", - "previous_template_reference_name": "dashboard" + "previous_trail_name": "languages-start-points-b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676", + "previous_template_reference_name": "languages-start-points" }, - "commit_lead_time": -1236904.0, + "commit_lead_time": -1236908.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] } ], "ecs_context": { - "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/fb58f1ca5ba94c30b59fe097af55fd5f", + "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/ed7c6bde626840e6a054cc94cd2c3363", "cluster_name": null, "service_name": null } }, { - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:068b342@sha256:adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:fb79174@sha256:b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", "compliant": true, "deployments": [], "policy_decisions": [ @@ -7004,8 +6714,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "068b3424c7da843a4f2d428d2e4915f33efc4a02", + "flow_name": "nginx-ci", + "trail_name": "fb791742054fa28dd89269aac8002ebfd7b3386e", "artifact_status": null } }, @@ -7013,7 +6723,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", + "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", "artifact_status": null } }, @@ -7029,7 +6739,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", + "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", "artifact_status": null } } @@ -7049,8 +6759,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "068b3424c7da843a4f2d428d2e4915f33efc4a02", + "flow_name": "nginx-ci", + "trail_name": "fb791742054fa28dd89269aac8002ebfd7b3386e", "artifact_status": "COMPLIANT" } }, @@ -7058,7 +6768,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", + "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", "artifact_status": "COMPLIANT" } }, @@ -7074,7 +6784,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", + "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", "artifact_status": "COMPLIANT" } } @@ -7099,8 +6809,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "068b3424c7da843a4f2d428d2e4915f33efc4a02", + "flow_name": "nginx-ci", + "trail_name": "fb791742054fa28dd89269aac8002ebfd7b3386e", "artifact_status": null } }, @@ -7108,7 +6818,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", + "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", "artifact_status": null } }, @@ -7124,7 +6834,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", + "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", "artifact_status": null } } @@ -7151,8 +6861,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "068b3424c7da843a4f2d428d2e4915f33efc4a02", + "flow_name": "nginx-ci", + "trail_name": "fb791742054fa28dd89269aac8002ebfd7b3386e", "artifact_status": null } }, @@ -7160,7 +6870,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", + "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", "artifact_status": null } }, @@ -7176,7 +6886,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", + "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", "artifact_status": null } } @@ -7196,8 +6906,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "068b3424c7da843a4f2d428d2e4915f33efc4a02", + "flow_name": "nginx-ci", + "trail_name": "fb791742054fa28dd89269aac8002ebfd7b3386e", "artifact_status": "COMPLIANT" } }, @@ -7205,7 +6915,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", + "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", "artifact_status": "COMPLIANT" } }, @@ -7221,7 +6931,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", + "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", "artifact_status": "COMPLIANT" } } @@ -7246,8 +6956,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "068b3424c7da843a4f2d428d2e4915f33efc4a02", + "flow_name": "nginx-ci", + "trail_name": "fb791742054fa28dd89269aac8002ebfd7b3386e", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -7256,7 +6966,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", + "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -7274,7 +6984,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", + "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -7302,8 +7012,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "068b3424c7da843a4f2d428d2e4915f33efc4a02", + "flow_name": "nginx-ci", + "trail_name": "fb791742054fa28dd89269aac8002ebfd7b3386e", "artifact_status": null } }, @@ -7311,7 +7021,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", + "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", "artifact_status": null } }, @@ -7327,7 +7037,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", + "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", "artifact_status": null } } @@ -7347,8 +7057,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "068b3424c7da843a4f2d428d2e4915f33efc4a02", + "flow_name": "nginx-ci", + "trail_name": "fb791742054fa28dd89269aac8002ebfd7b3386e", "artifact_status": "COMPLIANT" } }, @@ -7356,7 +7066,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", + "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", "artifact_status": "COMPLIANT" } }, @@ -7372,7 +7082,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", + "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", "artifact_status": "COMPLIANT" } } @@ -7397,8 +7107,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "068b3424c7da843a4f2d428d2e4915f33efc4a02", + "flow_name": "nginx-ci", + "trail_name": "fb791742054fa28dd89269aac8002ebfd7b3386e", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -7407,7 +7117,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", + "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -7425,7 +7135,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", + "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -7453,8 +7163,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "068b3424c7da843a4f2d428d2e4915f33efc4a02", + "flow_name": "nginx-ci", + "trail_name": "fb791742054fa28dd89269aac8002ebfd7b3386e", "artifact_status": null } }, @@ -7462,7 +7172,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", + "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", "artifact_status": null } }, @@ -7478,7 +7188,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", + "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", "artifact_status": null } } @@ -7498,8 +7208,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "068b3424c7da843a4f2d428d2e4915f33efc4a02", + "flow_name": "nginx-ci", + "trail_name": "fb791742054fa28dd89269aac8002ebfd7b3386e", "artifact_status": "COMPLIANT" } }, @@ -7507,7 +7217,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", + "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", "artifact_status": "COMPLIANT" } }, @@ -7523,7 +7233,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", + "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", "artifact_status": "COMPLIANT" } } @@ -7548,8 +7258,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "068b3424c7da843a4f2d428d2e4915f33efc4a02", + "flow_name": "nginx-ci", + "trail_name": "fb791742054fa28dd89269aac8002ebfd7b3386e", "artifact_status": null } }, @@ -7557,7 +7267,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", + "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", "artifact_status": null } }, @@ -7573,7 +7283,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", + "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", "artifact_status": null } } @@ -7600,8 +7310,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "068b3424c7da843a4f2d428d2e4915f33efc4a02", + "flow_name": "nginx-ci", + "trail_name": "fb791742054fa28dd89269aac8002ebfd7b3386e", "artifact_status": null } }, @@ -7609,7 +7319,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", + "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", "artifact_status": null } }, @@ -7625,7 +7335,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", + "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", "artifact_status": null } } @@ -7651,8 +7361,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "068b3424c7da843a4f2d428d2e4915f33efc4a02", + "flow_name": "nginx-ci", + "trail_name": "fb791742054fa28dd89269aac8002ebfd7b3386e", "artifact_status": "COMPLIANT" } }, @@ -7660,7 +7370,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", + "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", "artifact_status": "COMPLIANT" } }, @@ -7676,7 +7386,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", + "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", "artifact_status": "COMPLIANT" } } @@ -7687,7 +7397,7 @@ kosli get snapshot aws-prod --output=json } ], "reasons_for_incompliance": [], - "fingerprint": "adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", + "fingerprint": "b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", "creationTimestamp": [ 1786425079 ], @@ -7697,59 +7407,59 @@ kosli get snapshot aws-prod --output=json "was": 1, "now": 1 }, - "flow_name": "languages-start-points-ci", - "git_commit": "068b3424c7da843a4f2d428d2e4915f33efc4a02", - "commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/068b3424c7da843a4f2d428d2e4915f33efc4a02", - "html_url": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci/artifacts/adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb?artifact_id=4154b9c8-14cc-426f-abc5-05220611", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci", + "flow_name": "nginx-ci", + "git_commit": "fb791742054fa28dd89269aac8002ebfd7b3386e", + "commit_url": "https://github.com/cyber-dojo/nginx/commit/fb791742054fa28dd89269aac8002ebfd7b3386e", + "html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci/artifacts/b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf?artifact_id=b9778ac6-6d83-4954-98ba-a3e60a22", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/languages-start-points/compare/6a7f7be81022f7ed3fa8383f016b55af86e2af23...068b3424c7da843a4f2d428d2e4915f33efc4a02", - "previous_git_commit": "6a7f7be81022f7ed3fa8383f016b55af86e2af23", - "previous_fingerprint": "b1ee961719fe5dabc18f85450c26719c67a4f9ac3959ba836465ceb14bc67e7b", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:6a7f7be@sha256:b1ee961719fe5dabc18f85450c26719c67a4f9ac3959ba836465ceb14bc67e7b", + "diff_url": "https://github.com/cyber-dojo/nginx/compare/5ce2769937a4014a853787d7b3d89ec30b6ac967...fb791742054fa28dd89269aac8002ebfd7b3386e", + "previous_git_commit": "5ce2769937a4014a853787d7b3d89ec30b6ac967", + "previous_fingerprint": "7ef0c05ccfbd506e8c72c17f5ff2e6c0c9732c4dd281b7b071e89da900fa0332", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:5ce2769@sha256:7ef0c05ccfbd506e8c72c17f5ff2e6c0c9732c4dd281b7b071e89da900fa0332", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/6a7f7be81022f7ed3fa8383f016b55af86e2af23", - "previous_trail_name": "6a7f7be81022f7ed3fa8383f016b55af86e2af23", - "previous_template_reference_name": "languages-start-points" + "previous_git_commit_url": "https://github.com/cyber-dojo/nginx/commit/5ce2769937a4014a853787d7b3d89ec30b6ac967", + "previous_trail_name": "5ce2769937a4014a853787d7b3d89ec30b6ac967", + "previous_template_reference_name": "nginx" }, - "commit_lead_time": 31476.0, + "commit_lead_time": 412187.0, "flows": [ { - "flow_name": "languages-start-points-ci", - "trail_name": "068b3424c7da843a4f2d428d2e4915f33efc4a02", - "template_reference_name": "languages-start-points", - "git_commit": "068b3424c7da843a4f2d428d2e4915f33efc4a02", - "commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/068b3424c7da843a4f2d428d2e4915f33efc4a02", + "flow_name": "nginx-ci", + "trail_name": "fb791742054fa28dd89269aac8002ebfd7b3386e", + "template_reference_name": "nginx", + "git_commit": "fb791742054fa28dd89269aac8002ebfd7b3386e", + "commit_url": "https://github.com/cyber-dojo/nginx/commit/fb791742054fa28dd89269aac8002ebfd7b3386e", "git_commit_info": { - "sha1": "068b3424c7da843a4f2d428d2e4915f33efc4a02", - "message": "Merge pull request #245 from cyber-dojo/update-zig\n\nUpdate zig-test to 0.16.0", + "sha1": "fb791742054fa28dd89269aac8002ebfd7b3386e", + "message": "Merge pull request #166 from cyber-dojo/drop-old-fork-spellings\n\nStop rate limiting the old fork paths", "author": "Jon Jagger ", "branch": "", - "timestamp": 1786393603.0, - "url": "https://github.com/cyber-dojo/languages-start-points/commit/068b3424c7da843a4f2d428d2e4915f33efc4a02" + "timestamp": 1786012892.0, + "url": "https://github.com/cyber-dojo/nginx/commit/fb791742054fa28dd89269aac8002ebfd7b3386e" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci/artifacts/adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb?artifact_id=4154b9c8-14cc-426f-abc5-05220611", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci", + "html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci/artifacts/b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf?artifact_id=b9778ac6-6d83-4954-98ba-a3e60a22", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/languages-start-points/compare/6a7f7be81022f7ed3fa8383f016b55af86e2af23...068b3424c7da843a4f2d428d2e4915f33efc4a02", - "previous_git_commit": "6a7f7be81022f7ed3fa8383f016b55af86e2af23", - "previous_fingerprint": "b1ee961719fe5dabc18f85450c26719c67a4f9ac3959ba836465ceb14bc67e7b", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:6a7f7be@sha256:b1ee961719fe5dabc18f85450c26719c67a4f9ac3959ba836465ceb14bc67e7b", - "previous_artifact_compliance_state": "COMPLIANT", - "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/6a7f7be81022f7ed3fa8383f016b55af86e2af23", - "previous_trail_name": "6a7f7be81022f7ed3fa8383f016b55af86e2af23", - "previous_template_reference_name": "languages-start-points" + "diff_url": "https://github.com/cyber-dojo/nginx/compare/5ce2769937a4014a853787d7b3d89ec30b6ac967...fb791742054fa28dd89269aac8002ebfd7b3386e", + "previous_git_commit": "5ce2769937a4014a853787d7b3d89ec30b6ac967", + "previous_fingerprint": "7ef0c05ccfbd506e8c72c17f5ff2e6c0c9732c4dd281b7b071e89da900fa0332", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:5ce2769@sha256:7ef0c05ccfbd506e8c72c17f5ff2e6c0c9732c4dd281b7b071e89da900fa0332", + "previous_artifact_compliance_state": "COMPLIANT", + "previous_running": false, + "previous_git_commit_url": "https://github.com/cyber-dojo/nginx/commit/5ce2769937a4014a853787d7b3d89ec30b6ac967", + "previous_trail_name": "5ce2769937a4014a853787d7b3d89ec30b6ac967", + "previous_template_reference_name": "nginx" }, - "commit_lead_time": 31476.0, + "commit_lead_time": 412187.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", - "template_reference_name": "languages-start-points", + "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", + "template_reference_name": "nginx", "git_commit": "c0666c020044ac5b5181999ec153db1e7f6cd303", "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c0666c020044ac5b5181999ec153db1e7f6cd303", "git_commit_info": { @@ -7760,18 +7470,18 @@ kosli get snapshot aws-prod --output=json "timestamp": 1785316951.0, "url": "https://github.com/cyber-dojo/snyk-scanning/commit/c0666c020044ac5b5181999ec153db1e7f6cd303" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb?artifact_id=d9e69b41-322d-4dea-8b56-dbd50334", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf?artifact_id=9474b76c-5cd0-42da-b469-c6a26c8c", "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/c0666c020044ac5b5181999ec153db1e7f6cd303...c0666c020044ac5b5181999ec153db1e7f6cd303", "previous_git_commit": "c0666c020044ac5b5181999ec153db1e7f6cd303", - "previous_fingerprint": "b1ee961719fe5dabc18f85450c26719c67a4f9ac3959ba836465ceb14bc67e7b", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:6a7f7be@sha256:b1ee961719fe5dabc18f85450c26719c67a4f9ac3959ba836465ceb14bc67e7b", + "previous_fingerprint": "55335a374bd7c02fb204ad62ec94b060e5fef14b83c2ba879ade094db04f8744", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:bc3fd56@sha256:55335a374bd7c02fb204ad62ec94b060e5fef14b83c2ba879ade094db04f8744", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c0666c020044ac5b5181999ec153db1e7f6cd303", - "previous_trail_name": "languages-start-points-b1ee961719fe5dabc18f85450c26719c67a4f9ac3959ba836465ceb14bc67e7b", - "previous_template_reference_name": "languages-start-points" + "previous_trail_name": "nginx-55335a374bd7c02fb204ad62ec94b060e5fef14b83c2ba879ade094db04f8744", + "previous_template_reference_name": "nginx" }, "commit_lead_time": 1108128.0, "artifact_compliance_in_flow": true, @@ -7780,7 +7490,7 @@ kosli get snapshot aws-prod --output=json { "flow_name": "production-promotion", "trail_name": "promote-all-33", - "template_reference_name": "languages-start-points", + "template_reference_name": "nginx", "git_commit": "7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", "git_commit_info": { @@ -7791,18 +7501,18 @@ kosli get snapshot aws-prod --output=json "timestamp": 1785316994.0, "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb?artifact_id=ee065d98-ce20-46c7-bc2f-a4502952", + "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf?artifact_id=49f9d376-d38a-4540-bbb1-4a739116", "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/81c216a55b2cb1787645e699ceaceca868cad253...7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", - "previous_git_commit": "81c216a55b2cb1787645e699ceaceca868cad253", - "previous_fingerprint": "b1ee961719fe5dabc18f85450c26719c67a4f9ac3959ba836465ceb14bc67e7b", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:6a7f7be@sha256:b1ee961719fe5dabc18f85450c26719c67a4f9ac3959ba836465ceb14bc67e7b", + "diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584...7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", + "previous_git_commit": "7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", + "previous_fingerprint": "7ef0c05ccfbd506e8c72c17f5ff2e6c0c9732c4dd281b7b071e89da900fa0332", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:5ce2769@sha256:7ef0c05ccfbd506e8c72c17f5ff2e6c0c9732c4dd281b7b071e89da900fa0332", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/81c216a55b2cb1787645e699ceaceca868cad253", - "previous_trail_name": "promote-all-31", - "previous_template_reference_name": "languages-start-points" + "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", + "previous_trail_name": "promotion-one-156", + "previous_template_reference_name": "nginx" }, "commit_lead_time": 1108085.0, "artifact_compliance_in_flow": true, @@ -7810,8 +7520,8 @@ kosli get snapshot aws-prod --output=json }, { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", - "template_reference_name": "languages-start-points", + "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", + "template_reference_name": "nginx", "git_commit": "ed3c81d7322bb8058615095f4aab28c147c53933", "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/ed3c81d7322bb8058615095f4aab28c147c53933", "git_commit_info": { @@ -7822,18 +7532,18 @@ kosli get snapshot aws-prod --output=json "timestamp": 1787661987.0, "url": "https://github.com/cyber-dojo/snyk-scanning/commit/ed3c81d7322bb8058615095f4aab28c147c53933" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb?artifact_id=fe76010c-5bae-44cb-8829-ad34399b", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf?artifact_id=449981b5-9da4-4c87-8677-e4e9c41c", "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...ed3c81d7322bb8058615095f4aab28c147c53933", "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": "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": "languages-start-points-b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676", - "previous_template_reference_name": "languages-start-points" + "previous_trail_name": "nginx-b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8", + "previous_template_reference_name": "nginx" }, "commit_lead_time": -1236908.0, "artifact_compliance_in_flow": true, @@ -7841,13 +7551,13 @@ kosli get snapshot aws-prod --output=json } ], "ecs_context": { - "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/ed7c6bde626840e6a054cc94cd2c3363", + "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/50474795074a4b039a5d59ff411b87e9", "cluster_name": null, "service_name": null } }, { - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:fb79174@sha256:b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:258b6d0@sha256:c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", "compliant": true, "deployments": [], "policy_decisions": [ @@ -7869,24 +7579,24 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "nginx-ci", - "trail_name": "fb791742054fa28dd89269aac8002ebfd7b3386e", + "flow_name": "exercises-start-points-ci", + "trail_name": "258b6d07d2b28ad5cb2ce6d29934997f72380f1a", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", + "flow_name": "production-promotion", + "trail_name": "promote-all-31", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-33", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", "artifact_status": null } }, @@ -7894,7 +7604,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", + "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", "artifact_status": null } } @@ -7914,24 +7624,24 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "nginx-ci", - "trail_name": "fb791742054fa28dd89269aac8002ebfd7b3386e", + "flow_name": "exercises-start-points-ci", + "trail_name": "258b6d07d2b28ad5cb2ce6d29934997f72380f1a", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", + "flow_name": "production-promotion", + "trail_name": "promote-all-31", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-33", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", "artifact_status": "COMPLIANT" } }, @@ -7939,7 +7649,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", + "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", "artifact_status": "COMPLIANT" } } @@ -7964,24 +7674,24 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "nginx-ci", - "trail_name": "fb791742054fa28dd89269aac8002ebfd7b3386e", + "flow_name": "exercises-start-points-ci", + "trail_name": "258b6d07d2b28ad5cb2ce6d29934997f72380f1a", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", + "flow_name": "production-promotion", + "trail_name": "promote-all-31", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-33", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", "artifact_status": null } }, @@ -7989,7 +7699,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", + "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", "artifact_status": null } } @@ -8016,24 +7726,24 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "nginx-ci", - "trail_name": "fb791742054fa28dd89269aac8002ebfd7b3386e", + "flow_name": "exercises-start-points-ci", + "trail_name": "258b6d07d2b28ad5cb2ce6d29934997f72380f1a", "artifact_status": null } }, { "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", + "flow_name": "production-promotion", + "trail_name": "promote-all-31", "artifact_status": null } }, { "type": "rule_satisfied", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-33", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", "artifact_status": null } }, @@ -8041,7 +7751,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", + "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", "artifact_status": null } } @@ -8061,24 +7771,24 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "nginx-ci", - "trail_name": "fb791742054fa28dd89269aac8002ebfd7b3386e", + "flow_name": "exercises-start-points-ci", + "trail_name": "258b6d07d2b28ad5cb2ce6d29934997f72380f1a", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", + "flow_name": "production-promotion", + "trail_name": "promote-all-31", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-33", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", "artifact_status": "COMPLIANT" } }, @@ -8086,7 +7796,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", + "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", "artifact_status": "COMPLIANT" } } @@ -8111,8 +7821,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "nginx-ci", - "trail_name": "fb791742054fa28dd89269aac8002ebfd7b3386e", + "flow_name": "exercises-start-points-ci", + "trail_name": "258b6d07d2b28ad5cb2ce6d29934997f72380f1a", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -8120,8 +7830,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", + "flow_name": "production-promotion", + "trail_name": "promote-all-31", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -8129,8 +7839,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-33", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -8139,7 +7849,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", + "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -8167,24 +7877,24 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "nginx-ci", - "trail_name": "fb791742054fa28dd89269aac8002ebfd7b3386e", + "flow_name": "exercises-start-points-ci", + "trail_name": "258b6d07d2b28ad5cb2ce6d29934997f72380f1a", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", + "flow_name": "production-promotion", + "trail_name": "promote-all-31", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-33", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", "artifact_status": null } }, @@ -8192,7 +7902,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", + "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", "artifact_status": null } } @@ -8212,24 +7922,24 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "nginx-ci", - "trail_name": "fb791742054fa28dd89269aac8002ebfd7b3386e", + "flow_name": "exercises-start-points-ci", + "trail_name": "258b6d07d2b28ad5cb2ce6d29934997f72380f1a", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", + "flow_name": "production-promotion", + "trail_name": "promote-all-31", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-33", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", "artifact_status": "COMPLIANT" } }, @@ -8237,7 +7947,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", + "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", "artifact_status": "COMPLIANT" } } @@ -8262,8 +7972,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "nginx-ci", - "trail_name": "fb791742054fa28dd89269aac8002ebfd7b3386e", + "flow_name": "exercises-start-points-ci", + "trail_name": "258b6d07d2b28ad5cb2ce6d29934997f72380f1a", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -8271,8 +7981,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", + "flow_name": "production-promotion", + "trail_name": "promote-all-31", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -8280,8 +7990,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-33", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -8290,7 +8000,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", + "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -8318,24 +8028,24 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "nginx-ci", - "trail_name": "fb791742054fa28dd89269aac8002ebfd7b3386e", + "flow_name": "exercises-start-points-ci", + "trail_name": "258b6d07d2b28ad5cb2ce6d29934997f72380f1a", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", + "flow_name": "production-promotion", + "trail_name": "promote-all-31", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-33", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", "artifact_status": null } }, @@ -8343,7 +8053,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", + "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", "artifact_status": null } } @@ -8363,24 +8073,24 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "nginx-ci", - "trail_name": "fb791742054fa28dd89269aac8002ebfd7b3386e", + "flow_name": "exercises-start-points-ci", + "trail_name": "258b6d07d2b28ad5cb2ce6d29934997f72380f1a", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", + "flow_name": "production-promotion", + "trail_name": "promote-all-31", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-33", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", "artifact_status": "COMPLIANT" } }, @@ -8388,7 +8098,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", + "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", "artifact_status": "COMPLIANT" } } @@ -8413,24 +8123,24 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "nginx-ci", - "trail_name": "fb791742054fa28dd89269aac8002ebfd7b3386e", + "flow_name": "exercises-start-points-ci", + "trail_name": "258b6d07d2b28ad5cb2ce6d29934997f72380f1a", "artifact_status": null } }, { - "type": "rule_not_applicable", + "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", + "flow_name": "production-promotion", + "trail_name": "promote-all-31", "artifact_status": null } }, { - "type": "rule_satisfied", + "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-33", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", "artifact_status": null } }, @@ -8438,7 +8148,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", + "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", "artifact_status": null } } @@ -8465,24 +8175,24 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "nginx-ci", - "trail_name": "fb791742054fa28dd89269aac8002ebfd7b3386e", + "flow_name": "exercises-start-points-ci", + "trail_name": "258b6d07d2b28ad5cb2ce6d29934997f72380f1a", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", + "flow_name": "production-promotion", + "trail_name": "promote-all-31", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-33", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", "artifact_status": null } }, @@ -8490,7 +8200,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", + "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", "artifact_status": null } } @@ -8516,24 +8226,24 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "nginx-ci", - "trail_name": "fb791742054fa28dd89269aac8002ebfd7b3386e", + "flow_name": "exercises-start-points-ci", + "trail_name": "258b6d07d2b28ad5cb2ce6d29934997f72380f1a", "artifact_status": "COMPLIANT" } }, { - "type": "rule_not_applicable", + "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", + "flow_name": "production-promotion", + "trail_name": "promote-all-31", "artifact_status": "COMPLIANT" } }, { - "type": "rule_satisfied", + "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-33", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", "artifact_status": "COMPLIANT" } }, @@ -8541,7 +8251,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", + "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", "artifact_status": "COMPLIANT" } } @@ -8552,9 +8262,9 @@ kosli get snapshot aws-prod --output=json } ], "reasons_for_incompliance": [], - "fingerprint": "b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", + "fingerprint": "c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", "creationTimestamp": [ - 1786425079 + 1785241255 ], "pods": null, "annotation": { @@ -8562,121 +8272,121 @@ kosli get snapshot aws-prod --output=json "was": 1, "now": 1 }, - "flow_name": "nginx-ci", - "git_commit": "fb791742054fa28dd89269aac8002ebfd7b3386e", - "commit_url": "https://github.com/cyber-dojo/nginx/commit/fb791742054fa28dd89269aac8002ebfd7b3386e", - "html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci/artifacts/b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf?artifact_id=b9778ac6-6d83-4954-98ba-a3e60a22", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci", + "flow_name": "exercises-start-points-ci", + "git_commit": "258b6d07d2b28ad5cb2ce6d29934997f72380f1a", + "commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/258b6d07d2b28ad5cb2ce6d29934997f72380f1a", + "html_url": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci/artifacts/c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea?artifact_id=ffb671be-6388-4f6a-ae64-8ba95d82", + "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/5ce2769937a4014a853787d7b3d89ec30b6ac967...fb791742054fa28dd89269aac8002ebfd7b3386e", - "previous_git_commit": "5ce2769937a4014a853787d7b3d89ec30b6ac967", - "previous_fingerprint": "7ef0c05ccfbd506e8c72c17f5ff2e6c0c9732c4dd281b7b071e89da900fa0332", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:5ce2769@sha256:7ef0c05ccfbd506e8c72c17f5ff2e6c0c9732c4dd281b7b071e89da900fa0332", + "diff_url": "https://github.com/cyber-dojo/exercises-start-points/compare/804f248d832dc34e564507b009c246dfb4f0c657...258b6d07d2b28ad5cb2ce6d29934997f72380f1a", + "previous_git_commit": "804f248d832dc34e564507b009c246dfb4f0c657", + "previous_fingerprint": "a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:804f248@sha256:a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/nginx/commit/5ce2769937a4014a853787d7b3d89ec30b6ac967", - "previous_trail_name": "5ce2769937a4014a853787d7b3d89ec30b6ac967", - "previous_template_reference_name": "nginx" + "previous_git_commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/804f248d832dc34e564507b009c246dfb4f0c657", + "previous_trail_name": "804f248d832dc34e564507b009c246dfb4f0c657", + "previous_template_reference_name": "exercises-start-points" }, - "commit_lead_time": 412187.0, + "commit_lead_time": 929108.0, "flows": [ { - "flow_name": "nginx-ci", - "trail_name": "fb791742054fa28dd89269aac8002ebfd7b3386e", - "template_reference_name": "nginx", - "git_commit": "fb791742054fa28dd89269aac8002ebfd7b3386e", - "commit_url": "https://github.com/cyber-dojo/nginx/commit/fb791742054fa28dd89269aac8002ebfd7b3386e", + "flow_name": "exercises-start-points-ci", + "trail_name": "258b6d07d2b28ad5cb2ce6d29934997f72380f1a", + "template_reference_name": "exercises-start-points", + "git_commit": "258b6d07d2b28ad5cb2ce6d29934997f72380f1a", + "commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/258b6d07d2b28ad5cb2ce6d29934997f72380f1a", "git_commit_info": { - "sha1": "fb791742054fa28dd89269aac8002ebfd7b3386e", - "message": "Merge pull request #166 from cyber-dojo/drop-old-fork-spellings\n\nStop rate limiting the old fork paths", + "sha1": "258b6d07d2b28ad5cb2ce6d29934997f72380f1a", + "message": "Merge pull request #146 from cyber-dojo/add-drift-detection\n\nAdd periodic drift-detection workflow", "author": "Jon Jagger ", "branch": "", - "timestamp": 1786012892.0, - "url": "https://github.com/cyber-dojo/nginx/commit/fb791742054fa28dd89269aac8002ebfd7b3386e" + "timestamp": 1784312147.0, + "url": "https://github.com/cyber-dojo/exercises-start-points/commit/258b6d07d2b28ad5cb2ce6d29934997f72380f1a" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci/artifacts/b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf?artifact_id=b9778ac6-6d83-4954-98ba-a3e60a22", - "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/c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea?artifact_id=ffb671be-6388-4f6a-ae64-8ba95d82", + "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/5ce2769937a4014a853787d7b3d89ec30b6ac967...fb791742054fa28dd89269aac8002ebfd7b3386e", - "previous_git_commit": "5ce2769937a4014a853787d7b3d89ec30b6ac967", - "previous_fingerprint": "7ef0c05ccfbd506e8c72c17f5ff2e6c0c9732c4dd281b7b071e89da900fa0332", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:5ce2769@sha256:7ef0c05ccfbd506e8c72c17f5ff2e6c0c9732c4dd281b7b071e89da900fa0332", + "diff_url": "https://github.com/cyber-dojo/exercises-start-points/compare/804f248d832dc34e564507b009c246dfb4f0c657...258b6d07d2b28ad5cb2ce6d29934997f72380f1a", + "previous_git_commit": "804f248d832dc34e564507b009c246dfb4f0c657", + "previous_fingerprint": "a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:804f248@sha256:a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/nginx/commit/5ce2769937a4014a853787d7b3d89ec30b6ac967", - "previous_trail_name": "5ce2769937a4014a853787d7b3d89ec30b6ac967", - "previous_template_reference_name": "nginx" + "previous_git_commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/804f248d832dc34e564507b009c246dfb4f0c657", + "previous_trail_name": "804f248d832dc34e564507b009c246dfb4f0c657", + "previous_template_reference_name": "exercises-start-points" }, - "commit_lead_time": 412187.0, + "commit_lead_time": 929108.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", - "template_reference_name": "nginx", - "git_commit": "c0666c020044ac5b5181999ec153db1e7f6cd303", - "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c0666c020044ac5b5181999ec153db1e7f6cd303", + "flow_name": "production-promotion", + "trail_name": "promote-all-31", + "template_reference_name": "exercises-start-points", + "git_commit": "81c216a55b2cb1787645e699ceaceca868cad253", + "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/81c216a55b2cb1787645e699ceaceca868cad253", "git_commit_info": { - "sha1": "c0666c020044ac5b5181999ec153db1e7f6cd303", - "message": "Drop lone use of = separator on Kosli CLI boolean flag", + "sha1": "81c216a55b2cb1787645e699ceaceca868cad253", + "message": "Add spooler service name to promote_one.yml", "author": "JonJagger ", "branch": "main", - "timestamp": 1785316951.0, - "url": "https://github.com/cyber-dojo/snyk-scanning/commit/c0666c020044ac5b5181999ec153db1e7f6cd303" + "timestamp": 1785143054.0, + "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/81c216a55b2cb1787645e699ceaceca868cad253" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf?artifact_id=9474b76c-5cd0-42da-b469-c6a26c8c", - "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/c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea?artifact_id=b17578fc-3dc0-42c5-98a7-216ebe8a", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/c0666c020044ac5b5181999ec153db1e7f6cd303...c0666c020044ac5b5181999ec153db1e7f6cd303", - "previous_git_commit": "c0666c020044ac5b5181999ec153db1e7f6cd303", - "previous_fingerprint": "55335a374bd7c02fb204ad62ec94b060e5fef14b83c2ba879ade094db04f8744", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:bc3fd56@sha256:55335a374bd7c02fb204ad62ec94b060e5fef14b83c2ba879ade094db04f8744", + "diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/d7e31ce0207b766140ae689f38625da4374acf87...81c216a55b2cb1787645e699ceaceca868cad253", + "previous_git_commit": "d7e31ce0207b766140ae689f38625da4374acf87", + "previous_fingerprint": "a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:804f248@sha256:a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c0666c020044ac5b5181999ec153db1e7f6cd303", - "previous_trail_name": "nginx-55335a374bd7c02fb204ad62ec94b060e5fef14b83c2ba879ade094db04f8744", - "previous_template_reference_name": "nginx" + "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/d7e31ce0207b766140ae689f38625da4374acf87", + "previous_trail_name": "promote-all-30", + "previous_template_reference_name": "exercises-start-points" }, - "commit_lead_time": 1108128.0, + "commit_lead_time": 98201.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { - "flow_name": "production-promotion", - "trail_name": "promote-all-33", - "template_reference_name": "nginx", - "git_commit": "7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", - "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", + "template_reference_name": "exercises-start-points", + "git_commit": "c0666c020044ac5b5181999ec153db1e7f6cd303", + "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c0666c020044ac5b5181999ec153db1e7f6cd303", "git_commit_info": { - "sha1": "7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", + "sha1": "c0666c020044ac5b5181999ec153db1e7f6cd303", "message": "Drop lone use of = separator on Kosli CLI boolean flag", "author": "JonJagger ", "branch": "main", - "timestamp": 1785316994.0, - "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584" + "timestamp": 1785316951.0, + "url": "https://github.com/cyber-dojo/snyk-scanning/commit/c0666c020044ac5b5181999ec153db1e7f6cd303" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf?artifact_id=49f9d376-d38a-4540-bbb1-4a739116", - "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/c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea?artifact_id=c5be014c-5c90-4940-9d24-3f1d472a", + "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/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584...7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", - "previous_git_commit": "7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", - "previous_fingerprint": "7ef0c05ccfbd506e8c72c17f5ff2e6c0c9732c4dd281b7b071e89da900fa0332", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:5ce2769@sha256:7ef0c05ccfbd506e8c72c17f5ff2e6c0c9732c4dd281b7b071e89da900fa0332", + "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7...c0666c020044ac5b5181999ec153db1e7f6cd303", + "previous_git_commit": "35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", + "previous_fingerprint": "a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:804f248@sha256:a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", - "previous_trail_name": "promotion-one-156", - "previous_template_reference_name": "nginx" + "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", + "previous_trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "previous_template_reference_name": "exercises-start-points" }, - "commit_lead_time": 1108085.0, + "commit_lead_time": -75696.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", - "template_reference_name": "nginx", + "trail_name": "exercises-start-points-c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", + "template_reference_name": "exercises-start-points", "git_commit": "ed3c81d7322bb8058615095f4aab28c147c53933", "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/ed3c81d7322bb8058615095f4aab28c147c53933", "git_commit_info": { @@ -8687,26 +8397,26 @@ kosli get snapshot aws-prod --output=json "timestamp": 1787661987.0, "url": "https://github.com/cyber-dojo/snyk-scanning/commit/ed3c81d7322bb8058615095f4aab28c147c53933" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf?artifact_id=5a00bd4e-d483-44b8-a755-b1bcb100", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea?artifact_id=0669e00f-e8d3-480b-8e67-1fcddd72", "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...ed3c81d7322bb8058615095f4aab28c147c53933", "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": -1236908.0, + "commit_lead_time": -2420732.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] } ], "ecs_context": { - "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/50474795074a4b039a5d59ff411b87e9", + "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/f248719ae7814027825075c5ea81acff", "cluster_name": null, "service_name": null } @@ -9552,7 +9262,7 @@ kosli get snapshot aws-prod --output=json "timestamp": 1787661987.0, "url": "https://github.com/cyber-dojo/snyk-scanning/commit/ed3c81d7322bb8058615095f4aab28c147c53933" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/8e965dda26af2d2e68032c25d68e792c85e0c7bd9814862de231bc4c6e935b81?artifact_id=73229628-98fc-4463-955d-97a44227", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/8e965dda26af2d2e68032c25d68e792c85e0c7bd9814862de231bc4c6e935b81?artifact_id=c54cf2ea-4f90-4b77-af8c-61cc0cb6", "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...ed3c81d7322bb8058615095f4aab28c147c53933", @@ -9575,6 +9285,872 @@ kosli get snapshot aws-prod --output=json "cluster_name": null, "service_name": null } + }, + { + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:5e4b987@sha256:6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "compliant": true, + "deployments": [], + "policy_decisions": [ + { + "policy_version": 3, + "status": "COMPLIANT", + "rule_evaluations": [ + { + "rule": { + "type": "provenance", + "definition": { + "required": false, + "exceptions": [] + } + }, + "satisfied": null, + "ignored": true, + "resolutions": [ + { + "type": "rule_not_applicable", + "context": { + "flow_name": "web-ci", + "trail_name": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "artifact_status": null + } + }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "artifact_status": null + } + }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "production-promotion", + "trail_name": "promote-all-33", + "artifact_status": null + } + }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "artifact_status": null + } + } + ] + }, + { + "rule": { + "type": "trail-compliance", + "definition": { + "required": false, + "exceptions": [] + } + }, + "satisfied": null, + "ignored": true, + "resolutions": [ + { + "type": "rule_not_applicable", + "context": { + "flow_name": "web-ci", + "trail_name": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "artifact_status": "COMPLIANT" + } + }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "artifact_status": "COMPLIANT" + } + }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "production-promotion", + "trail_name": "promote-all-33", + "artifact_status": "COMPLIANT" + } + }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "artifact_status": "COMPLIANT" + } + } + ] + }, + { + "rule": { + "type": "attestation", + "definition": { + "if": { + "text": "flow.tags.kind == \"build\"" + }, + "name": "*", + "type": "pull_request", + "must_be_compliant": true, + "for_control": null + } + }, + "satisfied": true, + "ignored": false, + "resolutions": [ + { + "type": "rule_satisfied", + "context": { + "flow_name": "web-ci", + "trail_name": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "artifact_status": null + } + }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "artifact_status": null + } + }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "production-promotion", + "trail_name": "promote-all-33", + "artifact_status": null + } + }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "artifact_status": null + } + } + ] + } + ], + "policy_name": "pull-request" + }, + { + "policy_version": 3, + "status": "COMPLIANT", + "rule_evaluations": [ + { + "rule": { + "type": "provenance", + "definition": { + "required": true, + "exceptions": [] + } + }, + "satisfied": true, + "ignored": false, + "resolutions": [ + { + "type": "rule_satisfied", + "context": { + "flow_name": "web-ci", + "trail_name": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "artifact_status": null + } + }, + { + "type": "rule_satisfied", + "context": { + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "artifact_status": null + } + }, + { + "type": "rule_satisfied", + "context": { + "flow_name": "production-promotion", + "trail_name": "promote-all-33", + "artifact_status": null + } + }, + { + "type": "rule_satisfied", + "context": { + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "artifact_status": null + } + } + ] + }, + { + "rule": { + "type": "trail-compliance", + "definition": { + "required": false, + "exceptions": [] + } + }, + "satisfied": null, + "ignored": true, + "resolutions": [ + { + "type": "rule_not_applicable", + "context": { + "flow_name": "web-ci", + "trail_name": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "artifact_status": "COMPLIANT" + } + }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "artifact_status": "COMPLIANT" + } + }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "production-promotion", + "trail_name": "promote-all-33", + "artifact_status": "COMPLIANT" + } + }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "artifact_status": "COMPLIANT" + } + } + ] + }, + { + "rule": { + "type": "attestation", + "definition": { + "if": { + "text": "flow.tags.kind == \"build\"" + }, + "name": "*", + "type": "decision", + "must_be_compliant": true, + "for_control": "SDLC-CTRL-0002" + } + }, + "satisfied": true, + "ignored": false, + "resolutions": [ + { + "type": "rule_satisfied", + "context": { + "flow_name": "web-ci", + "trail_name": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "artifact_status": null, + "for_control": "SDLC-CTRL-0002" + } + }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "artifact_status": null, + "for_control": "SDLC-CTRL-0002" + } + }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "production-promotion", + "trail_name": "promote-all-33", + "artifact_status": null, + "for_control": "SDLC-CTRL-0002" + } + }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "artifact_status": null, + "for_control": "SDLC-CTRL-0002" + } + } + ] + } + ], + "policy_name": "provenance" + }, + { + "policy_version": 4, + "status": "COMPLIANT", + "rule_evaluations": [ + { + "rule": { + "type": "provenance", + "definition": { + "required": false, + "exceptions": [] + } + }, + "satisfied": null, + "ignored": true, + "resolutions": [ + { + "type": "rule_not_applicable", + "context": { + "flow_name": "web-ci", + "trail_name": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "artifact_status": null + } + }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "artifact_status": null + } + }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "production-promotion", + "trail_name": "promote-all-33", + "artifact_status": null + } + }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "artifact_status": null + } + } + ] + }, + { + "rule": { + "type": "trail-compliance", + "definition": { + "required": false, + "exceptions": [] + } + }, + "satisfied": null, + "ignored": true, + "resolutions": [ + { + "type": "rule_not_applicable", + "context": { + "flow_name": "web-ci", + "trail_name": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "artifact_status": "COMPLIANT" + } + }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "artifact_status": "COMPLIANT" + } + }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "production-promotion", + "trail_name": "promote-all-33", + "artifact_status": "COMPLIANT" + } + }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "artifact_status": "COMPLIANT" + } + } + ] + }, + { + "rule": { + "type": "attestation", + "definition": { + "if": { + "text": "flow.name == \"snyk-aws-prod-per-artifact\"" + }, + "name": "snyk-container-scan", + "type": "decision", + "must_be_compliant": true, + "for_control": "SDLC-CTRL-0022" + } + }, + "satisfied": true, + "ignored": false, + "resolutions": [ + { + "type": "rule_not_applicable", + "context": { + "flow_name": "web-ci", + "trail_name": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "artifact_status": null, + "for_control": "SDLC-CTRL-0022" + } + }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "artifact_status": null, + "for_control": "SDLC-CTRL-0022" + } + }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "production-promotion", + "trail_name": "promote-all-33", + "artifact_status": null, + "for_control": "SDLC-CTRL-0022" + } + }, + { + "type": "rule_satisfied", + "context": { + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "artifact_status": null, + "for_control": "SDLC-CTRL-0022" + } + } + ] + } + ], + "policy_name": "snyk-scan-aws-prod" + }, + { + "policy_version": 2, + "status": "COMPLIANT", + "rule_evaluations": [ + { + "rule": { + "type": "provenance", + "definition": { + "required": false, + "exceptions": [] + } + }, + "satisfied": null, + "ignored": true, + "resolutions": [ + { + "type": "rule_not_applicable", + "context": { + "flow_name": "web-ci", + "trail_name": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "artifact_status": null + } + }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "artifact_status": null + } + }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "production-promotion", + "trail_name": "promote-all-33", + "artifact_status": null + } + }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "artifact_status": null + } + } + ] + }, + { + "rule": { + "type": "trail-compliance", + "definition": { + "required": false, + "exceptions": [] + } + }, + "satisfied": null, + "ignored": true, + "resolutions": [ + { + "type": "rule_not_applicable", + "context": { + "flow_name": "web-ci", + "trail_name": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "artifact_status": "COMPLIANT" + } + }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "artifact_status": "COMPLIANT" + } + }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "production-promotion", + "trail_name": "promote-all-33", + "artifact_status": "COMPLIANT" + } + }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "artifact_status": "COMPLIANT" + } + } + ] + }, + { + "rule": { + "type": "attestation", + "definition": { + "if": { + "text": "flow.name == \"production-promotion\"" + }, + "name": "snyk-scan", + "type": "decision", + "must_be_compliant": true, + "for_control": null + } + }, + "satisfied": true, + "ignored": false, + "resolutions": [ + { + "type": "rule_not_applicable", + "context": { + "flow_name": "web-ci", + "trail_name": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "artifact_status": null + } + }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "artifact_status": null + } + }, + { + "type": "rule_satisfied", + "context": { + "flow_name": "production-promotion", + "trail_name": "promote-all-33", + "artifact_status": null + } + }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "artifact_status": null + } + } + ] + } + ], + "policy_name": "production-promotion" + }, + { + "policy_version": 2, + "status": "COMPLIANT", + "rule_evaluations": [ + { + "rule": { + "type": "provenance", + "definition": { + "required": false, + "exceptions": [] + } + }, + "satisfied": null, + "ignored": true, + "resolutions": [ + { + "type": "rule_not_applicable", + "context": { + "flow_name": "web-ci", + "trail_name": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "artifact_status": null + } + }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "artifact_status": null + } + }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "production-promotion", + "trail_name": "promote-all-33", + "artifact_status": null + } + }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "artifact_status": null + } + } + ] + }, + { + "rule": { + "type": "trail-compliance", + "definition": { + "required": true, + "exceptions": [ + { + "if": { + "text": "exists(flow.tags.env) and flow.tags.env != \"aws-prod\"" + } + } + ] + } + }, + "satisfied": true, + "ignored": false, + "resolutions": [ + { + "type": "rule_not_applicable", + "context": { + "flow_name": "web-ci", + "trail_name": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "artifact_status": "COMPLIANT" + } + }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "artifact_status": "COMPLIANT" + } + }, + { + "type": "rule_satisfied", + "context": { + "flow_name": "production-promotion", + "trail_name": "promote-all-33", + "artifact_status": "COMPLIANT" + } + }, + { + "type": "rule_satisfied", + "context": { + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "artifact_status": "COMPLIANT" + } + } + ] + } + ], + "policy_name": "trail-compliance-aws-prod" + } + ], + "reasons_for_incompliance": [], + "fingerprint": "6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "creationTimestamp": [ + 1786425419, + 1786425419 + ], + "pods": null, + "annotation": { + "type": "exited", + "was": 2, + "now": 0 + }, + "flow_name": "web-ci", + "git_commit": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "commit_url": "https://github.com/cyber-dojo/web/commit/5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci/artifacts/6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd?artifact_id=f658e6e3-9ce8-462f-a29e-a2cc6f7b", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci", + "deployment_diff": { + "diff_url": "https://github.com/cyber-dojo/web/compare/0c31ab46a7d8c7d34d2ce0654dc09f8ae4229c7e...5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "previous_git_commit": "0c31ab46a7d8c7d34d2ce0654dc09f8ae4229c7e", + "previous_fingerprint": "1e03ce9811f7ffaa0d00bb4da3dbc60e939e6d1b3f8e87b88a99121dca481018", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:0c31ab4@sha256:1e03ce9811f7ffaa0d00bb4da3dbc60e939e6d1b3f8e87b88a99121dca481018", + "previous_artifact_compliance_state": "COMPLIANT", + "previous_running": false, + "previous_git_commit_url": "https://github.com/cyber-dojo/web/commit/0c31ab46a7d8c7d34d2ce0654dc09f8ae4229c7e", + "previous_trail_name": "0c31ab46a7d8c7d34d2ce0654dc09f8ae4229c7e", + "previous_template_reference_name": "web" + }, + "commit_lead_time": 58766.0, + "flows": [ + { + "flow_name": "web-ci", + "trail_name": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "template_reference_name": "web", + "git_commit": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "commit_url": "https://github.com/cyber-dojo/web/commit/5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "git_commit_info": { + "sha1": "5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "message": "Name the creation-event rule instead of restating it (#417)\n\nDeciding whether the review navigator's activity test (events.length > 1)\n agreed with the dashboard's (any event with index != 0) meant reading five\n files and saver's event-placement code, because the same fact - event 0 is\n the kata's creation, anything after it is something someone did - was spelled\n differently at every site. The two rules do agree, but nothing in the code\n said so, so the only way to find out was to go and check.\n\n cd.lib now carries isCreationEvent(event) and hasActivity(events), each\n documenting the invariant it rests on: an event's index is its position in the\n array, because saver places every write at head+1. The review partials ask\n through them rather than restating index==0 or length==1.\n\n Two sites keep their own spelling on purpose. previousIndex's index == 0 reads\n as array arithmetic rather than the creation rule, and kata_app has the only\n Ruby site in this repo, so a predicate there would add indirection without\n removing duplication.\n\n The avatars_tests fixtures now hold real event objects rather than bare\n integers, because the rule reads an event's index. Those tests still do not\n run: there is no jest here and require('./avatars') resolves to nothing.", + "author": "Jon Jagger ", + "branch": "", + "timestamp": 1786366653.0, + "url": "https://github.com/cyber-dojo/web/commit/5e4b9873df93525c041c386c06e0ab8fc36b6f33" + }, + "html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci/artifacts/6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd?artifact_id=f658e6e3-9ce8-462f-a29e-a2cc6f7b", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci", + "deployment_diff": { + "diff_url": "https://github.com/cyber-dojo/web/compare/0c31ab46a7d8c7d34d2ce0654dc09f8ae4229c7e...5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "previous_git_commit": "0c31ab46a7d8c7d34d2ce0654dc09f8ae4229c7e", + "previous_fingerprint": "1e03ce9811f7ffaa0d00bb4da3dbc60e939e6d1b3f8e87b88a99121dca481018", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:0c31ab4@sha256:1e03ce9811f7ffaa0d00bb4da3dbc60e939e6d1b3f8e87b88a99121dca481018", + "previous_artifact_compliance_state": "COMPLIANT", + "previous_running": false, + "previous_git_commit_url": "https://github.com/cyber-dojo/web/commit/0c31ab46a7d8c7d34d2ce0654dc09f8ae4229c7e", + "previous_trail_name": "0c31ab46a7d8c7d34d2ce0654dc09f8ae4229c7e", + "previous_template_reference_name": "web" + }, + "commit_lead_time": 58766.0, + "artifact_compliance_in_flow": true, + "flow_reasons_for_non_compliance": [] + }, + { + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "template_reference_name": "web", + "git_commit": "c0666c020044ac5b5181999ec153db1e7f6cd303", + "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c0666c020044ac5b5181999ec153db1e7f6cd303", + "git_commit_info": { + "sha1": "c0666c020044ac5b5181999ec153db1e7f6cd303", + "message": "Drop lone use of = separator on Kosli CLI boolean flag", + "author": "JonJagger ", + "branch": "main", + "timestamp": 1785316951.0, + "url": "https://github.com/cyber-dojo/snyk-scanning/commit/c0666c020044ac5b5181999ec153db1e7f6cd303" + }, + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd?artifact_id=da135937-1562-4662-b672-53688f17", + "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/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7...c0666c020044ac5b5181999ec153db1e7f6cd303", + "previous_git_commit": "35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", + "previous_fingerprint": "0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:3f0b997@sha256:0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", + "previous_artifact_compliance_state": "COMPLIANT", + "previous_running": false, + "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", + "previous_trail_name": "web-0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", + "previous_template_reference_name": "web" + }, + "commit_lead_time": 1108468.0, + "artifact_compliance_in_flow": true, + "flow_reasons_for_non_compliance": [] + }, + { + "flow_name": "production-promotion", + "trail_name": "promote-all-33", + "template_reference_name": "web", + "git_commit": "7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", + "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", + "git_commit_info": { + "sha1": "7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", + "message": "Drop lone use of = separator on Kosli CLI boolean flag", + "author": "JonJagger ", + "branch": "main", + "timestamp": 1785316994.0, + "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584" + }, + "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd?artifact_id=5254e39c-72c5-4946-86ed-08f7b11a", + "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/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584...7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", + "previous_git_commit": "7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", + "previous_fingerprint": "1e03ce9811f7ffaa0d00bb4da3dbc60e939e6d1b3f8e87b88a99121dca481018", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:0c31ab4@sha256:1e03ce9811f7ffaa0d00bb4da3dbc60e939e6d1b3f8e87b88a99121dca481018", + "previous_artifact_compliance_state": "COMPLIANT", + "previous_running": false, + "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/7494758f8bbc4e66cb5df90ef4cd6b72d75ca584", + "previous_trail_name": "promotion-one-157", + "previous_template_reference_name": "web" + }, + "commit_lead_time": 1108425.0, + "artifact_compliance_in_flow": true, + "flow_reasons_for_non_compliance": [] + }, + { + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "template_reference_name": "web", + "git_commit": "ed3c81d7322bb8058615095f4aab28c147c53933", + "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/ed3c81d7322bb8058615095f4aab28c147c53933", + "git_commit_info": { + "sha1": "ed3c81d7322bb8058615095f4aab28c147c53933", + "message": "Unpack one pinned commit instead of fetching each file\n\n a0c005a moved these two jobs' files to RUNNER_TEMP, which kept them out of\n the caller's checkout but left the prefix repeated at every use. The paths\n are absolute because the run steps stay in the checkout, where the Kosli\n CLI reads git commit information from the working directory, so the prefix\n cannot be dropped. It can only be folded into the definitions, and a\n literal /tmp folds where runner.temp does not: the runner context is\n unavailable in workflow- and job-level env blocks. Both jobs are pinned to\n ubuntu-latest, one fresh VM per job, so /tmp neither collides nor persists.\n\n The files also arrived as five separate fetches of main, one per file, so a\n push landing mid-run could pair a rego policy with params from a different\n commit. find-snyk-vulns already checks this repo out, so it now publishes\n the SHA it resolved, and the two later jobs unpack that exact commit as a\n single tarball. One run reads one version.\n\n An env-var's prefix now says where its file came from: SNYK_SCANNING_ from\n this repo at the pinned commit, CALLER_ from the repo being scanned, TMP_\n produced by the run. That split is worth naming because only one of these\n files is the caller's, and it is the one .snyk that the decision attests\n against. Two bare filenames survive because an artifact name cannot\n contain a '/'.\n\n fetch-url-to-file now has exactly one caller, for that .snyk.", + "author": "JonJagger ", + "branch": "main", + "timestamp": 1787661987.0, + "url": "https://github.com/cyber-dojo/snyk-scanning/commit/ed3c81d7322bb8058615095f4aab28c147c53933" + }, + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd?artifact_id=a1de5ee7-cc21-4c5b-acdc-08d675f3", + "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...ed3c81d7322bb8058615095f4aab28c147c53933", + "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/00c479764cb9eca038fdaaaef108672d0bb0ed26", + "previous_trail_name": "web-29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4", + "previous_template_reference_name": "web" + }, + "commit_lead_time": -1236568.0, + "artifact_compliance_in_flow": true, + "flow_reasons_for_non_compliance": [] + } + ], + "ecs_context": { + "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/1af4cc2636fa44c3867fc792d9285670", + "cluster_name": null, + "service_name": null + } } ], "applied_policies": [ diff --git a/client_reference/kosli_list_environments.md b/client_reference/kosli_list_environments.md index 0a89676..140a69b 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": 1788000323.986277, - "last_reported_at": 1788000323.986277, - "last_changed_at": 1787991863.9393172, + "last_modified_at": 1788099031.1318774, + "last_reported_at": 1788099031.1318774, + "last_changed_at": 1788074783.838713, "state": true, "include_scaling": false, "tags": { @@ -84,9 +84,9 @@ kosli list environments --output=json "name": "aws-beta-terraform-drift-detection", "type": "server", "description": "Detection of drift of the Infrastructure-as-code components of aws-beta", - "last_modified_at": 1788000320.8143363, - "last_reported_at": 1788000320.8143363, - "last_changed_at": 1787905808.789012, + "last_modified_at": 1788099008.9739075, + "last_reported_at": 1788099008.9739075, + "last_changed_at": 1788073820.4463117, "state": true, "include_scaling": false, "tags": {}, @@ -100,9 +100,9 @@ kosli list environments --output=json "name": "aws-prod", "type": "ECS", "description": "The ECS cluster for production cyber-dojo", - "last_modified_at": 1788000298.4718719, - "last_reported_at": 1788000298.4718719, - "last_changed_at": 1787991898.5420277, + "last_modified_at": 1788098998.3881242, + "last_reported_at": 1788098998.3881242, + "last_changed_at": 1788074998.5362537, "state": true, "include_scaling": false, "tags": { @@ -122,9 +122,9 @@ kosli list environments --output=json "name": "aws-prod-terraform-drift-detection", "type": "server", "description": "Detection of drift of the Infrastructure-as-code components of aws-prod", - "last_modified_at": 1788000211.8122895, - "last_reported_at": 1788000211.8122895, - "last_changed_at": 1787665723.30174, + "last_modified_at": 1788098912.1149282, + "last_reported_at": 1788098912.1149282, + "last_changed_at": 1788075211.9398148, "state": true, "include_scaling": false, "tags": {}, @@ -138,9 +138,9 @@ kosli list environments --output=json "name": "production", "type": "logical", "description": "Production environments for cyber-dojo", - "last_modified_at": 1787991898.5420277, + "last_modified_at": 1788075211.9398148, "last_reported_at": null, - "last_changed_at": 1787991898.5420277, + "last_changed_at": 1788075211.9398148, "state": true, "include_scaling": false, "tags": {}, @@ -155,9 +155,9 @@ kosli list environments --output=json "name": "staging", "type": "logical", "description": "Staging environments for cyber-dojo", - "last_modified_at": 1787991863.9393172, + "last_modified_at": 1788074783.838713, "last_reported_at": null, - "last_changed_at": 1787991863.9393172, + "last_changed_at": 1788074783.838713, "state": true, "include_scaling": false, "tags": {}, diff --git a/client_reference/kosli_list_flows.md b/client_reference/kosli_list_flows.md index 9442afb..491f1c0 100644 --- a/client_reference/kosli_list_flows.md +++ b/client_reference/kosli_list_flows.md @@ -235,7 +235,7 @@ kosli list flows --output=json "kind": "release", "env": "aws-prod" }, - "latest_activity_at": 1787663659.2517061, + "latest_activity_at": 1788074713.2619398, "latest_state": "COMPLIANT" }, { @@ -264,7 +264,7 @@ kosli list flows --output=json "kind": "build", "env": "aws-beta" }, - "latest_activity_at": 1787895923.922744, + "latest_activity_at": 1788074398.5222037, "latest_state": "COMPLIANT" }, { @@ -314,7 +314,7 @@ kosli list flows --output=json "workflow_url": "https://github.com/cyber-dojo/snyk-scanning/blob/main/.github/workflows/aws-beta.yml", "env": "aws-beta" }, - "latest_activity_at": 1787991804.467392, + "latest_activity_at": 1788074762.8814502, "latest_state": "COMPLIANT" }, { @@ -331,7 +331,7 @@ kosli list flows --output=json "kind": "run", "workflow_url": "https://github.com/cyber-dojo/snyk-scanning/blob/main/.github/workflows/artifact_snyk_test.yml" }, - "latest_activity_at": 1787991637.5539358, + "latest_activity_at": 1788074738.0863786, "latest_state": "COMPLIANT" }, { @@ -348,7 +348,7 @@ kosli list flows --output=json "workflow_url": "https://github.com/cyber-dojo/snyk-scanning/blob/main/.github/workflows/aws-prod.yml", "env": "aws-prod" }, - "latest_activity_at": 1787991848.1591704, + "latest_activity_at": 1788074713.0553374, "latest_state": "COMPLIANT" }, { @@ -365,7 +365,7 @@ kosli list flows --output=json "kind": "run", "workflow_url": "https://github.com/cyber-dojo/snyk-scanning/blob/main/.github/workflows/artifact_snyk_test.yml" }, - "latest_activity_at": 1787991820.0490894, + "latest_activity_at": 1788074670.473346, "latest_state": "COMPLIANT" }, { @@ -475,7 +475,7 @@ kosli list flows --output=json "template": "version: 1\ntrail:\n attestations:\n - name: terraform-plan\n type: generic\n - name: terraform-apply\n type: generic\n artifacts:\n - name: terraform-state\n - name: drift-plan\n", "repo_url": "https://github.com/cyber-dojo/runner", "tags": {}, - "latest_activity_at": 1787896208.8103006, + "latest_activity_at": 1788073820.4463117, "latest_state": "COMPLIANT" }, { @@ -533,9 +533,21 @@ kosli list flows --output=json "visibility": "private", "org": "cyber-dojo", "template": "version: 1\ntrail:\n attestations:\n - name: terraform-plan\n type: generic\n - name: terraform-apply\n type: generic\n artifacts:\n - name: terraform-state\n - name: drift-plan\n", + "repo_url": "https://github.com/cyber-dojo/web", + "tags": {}, + "latest_activity_at": 1788075211.9398148, + "latest_state": "COMPLIANT" + }, + { + "id": "72787a36-70df-447a-9fae-9c860aa7", + "name": "terraform-apply-prod-runner", + "description": "", + "visibility": "private", + "org": "cyber-dojo", + "template": "version: 1\ntrail:\n attestations:\n - name: terraform-plan\n type: generic\n - name: terraform-apply\n type: generic\n artifacts:\n - name: terraform-state\n - name: drift-plan\n", "repo_url": "https://github.com/cyber-dojo/runner", "tags": {}, - "latest_activity_at": 1787665723.30174, + "latest_activity_at": 1788074911.8576832, "latest_state": "COMPLIANT" }, { @@ -588,7 +600,7 @@ kosli list flows --output=json "kind": "build", "env": "aws-beta" }, - "latest_activity_at": 1787905404.1829493, + "latest_activity_at": 1788074998.5362537, "latest_state": "COMPLIANT" } ] diff --git a/client_reference/kosli_list_snapshots.md b/client_reference/kosli_list_snapshots.md index 748a493..9b6ec51 100644 --- a/client_reference/kosli_list_snapshots.md +++ b/client_reference/kosli_list_snapshots.md @@ -63,12 +63,61 @@ kosli list snapshots aws-prod --output=json ```json [ + { + "index": 5292, + "from": 1788074998.5362537, + "to": 0.0, + "compliant": true, + "duration": 24053.718024015427 + }, + { + "index": 5291, + "from": 1788074938.4944596, + "to": 1788074998.5362537, + "compliant": true, + "duration": 60.04179406166077 + }, + { + "index": 5290, + "from": 1788074758.3723075, + "to": 1788074938.4944596, + "compliant": true, + "duration": 180.12215209007263 + }, + { + "index": 5289, + "from": 1788074698.548716, + "to": 1788074758.3723075, + "compliant": true, + "duration": 59.823591470718384 + }, + { + "index": 5288, + "from": 1788074398.5222037, + "to": 1788074698.548716, + "compliant": true, + "duration": 300.0265123844147 + }, + { + "index": 5287, + "from": 1788074338.5482786, + "to": 1788074398.5222037, + "compliant": true, + "duration": 59.97392511367798 + }, + { + "index": 5286, + "from": 1788073858.501626, + "to": 1788074338.5482786, + "compliant": true, + "duration": 480.0466525554657 + }, { "index": 5285, "from": 1787991898.5420277, - "to": 0.0, + "to": 1788073858.501626, "compliant": true, - "duration": 8434.692311048508 + "duration": 81959.95959830284 }, { "index": 5284, @@ -118,55 +167,6 @@ kosli list snapshots aws-prod --output=json "to": 1787713198.4663308, "compliant": true, "duration": 48000.0620572567 - }, - { - "index": 5277, - "from": 1787665138.622218, - "to": 1787665198.4042735, - "compliant": true, - "duration": 59.782055616378784 - }, - { - "index": 5276, - "from": 1787626078.5962257, - "to": 1787665138.622218, - "compliant": true, - "duration": 39060.025992155075 - }, - { - "index": 5275, - "from": 1787626018.4113095, - "to": 1787626078.5962257, - "compliant": true, - "duration": 60.184916257858276 - }, - { - "index": 5274, - "from": 1787540038.5204227, - "to": 1787626018.4113095, - "compliant": true, - "duration": 85979.8908867836 - }, - { - "index": 5273, - "from": 1787539978.524768, - "to": 1787540038.5204227, - "compliant": true, - "duration": 59.995654582977295 - }, - { - "index": 5272, - "from": 1787486638.4653506, - "to": 1787539978.524768, - "compliant": true, - "duration": 53340.05941748619 - }, - { - "index": 5271, - "from": 1787486578.4888847, - "to": 1787486638.4653506, - "compliant": true, - "duration": 59.976465940475464 } ] ``` diff --git a/client_reference/kosli_log_environment.md b/client_reference/kosli_log_environment.md index 8bbf62c..f0204fe 100644 --- a/client_reference/kosli_log_environment.md +++ b/client_reference/kosli_log_environment.md @@ -72,24 +72,24 @@ kosli log environment aws-prod --output=json [ { "environment_name": "aws-prod", - "snapshot_index": 5285, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:258b6d0@sha256:c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", - "sha256": "c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", - "description": "1 instance changed", - "reported_at": 1787991898.5420277, - "pipeline": "exercises-start-points-ci", + "snapshot_index": 5292, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:5e4b987@sha256:6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "sha256": "6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "description": "2 instances stopped running (from 2 to 0)", + "reported_at": 1788074998.5362537, + "pipeline": "web-ci", "deployments": [], "flows": [ { - "flow_name": "exercises-start-points-ci", + "flow_name": "web-ci", "deployments": null }, { - "flow_name": "production-promotion", + "flow_name": "snyk-aws-beta-per-artifact", "deployments": null }, { - "flow_name": "snyk-aws-beta-per-artifact", + "flow_name": "production-promotion", "deployments": null }, { @@ -99,35 +99,31 @@ 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/804f248d832dc34e564507b009c246dfb4f0c657...258b6d07d2b28ad5cb2ce6d29934997f72380f1a", + "type": "exited", + "code_diff": "https://github.com/cyber-dojo/web/compare/0c31ab46a7d8c7d34d2ce0654dc09f8ae4229c7e...5e4b9873df93525c041c386c06e0ab8fc36b6f33", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/exercises-start-points-ci/fingerprint/c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", - "html": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci/artifacts/c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea?artifact_id=ffb671be-6388-4f6a-ae64-8ba95d82" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/web-ci/fingerprint/6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "html": "https://app.kosli.com/cyber-dojo/flows/web-ci/artifacts/6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd?artifact_id=f658e6e3-9ce8-462f-a29e-a2cc6f7b" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5285", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5285" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5292", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5292" } } }, { "environment_name": "aws-prod", - "snapshot_index": 5284, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:2b300f4@sha256:1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", - "sha256": "1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", - "description": "1 instance changed", - "reported_at": 1787991838.452193, - "pipeline": "dashboard-ci", + "snapshot_index": 5291, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:cbe481c@sha256:36ad0020c6cd8716c1463808a185ca65379ec8151a9619d72549ee597d86accc", + "sha256": "36ad0020c6cd8716c1463808a185ca65379ec8151a9619d72549ee597d86accc", + "description": "3 instances started running (from 0 to 3)", + "reported_at": 1788074938.4944596, + "pipeline": "web-ci", "deployments": [], "flows": [ { - "flow_name": "dashboard-ci", - "deployments": null - }, - { - "flow_name": "snyk-aws-beta-per-artifact", + "flow_name": "web-ci", "deployments": null }, { @@ -135,41 +131,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/dashboard/compare/da7bacefac23b0983d2b9f39d87508e0f85b1167...2b300f450f72006f6a9000aaf9cd04485f1e8095", + "type": "started-compliant", + "code_diff": "https://github.com/cyber-dojo/web/compare/5e4b9873df93525c041c386c06e0ab8fc36b6f33...cbe481c4b842f897e4e9e411cd78461a3a12a334", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/dashboard-ci/fingerprint/1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", - "html": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci/artifacts/1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5?artifact_id=a805b555-f25a-4828-89d2-a28881c8" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/web-ci/fingerprint/36ad0020c6cd8716c1463808a185ca65379ec8151a9619d72549ee597d86accc", + "html": "https://app.kosli.com/cyber-dojo/flows/web-ci/artifacts/36ad0020c6cd8716c1463808a185ca65379ec8151a9619d72549ee597d86accc?artifact_id=41957e62-eaad-48d2-af40-46879efb" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5284", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5284" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5291", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5291" } } }, { "environment_name": "aws-prod", - "snapshot_index": 5284, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:36f0420@sha256:2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", - "sha256": "2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", - "description": "1 instance changed", - "reported_at": 1787991838.452193, - "pipeline": "saver-ci", + "snapshot_index": 5290, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:976b63e@sha256:01311f8b73bb61f65baabe680aa75ef9c0e6c5d1697ad81cfd89c89812de6fe9", + "sha256": "01311f8b73bb61f65baabe680aa75ef9c0e6c5d1697ad81cfd89c89812de6fe9", + "description": "3 instances changed", + "reported_at": 1788074758.3723075, + "pipeline": "runner-ci", "deployments": [], "flows": [ { - "flow_name": "saver-ci", - "deployments": null - }, - { - "flow_name": "snyk-aws-beta-per-artifact", + "flow_name": "runner-ci", "deployments": null }, { @@ -177,37 +169,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/595e902fa2f5844d9ce0612a5c9295cd8dab5b97...36f0420f728fe61e44a3ab0043cf9a3d70863cad", + "type": "updated-provenance", + "code_diff": "https://github.com/cyber-dojo/runner/compare/d7541d3fb2c548bd68a81f812b5a6c95fcf9a1bd...976b63e8001ec7441ebc7737ca69f620d47e7ffe", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/saver-ci/fingerprint/2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", - "html": "https://app.kosli.com/cyber-dojo/flows/saver-ci/artifacts/2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a?artifact_id=01bf7de8-52fc-4585-a4b6-abf82047" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/runner-ci/fingerprint/01311f8b73bb61f65baabe680aa75ef9c0e6c5d1697ad81cfd89c89812de6fe9", + "html": "https://app.kosli.com/cyber-dojo/flows/runner-ci/artifacts/01311f8b73bb61f65baabe680aa75ef9c0e6c5d1697ad81cfd89c89812de6fe9?artifact_id=e63d6d6b-d7ee-4fad-a66a-32a4ebba" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5284", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5284" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5290", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5290" } } }, { "environment_name": "aws-prod", - "snapshot_index": 5284, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:108cccf@sha256:31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", - "sha256": "31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", + "snapshot_index": 5290, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:36f0420@sha256:2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", + "sha256": "2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", "description": "1 instance changed", - "reported_at": 1787991838.452193, - "pipeline": "differ-ci", + "reported_at": 1788074758.3723075, + "pipeline": "saver-ci", "deployments": [], "flows": [ { - "flow_name": "differ-ci", + "flow_name": "saver-ci", "deployments": null }, { @@ -226,38 +218,38 @@ kosli log environment aws-prod --output=json "artifact_compliance": true, "snapshot_compliance": true, "type": "changed", - "code_diff": "https://github.com/cyber-dojo/differ/compare/10e162d4e1294815375a31121f14d57e13183b34...108cccf9bccf9af5d455db66c250480b53cbecc7", + "code_diff": "https://github.com/cyber-dojo/saver/compare/595e902fa2f5844d9ce0612a5c9295cd8dab5b97...36f0420f728fe61e44a3ab0043cf9a3d70863cad", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/differ-ci/fingerprint/31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", - "html": "https://app.kosli.com/cyber-dojo/flows/differ-ci/artifacts/31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac?artifact_id=50b8cff6-1888-4c76-b31a-fdd7a311" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/saver-ci/fingerprint/2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", + "html": "https://app.kosli.com/cyber-dojo/flows/saver-ci/artifacts/2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a?artifact_id=01bf7de8-52fc-4585-a4b6-abf82047" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5284", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5284" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5290", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5290" } } }, { "environment_name": "aws-prod", - "snapshot_index": 5284, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:5e4b987@sha256:6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", - "sha256": "6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", - "description": "3 instances changed", - "reported_at": 1787991838.452193, - "pipeline": "web-ci", + "snapshot_index": 5290, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/spooler:dc7dea2@sha256:ff871c3c8f4b5cfb60012bed1cd7f020b20f17fdabc2db0d8a5c77e75518fce0", + "sha256": "ff871c3c8f4b5cfb60012bed1cd7f020b20f17fdabc2db0d8a5c77e75518fce0", + "description": "1 instance changed", + "reported_at": 1788074758.3723075, + "pipeline": "spooler-ci", "deployments": [], "flows": [ { - "flow_name": "web-ci", + "flow_name": "spooler-ci", "deployments": null }, { - "flow_name": "snyk-aws-beta-per-artifact", + "flow_name": "production-promotion", "deployments": null }, { - "flow_name": "production-promotion", + "flow_name": "snyk-aws-beta-per-artifact", "deployments": null }, { @@ -268,38 +260,38 @@ kosli log environment aws-prod --output=json "artifact_compliance": true, "snapshot_compliance": true, "type": "changed", - "code_diff": "https://github.com/cyber-dojo/web/compare/0c31ab46a7d8c7d34d2ce0654dc09f8ae4229c7e...5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "code_diff": "https://github.com/cyber-dojo/spooler/compare/c81791fd10558a59f83876137fb021abcd89f262...dc7dea2d9086fcdfe4629f3ab02501ed92aad1bb", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/web-ci/fingerprint/6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", - "html": "https://app.kosli.com/cyber-dojo/flows/web-ci/artifacts/6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd?artifact_id=f658e6e3-9ce8-462f-a29e-a2cc6f7b" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/spooler-ci/fingerprint/ff871c3c8f4b5cfb60012bed1cd7f020b20f17fdabc2db0d8a5c77e75518fce0", + "html": "https://app.kosli.com/cyber-dojo/flows/spooler-ci/artifacts/ff871c3c8f4b5cfb60012bed1cd7f020b20f17fdabc2db0d8a5c77e75518fce0?artifact_id=df2dcc5e-bb07-40e8-b013-9ac60f42" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5284", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5284" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5290", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5290" } } }, { "environment_name": "aws-prod", - "snapshot_index": 5284, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:790d86b@sha256:8e965dda26af2d2e68032c25d68e792c85e0c7bd9814862de231bc4c6e935b81", - "sha256": "8e965dda26af2d2e68032c25d68e792c85e0c7bd9814862de231bc4c6e935b81", + "snapshot_index": 5289, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:2b300f4@sha256:1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", + "sha256": "1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", "description": "1 instance changed", - "reported_at": 1787991838.452193, - "pipeline": "custom-start-points-ci", + "reported_at": 1788074698.548716, + "pipeline": "dashboard-ci", "deployments": [], "flows": [ { - "flow_name": "custom-start-points-ci", + "flow_name": "dashboard-ci", "deployments": null }, { - "flow_name": "production-promotion", + "flow_name": "snyk-aws-beta-per-artifact", "deployments": null }, { - "flow_name": "snyk-aws-beta-per-artifact", + "flow_name": "production-promotion", "deployments": null }, { @@ -310,30 +302,30 @@ 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/d37aace7598ee943ba0bd5e51f224335cbdf0a3e...790d86b66f4d86ab47f5c521daf5039dc8aeef4d", + "code_diff": "https://github.com/cyber-dojo/dashboard/compare/da7bacefac23b0983d2b9f39d87508e0f85b1167...2b300f450f72006f6a9000aaf9cd04485f1e8095", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/custom-start-points-ci/fingerprint/8e965dda26af2d2e68032c25d68e792c85e0c7bd9814862de231bc4c6e935b81", - "html": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci/artifacts/8e965dda26af2d2e68032c25d68e792c85e0c7bd9814862de231bc4c6e935b81?artifact_id=653e13a5-2f2a-4a23-be4e-1693fc77" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/dashboard-ci/fingerprint/1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5", + "html": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci/artifacts/1342e060fb8af6c34d004e474544d1472b940250eb0084f206c3d7bf9d78e2b5?artifact_id=a805b555-f25a-4828-89d2-a28881c8" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5284", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5284" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5289", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5289" } } }, { "environment_name": "aws-prod", - "snapshot_index": 5284, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:83357f1@sha256:adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", - "sha256": "adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", + "snapshot_index": 5289, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:108cccf@sha256:31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", + "sha256": "31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", "description": "1 instance changed", - "reported_at": 1787991838.452193, - "pipeline": "creator-ci", + "reported_at": 1788074698.548716, + "pipeline": "differ-ci", "deployments": [], "flows": [ { - "flow_name": "creator-ci", + "flow_name": "differ-ci", "deployments": null }, { @@ -352,30 +344,30 @@ kosli log environment aws-prod --output=json "artifact_compliance": true, "snapshot_compliance": true, "type": "changed", - "code_diff": "https://github.com/cyber-dojo/creator/compare/89019f6d8059406e56fa499b2dec2dbf93f4d5c7...83357f112ef5c10b157cb84732c77965cc8ddc48", + "code_diff": "https://github.com/cyber-dojo/differ/compare/10e162d4e1294815375a31121f14d57e13183b34...108cccf9bccf9af5d455db66c250480b53cbecc7", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/creator-ci/fingerprint/adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", - "html": "https://app.kosli.com/cyber-dojo/flows/creator-ci/artifacts/adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b?artifact_id=11539f6a-befb-4b79-9484-fd9f25d3" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/differ-ci/fingerprint/31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", + "html": "https://app.kosli.com/cyber-dojo/flows/differ-ci/artifacts/31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac?artifact_id=50b8cff6-1888-4c76-b31a-fdd7a311" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5284", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5284" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5289", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5289" } } }, { "environment_name": "aws-prod", - "snapshot_index": 5284, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:068b342@sha256:adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", - "sha256": "adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", - "description": "1 instance changed", - "reported_at": 1787991838.452193, - "pipeline": "languages-start-points-ci", + "snapshot_index": 5289, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:5e4b987@sha256:6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "sha256": "6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "description": "3 instances changed", + "reported_at": 1788074698.548716, + "pipeline": "web-ci", "deployments": [], "flows": [ { - "flow_name": "languages-start-points-ci", + "flow_name": "web-ci", "deployments": null }, { @@ -394,38 +386,38 @@ kosli log environment aws-prod --output=json "artifact_compliance": true, "snapshot_compliance": true, "type": "changed", - "code_diff": "https://github.com/cyber-dojo/languages-start-points/compare/6a7f7be81022f7ed3fa8383f016b55af86e2af23...068b3424c7da843a4f2d428d2e4915f33efc4a02", + "code_diff": "https://github.com/cyber-dojo/web/compare/0c31ab46a7d8c7d34d2ce0654dc09f8ae4229c7e...5e4b9873df93525c041c386c06e0ab8fc36b6f33", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/languages-start-points-ci/fingerprint/adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", - "html": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci/artifacts/adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb?artifact_id=4154b9c8-14cc-426f-abc5-05220611" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/web-ci/fingerprint/6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", + "html": "https://app.kosli.com/cyber-dojo/flows/web-ci/artifacts/6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd?artifact_id=f658e6e3-9ce8-462f-a29e-a2cc6f7b" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5284", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5284" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5289", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5289" } } }, { "environment_name": "aws-prod", - "snapshot_index": 5284, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:fb79174@sha256:b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", - "sha256": "b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", + "snapshot_index": 5289, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:790d86b@sha256:8e965dda26af2d2e68032c25d68e792c85e0c7bd9814862de231bc4c6e935b81", + "sha256": "8e965dda26af2d2e68032c25d68e792c85e0c7bd9814862de231bc4c6e935b81", "description": "1 instance changed", - "reported_at": 1787991838.452193, - "pipeline": "nginx-ci", + "reported_at": 1788074698.548716, + "pipeline": "custom-start-points-ci", "deployments": [], "flows": [ { - "flow_name": "nginx-ci", + "flow_name": "custom-start-points-ci", "deployments": null }, { - "flow_name": "snyk-aws-beta-per-artifact", + "flow_name": "production-promotion", "deployments": null }, { - "flow_name": "production-promotion", + "flow_name": "snyk-aws-beta-per-artifact", "deployments": null }, { @@ -436,38 +428,38 @@ kosli log environment aws-prod --output=json "artifact_compliance": true, "snapshot_compliance": true, "type": "changed", - "code_diff": "https://github.com/cyber-dojo/nginx/compare/5ce2769937a4014a853787d7b3d89ec30b6ac967...fb791742054fa28dd89269aac8002ebfd7b3386e", + "code_diff": "https://github.com/cyber-dojo/custom-start-points/compare/d37aace7598ee943ba0bd5e51f224335cbdf0a3e...790d86b66f4d86ab47f5c521daf5039dc8aeef4d", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/nginx-ci/fingerprint/b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", - "html": "https://app.kosli.com/cyber-dojo/flows/nginx-ci/artifacts/b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf?artifact_id=b9778ac6-6d83-4954-98ba-a3e60a22" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/custom-start-points-ci/fingerprint/8e965dda26af2d2e68032c25d68e792c85e0c7bd9814862de231bc4c6e935b81", + "html": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci/artifacts/8e965dda26af2d2e68032c25d68e792c85e0c7bd9814862de231bc4c6e935b81?artifact_id=653e13a5-2f2a-4a23-be4e-1693fc77" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5284", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5284" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5289", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5289" } } }, { "environment_name": "aws-prod", - "snapshot_index": 5284, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:7661027@sha256:f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", - "sha256": "f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", - "description": "3 instances changed", - "reported_at": 1787991838.452193, - "pipeline": "runner-ci", + "snapshot_index": 5289, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:83357f1@sha256:adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", + "sha256": "adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", + "description": "1 instance changed", + "reported_at": 1788074698.548716, + "pipeline": "creator-ci", "deployments": [], "flows": [ { - "flow_name": "runner-ci", + "flow_name": "creator-ci", "deployments": null }, { - "flow_name": "production-promotion", + "flow_name": "snyk-aws-beta-per-artifact", "deployments": null }, { - "flow_name": "snyk-aws-beta-per-artifact", + "flow_name": "production-promotion", "deployments": null }, { @@ -478,38 +470,38 @@ kosli log environment aws-prod --output=json "artifact_compliance": true, "snapshot_compliance": true, "type": "changed", - "code_diff": "https://github.com/cyber-dojo/runner/compare/d7541d3fb2c548bd68a81f812b5a6c95fcf9a1bd...76610271f641f1a5634465e97f880dfe019e515e", + "code_diff": "https://github.com/cyber-dojo/creator/compare/89019f6d8059406e56fa499b2dec2dbf93f4d5c7...83357f112ef5c10b157cb84732c77965cc8ddc48", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/runner-ci/fingerprint/f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", - "html": "https://app.kosli.com/cyber-dojo/flows/runner-ci/artifacts/f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9?artifact_id=977cfbff-032e-4f5d-8ae3-4e9512e3" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/creator-ci/fingerprint/adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b", + "html": "https://app.kosli.com/cyber-dojo/flows/creator-ci/artifacts/adb922d738b50876f1cd13f5a998ade341abfd64b3561d0889264399c33c528b?artifact_id=11539f6a-befb-4b79-9484-fd9f25d3" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5284", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5284" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5289", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5289" } } }, { "environment_name": "aws-prod", - "snapshot_index": 5284, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/spooler:dc7dea2@sha256:ff871c3c8f4b5cfb60012bed1cd7f020b20f17fdabc2db0d8a5c77e75518fce0", - "sha256": "ff871c3c8f4b5cfb60012bed1cd7f020b20f17fdabc2db0d8a5c77e75518fce0", + "snapshot_index": 5289, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:068b342@sha256:adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", + "sha256": "adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", "description": "1 instance changed", - "reported_at": 1787991838.452193, - "pipeline": "spooler-ci", + "reported_at": 1788074698.548716, + "pipeline": "languages-start-points-ci", "deployments": [], "flows": [ { - "flow_name": "spooler-ci", + "flow_name": "languages-start-points-ci", "deployments": null }, { - "flow_name": "production-promotion", + "flow_name": "snyk-aws-beta-per-artifact", "deployments": null }, { - "flow_name": "snyk-aws-beta-per-artifact", + "flow_name": "production-promotion", "deployments": null }, { @@ -520,38 +512,38 @@ kosli log environment aws-prod --output=json "artifact_compliance": true, "snapshot_compliance": true, "type": "changed", - "code_diff": "https://github.com/cyber-dojo/spooler/compare/c81791fd10558a59f83876137fb021abcd89f262...dc7dea2d9086fcdfe4629f3ab02501ed92aad1bb", + "code_diff": "https://github.com/cyber-dojo/languages-start-points/compare/6a7f7be81022f7ed3fa8383f016b55af86e2af23...068b3424c7da843a4f2d428d2e4915f33efc4a02", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/spooler-ci/fingerprint/ff871c3c8f4b5cfb60012bed1cd7f020b20f17fdabc2db0d8a5c77e75518fce0", - "html": "https://app.kosli.com/cyber-dojo/flows/spooler-ci/artifacts/ff871c3c8f4b5cfb60012bed1cd7f020b20f17fdabc2db0d8a5c77e75518fce0?artifact_id=df2dcc5e-bb07-40e8-b013-9ac60f42" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/languages-start-points-ci/fingerprint/adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb", + "html": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci/artifacts/adf2596645ae3fe9b711849a2e9aae3a65173b270963e3214b9c7ea00b03c1cb?artifact_id=4154b9c8-14cc-426f-abc5-05220611" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5284", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5284" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5289", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5289" } } }, { "environment_name": "aws-prod", - "snapshot_index": 5283, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:7661027@sha256:f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", - "sha256": "f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", - "description": "3 instances changed", - "reported_at": 1787923678.398171, - "pipeline": "runner-ci", + "snapshot_index": 5289, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:fb79174@sha256:b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", + "sha256": "b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", + "description": "1 instance changed", + "reported_at": 1788074698.548716, + "pipeline": "nginx-ci", "deployments": [], "flows": [ { - "flow_name": "runner-ci", + "flow_name": "nginx-ci", "deployments": null }, { - "flow_name": "production-promotion", + "flow_name": "snyk-aws-beta-per-artifact", "deployments": null }, { - "flow_name": "snyk-aws-beta-per-artifact", + "flow_name": "production-promotion", "deployments": null }, { @@ -562,38 +554,38 @@ kosli log environment aws-prod --output=json "artifact_compliance": true, "snapshot_compliance": true, "type": "changed", - "code_diff": "https://github.com/cyber-dojo/runner/compare/d7541d3fb2c548bd68a81f812b5a6c95fcf9a1bd...76610271f641f1a5634465e97f880dfe019e515e", + "code_diff": "https://github.com/cyber-dojo/nginx/compare/5ce2769937a4014a853787d7b3d89ec30b6ac967...fb791742054fa28dd89269aac8002ebfd7b3386e", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/runner-ci/fingerprint/f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9", - "html": "https://app.kosli.com/cyber-dojo/flows/runner-ci/artifacts/f362f331cd56af641d03b9f647795f95c3a0d597a5e7ff659788f9dfec4fe8d9?artifact_id=977cfbff-032e-4f5d-8ae3-4e9512e3" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/nginx-ci/fingerprint/b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf", + "html": "https://app.kosli.com/cyber-dojo/flows/nginx-ci/artifacts/b70ff1f9493f5d4205e0e95e565b3fc4d909de237b10e490b250671d0d6895cf?artifact_id=b9778ac6-6d83-4954-98ba-a3e60a22" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5283", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5283" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5289", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5289" } } }, { "environment_name": "aws-prod", - "snapshot_index": 5282, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:36f0420@sha256:2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", - "sha256": "2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", + "snapshot_index": 5289, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:258b6d0@sha256:c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", + "sha256": "c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", "description": "1 instance changed", - "reported_at": 1787923618.562095, - "pipeline": "saver-ci", + "reported_at": 1788074698.548716, + "pipeline": "exercises-start-points-ci", "deployments": [], "flows": [ { - "flow_name": "saver-ci", + "flow_name": "exercises-start-points-ci", "deployments": null }, { - "flow_name": "snyk-aws-beta-per-artifact", + "flow_name": "production-promotion", "deployments": null }, { - "flow_name": "production-promotion", + "flow_name": "snyk-aws-beta-per-artifact", "deployments": null }, { @@ -604,38 +596,38 @@ kosli log environment aws-prod --output=json "artifact_compliance": true, "snapshot_compliance": true, "type": "changed", - "code_diff": "https://github.com/cyber-dojo/saver/compare/595e902fa2f5844d9ce0612a5c9295cd8dab5b97...36f0420f728fe61e44a3ab0043cf9a3d70863cad", + "code_diff": "https://github.com/cyber-dojo/exercises-start-points/compare/804f248d832dc34e564507b009c246dfb4f0c657...258b6d07d2b28ad5cb2ce6d29934997f72380f1a", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/saver-ci/fingerprint/2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a", - "html": "https://app.kosli.com/cyber-dojo/flows/saver-ci/artifacts/2ec004d6e7c2668ff407b4384d6b4c62f92d9606ae18447c5fb326211921bc6a?artifact_id=01bf7de8-52fc-4585-a4b6-abf82047" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/exercises-start-points-ci/fingerprint/c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", + "html": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci/artifacts/c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea?artifact_id=ffb671be-6388-4f6a-ae64-8ba95d82" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5282", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5282" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5289", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5289" } } }, { "environment_name": "aws-prod", - "snapshot_index": 5282, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:108cccf@sha256:31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", - "sha256": "31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", - "description": "1 instance changed", - "reported_at": 1787923618.562095, - "pipeline": "differ-ci", + "snapshot_index": 5288, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:d7541d3@sha256:fd8c68c615a68bfa49569beea07d071950dcfeac676028543f530dd7193f5631", + "sha256": "fd8c68c615a68bfa49569beea07d071950dcfeac676028543f530dd7193f5631", + "description": "3 instances stopped running (from 3 to 0)", + "reported_at": 1788074398.5222037, + "pipeline": "runner-ci", "deployments": [], "flows": [ { - "flow_name": "differ-ci", + "flow_name": "runner-ci", "deployments": null }, { - "flow_name": "snyk-aws-beta-per-artifact", + "flow_name": "production-promotion", "deployments": null }, { - "flow_name": "production-promotion", + "flow_name": "snyk-aws-beta-per-artifact", "deployments": null }, { @@ -645,58 +637,50 @@ kosli log environment aws-prod --output=json ], "artifact_compliance": true, "snapshot_compliance": true, - "type": "changed", - "code_diff": "https://github.com/cyber-dojo/differ/compare/10e162d4e1294815375a31121f14d57e13183b34...108cccf9bccf9af5d455db66c250480b53cbecc7", + "type": "exited", + "code_diff": "https://github.com/cyber-dojo/runner/compare/76610271f641f1a5634465e97f880dfe019e515e...d7541d3fb2c548bd68a81f812b5a6c95fcf9a1bd", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/differ-ci/fingerprint/31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac", - "html": "https://app.kosli.com/cyber-dojo/flows/differ-ci/artifacts/31a4c3abc3ccef33397ed1d84496a08d94ca9d6f9d0df44b6a72aba9743bc8ac?artifact_id=50b8cff6-1888-4c76-b31a-fdd7a311" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/runner-ci/fingerprint/fd8c68c615a68bfa49569beea07d071950dcfeac676028543f530dd7193f5631", + "html": "https://app.kosli.com/cyber-dojo/flows/runner-ci/artifacts/fd8c68c615a68bfa49569beea07d071950dcfeac676028543f530dd7193f5631?artifact_id=6272fd19-9b14-48e5-89c5-74be156a" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5282", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5282" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5288", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5288" } } }, { "environment_name": "aws-prod", - "snapshot_index": 5282, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:5e4b987@sha256:6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", - "sha256": "6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", - "description": "3 instances changed", - "reported_at": 1787923618.562095, - "pipeline": "web-ci", + "snapshot_index": 5287, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:976b63e@sha256:01311f8b73bb61f65baabe680aa75ef9c0e6c5d1697ad81cfd89c89812de6fe9", + "sha256": "01311f8b73bb61f65baabe680aa75ef9c0e6c5d1697ad81cfd89c89812de6fe9", + "description": "3 instances started running (from 0 to 3)", + "reported_at": 1788074338.5482786, + "pipeline": "runner-ci", "deployments": [], "flows": [ { - "flow_name": "web-ci", - "deployments": null - }, - { - "flow_name": "snyk-aws-beta-per-artifact", + "flow_name": "runner-ci", "deployments": null }, { "flow_name": "production-promotion", "deployments": null - }, - { - "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/0c31ab46a7d8c7d34d2ce0654dc09f8ae4229c7e...5e4b9873df93525c041c386c06e0ab8fc36b6f33", + "type": "started-compliant", + "code_diff": "https://github.com/cyber-dojo/runner/compare/d7541d3fb2c548bd68a81f812b5a6c95fcf9a1bd...976b63e8001ec7441ebc7737ca69f620d47e7ffe", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/web-ci/fingerprint/6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd", - "html": "https://app.kosli.com/cyber-dojo/flows/web-ci/artifacts/6f394e0dccb59b852fa52ffa114fde8452280054c84de05b0627b1b0f18657bd?artifact_id=f658e6e3-9ce8-462f-a29e-a2cc6f7b" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/runner-ci/fingerprint/01311f8b73bb61f65baabe680aa75ef9c0e6c5d1697ad81cfd89c89812de6fe9", + "html": "https://app.kosli.com/cyber-dojo/flows/runner-ci/artifacts/01311f8b73bb61f65baabe680aa75ef9c0e6c5d1697ad81cfd89c89812de6fe9?artifact_id=e63d6d6b-d7ee-4fad-a66a-32a4ebba" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5282", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5282" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5287", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5287" } } } diff --git a/client_reference/kosli_snapshot_azure.md b/client_reference/kosli_snapshot_azure.md index f4ea378..5a02f48 100644 --- a/client_reference/kosli_snapshot_azure.md +++ b/client_reference/kosli_snapshot_azure.md @@ -16,10 +16,10 @@ For Azure Function apps or Web apps which uses zip deployment the fingerprint is content of the zip file. This is the same as unzipping the file and then running `kosli fingerprint -t dir yourDirName`. When doing zip deployment the WEBSITE_RUN_FROM_PACKAGE must NOT be set to 1. This will cause the azure API calls to not return the content of what is running on the server and fingerprint calculations -will not match. See +will not match. See https://learn.microsoft.com/en-us/azure/azure-functions/functions-app-settings#website_run_from_package -For zip-deployed apps, the fingerprint honours a `.kosli_ignore` file at the root of the deployed package. +For zip-deployed apps, the fingerprint respects a `.kosli_ignore` file at the root of the deployed package. To specify paths in a directory artifact that should always be excluded from the SHA256 calculation, you can add a `.kosli_ignore` file to the root of the artifact. Each line should specify a relative path or path glob to be ignored. You can include comments in this file, using `#`. The `.kosli_ignore` will be treated as part of the artifact like any other file, unless it is explicitly ignored itself. diff --git a/client_reference/overview.md b/client_reference/overview.md index c942de2..24940ed 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.39.0**. + This reference was generated from Kosli CLI **v2.39.1**. The Kosli CLI allows you to interact with Kosli from your terminal and CI/CD pipelines.