From 87ec351547fafa407bd843986cf9685a856f8f12 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 21 Jul 2026 09:23:59 +0000 Subject: [PATCH] docs: update CLI and helm reference for v2.33.2 --- client_reference/kosli_assert_artifact.md | 2 +- .../kosli_assert_pullrequest_bitbucket.md | 7 +- client_reference/kosli_attest_artifact.md | 6 +- client_reference/kosli_attest_custom.md | 4 +- client_reference/kosli_attest_decision.md | 2 +- client_reference/kosli_attest_generic.md | 6 +- client_reference/kosli_attest_jira.md | 2 +- client_reference/kosli_attest_junit.md | 6 +- .../kosli_attest_pullrequest_azure.md | 2 +- .../kosli_attest_pullrequest_bitbucket.md | 9 +- .../kosli_attest_pullrequest_github.md | 4 +- .../kosli_attest_pullrequest_gitlab.md | 4 +- client_reference/kosli_attest_snyk.md | 2 +- client_reference/kosli_attest_sonar.md | 4 +- client_reference/kosli_begin_trail.md | 4 +- client_reference/kosli_diff_snapshots.md | 154 +- client_reference/kosli_get_environment.md | 6 +- client_reference/kosli_get_snapshot.md | 3898 ++++++++--------- client_reference/kosli_list_environments.md | 32 +- client_reference/kosli_list_flows.md | 34 +- client_reference/kosli_list_snapshots.md | 118 +- client_reference/kosli_log_environment.md | 390 +- client_reference/overview.md | 2 +- 23 files changed, 2162 insertions(+), 2536 deletions(-) diff --git a/client_reference/kosli_assert_artifact.md b/client_reference/kosli_assert_artifact.md index 471ca2f..f43616b 100644 --- a/client_reference/kosli_assert_artifact.md +++ b/client_reference/kosli_assert_artifact.md @@ -68,7 +68,7 @@ non-zero code if non-compliant status. View an example of the `kosli assert artifact` command in GitHub. - In [this YAML file](https://github.com/cyber-dojo/differ/blob/335ddfa139708c37908dd594a0502bc6d88f8615/.github/workflows/main.yml#L271) + In [this YAML file](https://github.com/cyber-dojo/differ/blob/1b7ea87a174a1a290600b469dc1029ec4c974320/.github/workflows/main.yml#L271) View an example of the `kosli assert artifact` command in GitLab. diff --git a/client_reference/kosli_assert_pullrequest_bitbucket.md b/client_reference/kosli_assert_pullrequest_bitbucket.md index 9f73f09..11072a8 100644 --- a/client_reference/kosli_assert_pullrequest_bitbucket.md +++ b/client_reference/kosli_assert_pullrequest_bitbucket.md @@ -11,14 +11,15 @@ kosli assert pullrequest bitbucket [flags] Assert a Bitbucket pull request for a git commit exists. The command exits with non-zero exit code if no pull requests were found for the commit. -Authentication to Bitbucket can be done with access token (recommended) or app passwords. Credentials need to have read access for both repos and pull requests. +Authentication to Bitbucket can be done with an access token (recommended) or an Atlassian API token, passed via --bitbucket-username (your Atlassian account email) and --bitbucket-password. +Bitbucket app passwords are no longer supported as of 28 July 2026; replace any app passwords with API tokens. Credentials need to have read access for both repos and pull requests. ## Flags | Flag | Description | | :--- | :--- | | `--bitbucket-access-token` string | Bitbucket repo/project/workspace access token. See [Bitbucket access tokens](https://developer.atlassian.com/cloud/bitbucket/rest/intro/#access-tokens) for more details. | -| `--bitbucket-password` string | Bitbucket App password. See [Bitbucket authentication](https://developer.atlassian.com/cloud/bitbucket/rest/intro/#authentication) for more details. | -| `--bitbucket-username` string | Bitbucket username. Only needed if you use `--bitbucket-password` | +| `--bitbucket-password` string | Bitbucket API token. Bitbucket app passwords are no longer supported as of 28 July 2026. See [Bitbucket authentication](https://developer.atlassian.com/cloud/bitbucket/rest/intro/#authentication) for more details. | +| `--bitbucket-username` string | Bitbucket username (your Atlassian account email when using an API token). Only needed if you use `--bitbucket-password` | | `--bitbucket-workspace` string | Bitbucket workspace ID. | | `--commit` string | Git commit for which to find pull request evidence. (defaulted in some CIs: [docs](/integrations/ci_cd) ). (default "HEAD") | | `-D`, `--dry-run` | [optional] Run in dry-run mode. When enabled, no data is sent to Kosli and the CLI exits with 0 exit code regardless of any errors. | diff --git a/client_reference/kosli_attest_artifact.md b/client_reference/kosli_attest_artifact.md index d92e6c6..2e6a95a 100644 --- a/client_reference/kosli_attest_artifact.md +++ b/client_reference/kosli_attest_artifact.md @@ -66,7 +66,7 @@ In other CI systems, set them explicitly to capture repository metadata. | `--registry-password` string | [conditional] The container registry password or access token. Only required if you want to read container image SHA256 digest from a remote container registry and it is not already accessible via Docker/Podman auth files or a credential helper. | | `--registry-username` string | [conditional] The container registry username. Only required if you want to read container image SHA256 digest from a remote container registry and it is not already accessible via Docker/Podman auth files or a credential helper. | | `--repo-id` string | [conditional] The stable, unique identifier for the repository in your VCS provider (e.g. a numeric ID). Do not use the repository name as it can change if the repo is renamed. All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | -| `--repo-provider` string | [optional] The source code hosting provider. One of: github, gitlab, bitbucket, azure-devops (defaulted in some CIs: [docs](/integrations/ci_cd) ). | +| `--repo-provider` string | [optional] The source code hosting provider. One of: github, gitlab, bitbucket, bitbucket_cloud, bitbucket_dc, azure-devops, azure_devops_services, azure_devops_server, git, subversion (defaulted in some CIs: [docs](/integrations/ci_cd) ). | | `--repo-root` string | [defaulted] The directory where the source git repository is available. (default ".") | | `--repo-url` string | [conditional] The URL of the repository. Must be a valid URL. All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | | `--repository` string | [conditional] The name of the repository (e.g. owner/repo-name). All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | @@ -92,12 +92,12 @@ In other CI systems, set them explicitly to capture repository metadata. View an example of the `kosli attest artifact` command in GitHub. - In [this YAML file](https://github.com/cyber-dojo/reusable-actions-workflows/blob/25f0b797c18403de1c8490a9a71bbe9789c809a9/.github/workflows/secure-docker-build.yml#L210), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/differ-ci/trails/8beff9901ac67acb7afcab3408106208571a1124?attestation_id=ece4f8ca-6c19-4ca5-a482-dd4af708). + In [this YAML file](https://github.com/cyber-dojo/reusable-actions-workflows/blob/25f0b797c18403de1c8490a9a71bbe9789c809a9/.github/workflows/secure-docker-build.yml#L210), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/differ-ci/trails/335ddfa139708c37908dd594a0502bc6d88f8615?attestation_id=5f3d2a2e-acdb-4414-a1e7-ebca7c32). View an example of the `kosli attest artifact` command in GitLab. - In [this YAML file](https://gitlab.com/cyber-dojo/creator/-/blob/65fd2bfa2478534ea4bc5ccf30f6bfc6aab7550c/.gitlab/workflows/main.yml#L111), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/creator-ci/trails/7e00b70f8911edf1c480ba9a8b9c2a280260cb08?attestation_id=aeec9b85-1a23-4579-b4a8-dbc98a05). + In [this YAML file](https://gitlab.com/cyber-dojo/creator/-/blob/65fd2bfa2478534ea4bc5ccf30f6bfc6aab7550c/.gitlab/workflows/main.yml#L111), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/creator-ci/trails/76672a8b247049c3ce8c3140852e17be8f47d995?attestation_id=3cb9c270-d59b-4b28-b16a-b23d89d2). diff --git a/client_reference/kosli_attest_custom.md b/client_reference/kosli_attest_custom.md index 66dd16c..7239528 100644 --- a/client_reference/kosli_attest_custom.md +++ b/client_reference/kosli_attest_custom.md @@ -49,7 +49,7 @@ In other CI systems, set them explicitly to capture repository metadata. | `--registry-password` string | [conditional] The container registry password or access token. Only required if you want to read container image SHA256 digest from a remote container registry and it is not already accessible via Docker/Podman auth files or a credential helper. | | `--registry-username` string | [conditional] The container registry username. Only required if you want to read container image SHA256 digest from a remote container registry and it is not already accessible via Docker/Podman auth files or a credential helper. | | `--repo-id` string | [conditional] The stable, unique identifier for the repository in your VCS provider (e.g. a numeric ID). Do not use the repository name as it can change if the repo is renamed. All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | -| `--repo-provider` string | [optional] The source code hosting provider. One of: github, gitlab, bitbucket, azure-devops (defaulted in some CIs: [docs](/integrations/ci_cd) ). | +| `--repo-provider` string | [optional] The source code hosting provider. One of: github, gitlab, bitbucket, bitbucket_cloud, bitbucket_dc, azure-devops, azure_devops_services, azure_devops_server, git, subversion (defaulted in some CIs: [docs](/integrations/ci_cd) ). | | `--repo-root` string | [defaulted] The directory where the source git repository is available. Only used if `--commit` is used or defaulted in CI, see [docs](/integrations/ci_cd/#defaulted-kosli-command-flags-from-ci-variables) . (default ".") | | `--repo-url` string | [conditional] The URL of the repository. Must be a valid URL. All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | | `--repository` string | [conditional] The name of the repository (e.g. owner/repo-name). All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | @@ -77,7 +77,7 @@ In other CI systems, set them explicitly to capture repository metadata. View an example of the `kosli attest custom` command in GitHub. - In [this YAML file](https://github.com/cyber-dojo/differ/blob/8beff9901ac67acb7afcab3408106208571a1124/.github/workflows/main.yml#L168), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/differ-ci/trails/8beff9901ac67acb7afcab3408106208571a1124?attestation_id=0910d985-335a-496e-8c92-2dec3e73). + In [this YAML file](https://github.com/cyber-dojo/differ/blob/335ddfa139708c37908dd594a0502bc6d88f8615/.github/workflows/main.yml#L168), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/differ-ci/trails/335ddfa139708c37908dd594a0502bc6d88f8615?attestation_id=12b9fd3d-cb9b-4583-b5ac-ceb9d803). diff --git a/client_reference/kosli_attest_decision.md b/client_reference/kosli_attest_decision.md index aceb65d..9cd1734 100644 --- a/client_reference/kosli_attest_decision.md +++ b/client_reference/kosli_attest_decision.md @@ -56,7 +56,7 @@ In other CI systems, set them explicitly to capture repository metadata. | `--registry-password` string | [conditional] The container registry password or access token. Only required if you want to read container image SHA256 digest from a remote container registry and it is not already accessible via Docker/Podman auth files or a credential helper. | | `--registry-username` string | [conditional] The container registry username. Only required if you want to read container image SHA256 digest from a remote container registry and it is not already accessible via Docker/Podman auth files or a credential helper. | | `--repo-id` string | [conditional] The stable, unique identifier for the repository in your VCS provider (e.g. a numeric ID). Do not use the repository name as it can change if the repo is renamed. All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | -| `--repo-provider` string | [optional] The source code hosting provider. One of: github, gitlab, bitbucket, azure-devops (defaulted in some CIs: [docs](/integrations/ci_cd) ). | +| `--repo-provider` string | [optional] The source code hosting provider. One of: github, gitlab, bitbucket, bitbucket_cloud, bitbucket_dc, azure-devops, azure_devops_services, azure_devops_server, git, subversion (defaulted in some CIs: [docs](/integrations/ci_cd) ). | | `--repo-root` string | [defaulted] The directory where the source git repository is available. Only used if `--commit` is used or defaulted in CI, see [docs](/integrations/ci_cd/#defaulted-kosli-command-flags-from-ci-variables) . (default ".") | | `--repo-url` string | [conditional] The URL of the repository. Must be a valid URL. All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | | `--repository` string | [conditional] The name of the repository (e.g. owner/repo-name). All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | diff --git a/client_reference/kosli_attest_generic.md b/client_reference/kosli_attest_generic.md index 2f96dde..c293f2f 100644 --- a/client_reference/kosli_attest_generic.md +++ b/client_reference/kosli_attest_generic.md @@ -46,7 +46,7 @@ In other CI systems, set them explicitly to capture repository metadata. | `--registry-password` string | [conditional] The container registry password or access token. Only required if you want to read container image SHA256 digest from a remote container registry and it is not already accessible via Docker/Podman auth files or a credential helper. | | `--registry-username` string | [conditional] The container registry username. Only required if you want to read container image SHA256 digest from a remote container registry and it is not already accessible via Docker/Podman auth files or a credential helper. | | `--repo-id` string | [conditional] The stable, unique identifier for the repository in your VCS provider (e.g. a numeric ID). Do not use the repository name as it can change if the repo is renamed. All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | -| `--repo-provider` string | [optional] The source code hosting provider. One of: github, gitlab, bitbucket, azure-devops (defaulted in some CIs: [docs](/integrations/ci_cd) ). | +| `--repo-provider` string | [optional] The source code hosting provider. One of: github, gitlab, bitbucket, bitbucket_cloud, bitbucket_dc, azure-devops, azure_devops_services, azure_devops_server, git, subversion (defaulted in some CIs: [docs](/integrations/ci_cd) ). | | `--repo-root` string | [defaulted] The directory where the source git repository is available. Only used if `--commit` is used or defaulted in CI, see [docs](/integrations/ci_cd/#defaulted-kosli-command-flags-from-ci-variables) . (default ".") | | `--repo-url` string | [conditional] The URL of the repository. Must be a valid URL. All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | | `--repository` string | [conditional] The name of the repository (e.g. owner/repo-name). All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | @@ -73,12 +73,12 @@ In other CI systems, set them explicitly to capture repository metadata. View an example of the `kosli attest generic` command in GitHub. - In [this YAML file](https://github.com/cyber-dojo/dashboard/blob/e4757683b74df7033c95aa544a7824b395c2f8bb/.github/workflows/main.yml#L197), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/dashboard-ci/trails/e4757683b74df7033c95aa544a7824b395c2f8bb?attestation_id=ede0b52b-d56e-474f-b04c-03e6be01). + In [this YAML file](https://github.com/cyber-dojo/dashboard/blob/5407827a19ff32c8d0e7ff2e8f18665e86e64f01/.github/workflows/main.yml#L197), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/dashboard-ci/trails/5407827a19ff32c8d0e7ff2e8f18665e86e64f01?attestation_id=97d16b29-608f-4a1c-a1ff-ac1da975). View an example of the `kosli attest generic` command in GitLab. - In [this YAML file](https://gitlab.com/cyber-dojo/creator/-/blob/65fd2bfa2478534ea4bc5ccf30f6bfc6aab7550c/.gitlab/workflows/main.yml#L131), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/creator-ci/trails/7e00b70f8911edf1c480ba9a8b9c2a280260cb08?attestation_id=4d3fc190-0a39-416a-9d54-e3d83a1e). + In [this YAML file](https://gitlab.com/cyber-dojo/creator/-/blob/65fd2bfa2478534ea4bc5ccf30f6bfc6aab7550c/.gitlab/workflows/main.yml#L131), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/creator-ci/trails/76672a8b247049c3ce8c3140852e17be8f47d995?attestation_id=6d5f489d-2e46-439e-808c-35a2495d). diff --git a/client_reference/kosli_attest_jira.md b/client_reference/kosli_attest_jira.md index 53c8410..607778f 100644 --- a/client_reference/kosli_attest_jira.md +++ b/client_reference/kosli_attest_jira.md @@ -94,7 +94,7 @@ In other CI systems, set them explicitly to capture repository metadata. | `--registry-password` string | [conditional] The container registry password or access token. Only required if you want to read container image SHA256 digest from a remote container registry and it is not already accessible via Docker/Podman auth files or a credential helper. | | `--registry-username` string | [conditional] The container registry username. Only required if you want to read container image SHA256 digest from a remote container registry and it is not already accessible via Docker/Podman auth files or a credential helper. | | `--repo-id` string | [conditional] The stable, unique identifier for the repository in your VCS provider (e.g. a numeric ID). Do not use the repository name as it can change if the repo is renamed. All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | -| `--repo-provider` string | [optional] The source code hosting provider. One of: github, gitlab, bitbucket, azure-devops (defaulted in some CIs: [docs](/integrations/ci_cd) ). | +| `--repo-provider` string | [optional] The source code hosting provider. One of: github, gitlab, bitbucket, bitbucket_cloud, bitbucket_dc, azure-devops, azure_devops_services, azure_devops_server, git, subversion (defaulted in some CIs: [docs](/integrations/ci_cd) ). | | `--repo-root` string | [defaulted] The directory where the source git repository is available. Only used if `--commit` is used or defaulted in CI, see [docs](/integrations/ci_cd/#defaulted-kosli-command-flags-from-ci-variables) . (default ".") | | `--repo-url` string | [conditional] The URL of the repository. Must be a valid URL. All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | | `--repository` string | [conditional] The name of the repository (e.g. owner/repo-name). All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | diff --git a/client_reference/kosli_attest_junit.md b/client_reference/kosli_attest_junit.md index 9447ab1..750610f 100644 --- a/client_reference/kosli_attest_junit.md +++ b/client_reference/kosli_attest_junit.md @@ -49,7 +49,7 @@ In other CI systems, set them explicitly to capture repository metadata. | `--registry-password` string | [conditional] The container registry password or access token. Only required if you want to read container image SHA256 digest from a remote container registry and it is not already accessible via Docker/Podman auth files or a credential helper. | | `--registry-username` string | [conditional] The container registry username. Only required if you want to read container image SHA256 digest from a remote container registry and it is not already accessible via Docker/Podman auth files or a credential helper. | | `--repo-id` string | [conditional] The stable, unique identifier for the repository in your VCS provider (e.g. a numeric ID). Do not use the repository name as it can change if the repo is renamed. All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | -| `--repo-provider` string | [optional] The source code hosting provider. One of: github, gitlab, bitbucket, azure-devops (defaulted in some CIs: [docs](/integrations/ci_cd) ). | +| `--repo-provider` string | [optional] The source code hosting provider. One of: github, gitlab, bitbucket, bitbucket_cloud, bitbucket_dc, azure-devops, azure_devops_services, azure_devops_server, git, subversion (defaulted in some CIs: [docs](/integrations/ci_cd) ). | | `--repo-root` string | [defaulted] The directory where the source git repository is available. Only used if `--commit` is used or defaulted in CI, see [docs](/integrations/ci_cd/#defaulted-kosli-command-flags-from-ci-variables) . (default ".") | | `--repo-url` string | [conditional] The URL of the repository. Must be a valid URL. All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | | `--repository` string | [conditional] The name of the repository (e.g. owner/repo-name). All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | @@ -78,12 +78,12 @@ In other CI systems, set them explicitly to capture repository metadata. View an example of the `kosli attest junit` command in GitHub. - In [this YAML file](https://github.com/cyber-dojo/differ/blob/8beff9901ac67acb7afcab3408106208571a1124/.github/workflows/main.yml#L101), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/differ-ci/trails/8beff9901ac67acb7afcab3408106208571a1124?attestation_id=e4fae551-b34d-45bf-87a6-3806c429). + In [this YAML file](https://github.com/cyber-dojo/differ/blob/335ddfa139708c37908dd594a0502bc6d88f8615/.github/workflows/main.yml#L101), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/differ-ci/trails/335ddfa139708c37908dd594a0502bc6d88f8615?attestation_id=1443d8a3-ca80-4d1e-9d7b-44ea1ef4). View an example of the `kosli attest junit` command in GitLab. - In [this YAML file](https://gitlab.com/cyber-dojo/creator/-/blob/65fd2bfa2478534ea4bc5ccf30f6bfc6aab7550c/.gitlab/workflows/main.yml#L126), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/creator-ci/trails/7e00b70f8911edf1c480ba9a8b9c2a280260cb08?attestation_id=7bfd7158-4b94-4037-96eb-f0fc0df5). + In [this YAML file](https://gitlab.com/cyber-dojo/creator/-/blob/65fd2bfa2478534ea4bc5ccf30f6bfc6aab7550c/.gitlab/workflows/main.yml#L126), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/creator-ci/trails/76672a8b247049c3ce8c3140852e17be8f47d995?attestation_id=9de8d7d0-5354-4420-885c-2cce808d). diff --git a/client_reference/kosli_attest_pullrequest_azure.md b/client_reference/kosli_attest_pullrequest_azure.md index 44e97cf..ac6eb28 100644 --- a/client_reference/kosli_attest_pullrequest_azure.md +++ b/client_reference/kosli_attest_pullrequest_azure.md @@ -43,7 +43,7 @@ The attestation can be bound to an *artifact* in two ways: | `--registry-password` string | [conditional] The container registry password or access token. Only required if you want to read container image SHA256 digest from a remote container registry and it is not already accessible via Docker/Podman auth files or a credential helper. | | `--registry-username` string | [conditional] The container registry username. Only required if you want to read container image SHA256 digest from a remote container registry and it is not already accessible via Docker/Podman auth files or a credential helper. | | `--repo-id` string | [conditional] The stable, unique identifier for the repository in your VCS provider (e.g. a numeric ID). Do not use the repository name as it can change if the repo is renamed. All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | -| `--repo-provider` string | [optional] The source code hosting provider. One of: github, gitlab, bitbucket, azure-devops (defaulted in some CIs: [docs](/integrations/ci_cd) ). | +| `--repo-provider` string | [optional] The source code hosting provider. One of: github, gitlab, bitbucket, bitbucket_cloud, bitbucket_dc, azure-devops, azure_devops_services, azure_devops_server, git, subversion (defaulted in some CIs: [docs](/integrations/ci_cd) ). | | `--repo-root` string | [defaulted] The directory where the source git repository is available. Only used if `--commit` is used or defaulted in CI, see [docs](/integrations/ci_cd/#defaulted-kosli-command-flags-from-ci-variables) . (default ".") | | `--repo-url` string | [conditional] The URL of the repository. Must be a valid URL. All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | | `--repository` string | [conditional] The name of the repository (e.g. owner/repo-name). All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | diff --git a/client_reference/kosli_attest_pullrequest_bitbucket.md b/client_reference/kosli_attest_pullrequest_bitbucket.md index 3c1cac0..0e831e5 100644 --- a/client_reference/kosli_attest_pullrequest_bitbucket.md +++ b/client_reference/kosli_attest_pullrequest_bitbucket.md @@ -11,7 +11,8 @@ kosli attest pullrequest bitbucket [IMAGE-NAME | FILE-PATH | DIR-PATH] [flags] Report a Bitbucket pull request attestation to an artifact or a trail in a Kosli flow. It checks if a pull request exists for a given merge commit and reports the pull-request attestation to Kosli. -Authentication to Bitbucket can be done with access token (recommended) or app passwords. Credentials need to have read access for both repos and pull requests. +Authentication to Bitbucket can be done with an access token (recommended) or an Atlassian API token, passed via --bitbucket-username (your Atlassian account email) and --bitbucket-password. +Bitbucket app passwords are no longer supported as of 28 July 2026; replace any app passwords with API tokens. Credentials need to have read access for both repos and pull requests. The attestation can be bound to a *trail* using the trail name. @@ -27,8 +28,8 @@ The attestation can be bound to an *artifact* in two ways: | `--assert` | [optional] Exit with non-zero code if no pull requests found for the given commit. | | `--attachments` strings | [optional] The comma-separated list of paths of attachments for the reported attestation. Attachments can be files or directories. All attachments are compressed and uploaded to Kosli's evidence vault. | | `--bitbucket-access-token` string | Bitbucket repo/project/workspace access token. See [Bitbucket access tokens](https://developer.atlassian.com/cloud/bitbucket/rest/intro/#access-tokens) for more details. | -| `--bitbucket-password` string | Bitbucket App password. See [Bitbucket authentication](https://developer.atlassian.com/cloud/bitbucket/rest/intro/#authentication) for more details. | -| `--bitbucket-username` string | Bitbucket username. Only needed if you use `--bitbucket-password` | +| `--bitbucket-password` string | Bitbucket API token. Bitbucket app passwords are no longer supported as of 28 July 2026. See [Bitbucket authentication](https://developer.atlassian.com/cloud/bitbucket/rest/intro/#authentication) for more details. | +| `--bitbucket-username` string | Bitbucket username (your Atlassian account email when using an API token). Only needed if you use `--bitbucket-password` | | `--bitbucket-workspace` string | Bitbucket workspace ID. | | `-g`, `--commit` string | the git merge commit to be checked for associated pull requests. | | `--description` string | [optional] attestation description | @@ -45,7 +46,7 @@ The attestation can be bound to an *artifact* in two ways: | `--registry-password` string | [conditional] The container registry password or access token. Only required if you want to read container image SHA256 digest from a remote container registry and it is not already accessible via Docker/Podman auth files or a credential helper. | | `--registry-username` string | [conditional] The container registry username. Only required if you want to read container image SHA256 digest from a remote container registry and it is not already accessible via Docker/Podman auth files or a credential helper. | | `--repo-id` string | [conditional] The stable, unique identifier for the repository in your VCS provider (e.g. a numeric ID). Do not use the repository name as it can change if the repo is renamed. All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | -| `--repo-provider` string | [optional] The source code hosting provider. One of: github, gitlab, bitbucket, azure-devops (defaulted in some CIs: [docs](/integrations/ci_cd) ). | +| `--repo-provider` string | [optional] The source code hosting provider. One of: github, gitlab, bitbucket, bitbucket_cloud, bitbucket_dc, azure-devops, azure_devops_services, azure_devops_server, git, subversion (defaulted in some CIs: [docs](/integrations/ci_cd) ). | | `--repo-root` string | [defaulted] The directory where the source git repository is available. Only used if `--commit` is used or defaulted in CI, see [docs](/integrations/ci_cd/#defaulted-kosli-command-flags-from-ci-variables) . (default ".") | | `--repo-url` string | [conditional] The URL of the repository. Must be a valid URL. All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | | `--repository` string | [conditional] The name of the repository (e.g. owner/repo-name). All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | diff --git a/client_reference/kosli_attest_pullrequest_github.md b/client_reference/kosli_attest_pullrequest_github.md index 711b800..9f0d982 100644 --- a/client_reference/kosli_attest_pullrequest_github.md +++ b/client_reference/kosli_attest_pullrequest_github.md @@ -43,7 +43,7 @@ The attestation can be bound to an *artifact* in two ways: | `--registry-password` string | [conditional] The container registry password or access token. Only required if you want to read container image SHA256 digest from a remote container registry and it is not already accessible via Docker/Podman auth files or a credential helper. | | `--registry-username` string | [conditional] The container registry username. Only required if you want to read container image SHA256 digest from a remote container registry and it is not already accessible via Docker/Podman auth files or a credential helper. | | `--repo-id` string | [conditional] The stable, unique identifier for the repository in your VCS provider (e.g. a numeric ID). Do not use the repository name as it can change if the repo is renamed. All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | -| `--repo-provider` string | [optional] The source code hosting provider. One of: github, gitlab, bitbucket, azure-devops (defaulted in some CIs: [docs](/integrations/ci_cd) ). | +| `--repo-provider` string | [optional] The source code hosting provider. One of: github, gitlab, bitbucket, bitbucket_cloud, bitbucket_dc, azure-devops, azure_devops_services, azure_devops_server, git, subversion (defaulted in some CIs: [docs](/integrations/ci_cd) ). | | `--repo-root` string | [defaulted] The directory where the source git repository is available. Only used if `--commit` is used or defaulted in CI, see [docs](/integrations/ci_cd/#defaulted-kosli-command-flags-from-ci-variables) . (default ".") | | `--repo-url` string | [conditional] The URL of the repository. Must be a valid URL. All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | | `--repository` string | [conditional] The name of the repository (e.g. owner/repo-name). All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | @@ -70,7 +70,7 @@ The attestation can be bound to an *artifact* in two ways: View an example of the `kosli attest pullrequest github` command in GitHub. - In [this YAML file](https://github.com/cyber-dojo/differ/blob/8beff9901ac67acb7afcab3408106208571a1124/.github/workflows/main.yml#L81), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/differ-ci/trails/8beff9901ac67acb7afcab3408106208571a1124?attestation_id=ed53f1a0-8172-4e74-8995-1c022475). + In [this YAML file](https://github.com/cyber-dojo/differ/blob/335ddfa139708c37908dd594a0502bc6d88f8615/.github/workflows/main.yml#L81), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/differ-ci/trails/335ddfa139708c37908dd594a0502bc6d88f8615?attestation_id=52c30440-4609-47c8-9110-cd8a0f99). diff --git a/client_reference/kosli_attest_pullrequest_gitlab.md b/client_reference/kosli_attest_pullrequest_gitlab.md index 43a3508..8ea0bf2 100644 --- a/client_reference/kosli_attest_pullrequest_gitlab.md +++ b/client_reference/kosli_attest_pullrequest_gitlab.md @@ -43,7 +43,7 @@ The attestation can be bound to an *artifact* in two ways: | `--registry-password` string | [conditional] The container registry password or access token. Only required if you want to read container image SHA256 digest from a remote container registry and it is not already accessible via Docker/Podman auth files or a credential helper. | | `--registry-username` string | [conditional] The container registry username. Only required if you want to read container image SHA256 digest from a remote container registry and it is not already accessible via Docker/Podman auth files or a credential helper. | | `--repo-id` string | [conditional] The stable, unique identifier for the repository in your VCS provider (e.g. a numeric ID). Do not use the repository name as it can change if the repo is renamed. All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | -| `--repo-provider` string | [optional] The source code hosting provider. One of: github, gitlab, bitbucket, azure-devops (defaulted in some CIs: [docs](/integrations/ci_cd) ). | +| `--repo-provider` string | [optional] The source code hosting provider. One of: github, gitlab, bitbucket, bitbucket_cloud, bitbucket_dc, azure-devops, azure_devops_services, azure_devops_server, git, subversion (defaulted in some CIs: [docs](/integrations/ci_cd) ). | | `--repo-root` string | [defaulted] The directory where the source git repository is available. Only used if `--commit` is used or defaulted in CI, see [docs](/integrations/ci_cd/#defaulted-kosli-command-flags-from-ci-variables) . (default ".") | | `--repo-url` string | [conditional] The URL of the repository. Must be a valid URL. All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | | `--repository` string | [conditional] The name of the repository (e.g. owner/repo-name). All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | @@ -70,7 +70,7 @@ The attestation can be bound to an *artifact* in two ways: View an example of the `kosli attest pullrequest gitlab` command in GitLab. - In [this YAML file](https://gitlab.com/cyber-dojo/creator/-/blob/65fd2bfa2478534ea4bc5ccf30f6bfc6aab7550c/.gitlab/workflows/main.yml#L75), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/creator-ci/trails/7e00b70f8911edf1c480ba9a8b9c2a280260cb08?attestation_id=d08ab062-2089-4c08-be94-b006fb70). + In [this YAML file](https://gitlab.com/cyber-dojo/creator/-/blob/65fd2bfa2478534ea4bc5ccf30f6bfc6aab7550c/.gitlab/workflows/main.yml#L75), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/creator-ci/trails/76672a8b247049c3ce8c3140852e17be8f47d995?attestation_id=9443b713-5f01-4baf-9f0b-7802a1c3). diff --git a/client_reference/kosli_attest_snyk.md b/client_reference/kosli_attest_snyk.md index d8600cc..d234a43 100644 --- a/client_reference/kosli_attest_snyk.md +++ b/client_reference/kosli_attest_snyk.md @@ -53,7 +53,7 @@ In other CI systems, set them explicitly to capture repository metadata. | `--registry-password` string | [conditional] The container registry password or access token. Only required if you want to read container image SHA256 digest from a remote container registry and it is not already accessible via Docker/Podman auth files or a credential helper. | | `--registry-username` string | [conditional] The container registry username. Only required if you want to read container image SHA256 digest from a remote container registry and it is not already accessible via Docker/Podman auth files or a credential helper. | | `--repo-id` string | [conditional] The stable, unique identifier for the repository in your VCS provider (e.g. a numeric ID). Do not use the repository name as it can change if the repo is renamed. All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | -| `--repo-provider` string | [optional] The source code hosting provider. One of: github, gitlab, bitbucket, azure-devops (defaulted in some CIs: [docs](/integrations/ci_cd) ). | +| `--repo-provider` string | [optional] The source code hosting provider. One of: github, gitlab, bitbucket, bitbucket_cloud, bitbucket_dc, azure-devops, azure_devops_services, azure_devops_server, git, subversion (defaulted in some CIs: [docs](/integrations/ci_cd) ). | | `--repo-root` string | [defaulted] The directory where the source git repository is available. Only used if `--commit` is used or defaulted in CI, see [docs](/integrations/ci_cd/#defaulted-kosli-command-flags-from-ci-variables) . (default ".") | | `--repo-url` string | [conditional] The URL of the repository. Must be a valid URL. All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | | `--repository` string | [conditional] The name of the repository (e.g. owner/repo-name). All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | diff --git a/client_reference/kosli_attest_sonar.md b/client_reference/kosli_attest_sonar.md index 2d48ad2..9228c71 100644 --- a/client_reference/kosli_attest_sonar.md +++ b/client_reference/kosli_attest_sonar.md @@ -65,7 +65,7 @@ The attestation can be bound to an *artifact* in two ways: | `--registry-password` string | [conditional] The container registry password or access token. Only required if you want to read container image SHA256 digest from a remote container registry and it is not already accessible via Docker/Podman auth files or a credential helper. | | `--registry-username` string | [conditional] The container registry username. Only required if you want to read container image SHA256 digest from a remote container registry and it is not already accessible via Docker/Podman auth files or a credential helper. | | `--repo-id` string | [conditional] The stable, unique identifier for the repository in your VCS provider (e.g. a numeric ID). Do not use the repository name as it can change if the repo is renamed. All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | -| `--repo-provider` string | [optional] The source code hosting provider. One of: github, gitlab, bitbucket, azure-devops (defaulted in some CIs: [docs](/integrations/ci_cd) ). | +| `--repo-provider` string | [optional] The source code hosting provider. One of: github, gitlab, bitbucket, bitbucket_cloud, bitbucket_dc, azure-devops, azure_devops_services, azure_devops_server, git, subversion (defaulted in some CIs: [docs](/integrations/ci_cd) ). | | `--repo-root` string | [defaulted] The directory where the source git repository is available. Only used if `--commit` is used or defaulted in CI, see [docs](/integrations/ci_cd/#defaulted-kosli-command-flags-from-ci-variables) . (default ".") | | `--repo-url` string | [conditional] The URL of the repository. Must be a valid URL. All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | | `--repository` string | [conditional] The name of the repository (e.g. owner/repo-name). All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | @@ -98,7 +98,7 @@ The attestation can be bound to an *artifact* in two ways: View an example of the `kosli attest sonar` command in GitHub. - In [this YAML file](https://github.com/cyber-dojo/dashboard/blob/e4757683b74df7033c95aa544a7824b395c2f8bb/.github/workflows/main.yml#L122), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/dashboard-ci/trails/e4757683b74df7033c95aa544a7824b395c2f8bb?attestation_id=c955d971-4600-4b45-950f-cd8b3642). + In [this YAML file](https://github.com/cyber-dojo/dashboard/blob/5407827a19ff32c8d0e7ff2e8f18665e86e64f01/.github/workflows/main.yml#L122), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/dashboard-ci/trails/5407827a19ff32c8d0e7ff2e8f18665e86e64f01?attestation_id=0d92e922-decb-44cd-a7ff-4afba4c4). diff --git a/client_reference/kosli_begin_trail.md b/client_reference/kosli_begin_trail.md index 2663179..54cfdc3 100644 --- a/client_reference/kosli_begin_trail.md +++ b/client_reference/kosli_begin_trail.md @@ -33,7 +33,7 @@ In other CI systems, set them explicitly to capture repository metadata. | `-o`, `--origin-url` string | [optional] The url pointing to where the attestation came from or is related. (defaulted to the CI url in some CIs: [docs](/integrations/ci_cd/#defaulted-kosli-command-flags-from-ci-variables) ). | | `--redact-commit-info` strings | [optional] The list of commit info to be redacted before sending to Kosli. Allowed values are one or more of [author, message, branch]. | | `--repo-id` string | [conditional] The stable, unique identifier for the repository in your VCS provider (e.g. a numeric ID). Do not use the repository name as it can change if the repo is renamed. All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | -| `--repo-provider` string | [optional] The source code hosting provider. One of: github, gitlab, bitbucket, azure-devops (defaulted in some CIs: [docs](/integrations/ci_cd) ). | +| `--repo-provider` string | [optional] The source code hosting provider. One of: github, gitlab, bitbucket, bitbucket_cloud, bitbucket_dc, azure-devops, azure_devops_services, azure_devops_server, git, subversion (defaulted in some CIs: [docs](/integrations/ci_cd) ). | | `--repo-root` string | [defaulted] The directory where the source git repository is available. Only used if `--commit` is used or defaulted in CI, see [docs](/integrations/ci_cd/#defaulted-kosli-command-flags-from-ci-variables) . (default ".") | | `--repo-url` string | [conditional] The URL of the repository. Must be a valid URL. All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | | `--repository` string | [conditional] The name of the repository (e.g. owner/repo-name). All three of `--repo-id`, `--repo-url` and `--repository` must be set to record repository information (defaulted in some CIs: [docs](/integrations/ci_cd) ). | @@ -65,7 +65,7 @@ In other CI systems, set them explicitly to capture repository metadata. View an example of the `kosli begin trail` command in GitLab. - In [this YAML file](https://gitlab.com/cyber-dojo/creator/-/blob/65fd2bfa2478534ea4bc5ccf30f6bfc6aab7550c/.gitlab/workflows/main.yml#L55), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/creator-ci/trails/7e00b70f8911edf1c480ba9a8b9c2a280260cb08?attestation_id=1). + In [this YAML file](https://gitlab.com/cyber-dojo/creator/-/blob/65fd2bfa2478534ea4bc5ccf30f6bfc6aab7550c/.gitlab/workflows/main.yml#L55), which created [this Kosli Event](https://app.kosli.com/cyber-dojo/flows/creator-ci/trails/76672a8b247049c3ce8c3140852e17be8f47d995?attestation_id=1). diff --git a/client_reference/kosli_diff_snapshots.md b/client_reference/kosli_diff_snapshots.md index 1861f73..e21b264 100644 --- a/client_reference/kosli_diff_snapshots.md +++ b/client_reference/kosli_diff_snapshots.md @@ -66,75 +66,76 @@ kosli diff snapshots aws-beta aws-prod --output=json ```json { "snappish1": { - "snapshot_id": "aws-beta#7702", + "snapshot_id": "aws-beta#7781", "artifacts": [ { - "fingerprint": "6677d3b6cd162d7888981232e9fcbb6fca2c04307fa1838eaaece489a393de39", - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:946e5c3@sha256:6677d3b6cd162d7888981232e9fcbb6fca2c04307fa1838eaaece489a393de39", - "most_recent_timestamp": 1783674435, - "flow": "creator-ci", - "commit_url": "https://github.com/cyber-dojo/creator/commit/946e5c370f39ca436cf1d3e2016ceef220af2b43", - "instance_count": 1 + "fingerprint": "21c27c255c0ed91aa9c3aeb98786cf28a0840fd7324dcfae5474970e6f134ad3", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:7e84b09@sha256:21c27c255c0ed91aa9c3aeb98786cf28a0840fd7324dcfae5474970e6f134ad3", + "most_recent_timestamp": 1784312732, + "flow": "runner-ci", + "commit_url": "https://github.com/cyber-dojo/runner/commit/7e84b0929df3f8d90932b0c8c11bc806dfa5603f", + "instance_count": 3 }, { - "fingerprint": "add714273f53b1fca369e9ce43b59b28b2e38e6fc283ae1ff2056ebb13c6a792", - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:80473e8@sha256:add714273f53b1fca369e9ce43b59b28b2e38e6fc283ae1ff2056ebb13c6a792", - "most_recent_timestamp": 1783672438, - "flow": "dashboard-ci", - "commit_url": "https://github.com/cyber-dojo/dashboard/commit/80473e87329962dd1924b51d541620c15d68658b", - "instance_count": 1 + "fingerprint": "278a29bc232ce0294ce46cd08bb3f3a28ce53ddc14e588e00f67f6a93173b916", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:3aaa3a7@sha256:278a29bc232ce0294ce46cd08bb3f3a28ce53ddc14e588e00f67f6a93173b916", + "most_recent_timestamp": 1784445403, + "flow": "web-ci", + "commit_url": "https://github.com/cyber-dojo/web/commit/3aaa3a73514a94581455ff65cbc835501dce1090", + "instance_count": 3 }, { - "fingerprint": "c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:335ddfa@sha256:c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", - "most_recent_timestamp": 1783761398, - "flow": "differ-ci", - "commit_url": "https://github.com/cyber-dojo/differ/commit/335ddfa139708c37908dd594a0502bc6d88f8615", + "fingerprint": "8e965dda26af2d2e68032c25d68e792c85e0c7bd9814862de231bc4c6e935b81", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:790d86b@sha256:8e965dda26af2d2e68032c25d68e792c85e0c7bd9814862de231bc4c6e935b81", + "most_recent_timestamp": 1784312340, + "flow": "custom-start-points-ci", + "commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/790d86b66f4d86ab47f5c521daf5039dc8aeef4d", "instance_count": 1 - } - ] - }, - "snappish2": { - "snapshot_id": "aws-prod#5007", - "artifacts": [ + }, { - "fingerprint": "0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:7e00b70@sha256:0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", - "most_recent_timestamp": 1783618467, - "flow": "creator-ci", - "commit_url": "https://github.com/cyber-dojo/creator/commit/7e00b70f8911edf1c480ba9a8b9c2a280260cb08", + "fingerprint": "b1ee961719fe5dabc18f85450c26719c67a4f9ac3959ba836465ceb14bc67e7b", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:6a7f7be@sha256:b1ee961719fe5dabc18f85450c26719c67a4f9ac3959ba836465ceb14bc67e7b", + "most_recent_timestamp": 1784312582, + "flow": "languages-start-points-ci", + "commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/6a7f7be81022f7ed3fa8383f016b55af86e2af23", "instance_count": 1 }, { - "fingerprint": "54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:e475768@sha256:54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", - "most_recent_timestamp": 1783618197, - "flow": "dashboard-ci", - "commit_url": "https://github.com/cyber-dojo/dashboard/commit/e4757683b74df7033c95aa544a7824b395c2f8bb", + "fingerprint": "c4b92203ca7a794dc2a1e30b3f4f611e6ce22d60dfdfb7684e2c0e276cf36053", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:a2e4638@sha256:c4b92203ca7a794dc2a1e30b3f4f611e6ce22d60dfdfb7684e2c0e276cf36053", + "most_recent_timestamp": 1784312525, + "flow": "nginx-ci", + "commit_url": "https://github.com/cyber-dojo/nginx/commit/a2e4638aaa102446b8a6d1d519c5bc007e24f087", "instance_count": 1 }, { - "fingerprint": "7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:8beff99@sha256:7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", - "most_recent_timestamp": 1783618126, + "fingerprint": "c6c87ec582111b0e0da745ca18867d57fd042c4ce961c8494e4d6a89b4543d12", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:1b7ea87@sha256:c6c87ec582111b0e0da745ca18867d57fd042c4ce961c8494e4d6a89b4543d12", + "most_recent_timestamp": 1784312477, "flow": "differ-ci", - "commit_url": "https://github.com/cyber-dojo/differ/commit/8beff9901ac67acb7afcab3408106208571a1124", + "commit_url": "https://github.com/cyber-dojo/differ/commit/1b7ea87a174a1a290600b469dc1029ec4c974320", + "instance_count": 1 + }, + { + "fingerprint": "c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:258b6d0@sha256:c7b7fd69d904329f9264e111bd3dc63cf98724cce567bae719e79a171e6925ea", + "most_recent_timestamp": 1784312473, + "flow": "exercises-start-points-ci", + "commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/258b6d07d2b28ad5cb2ce6d29934997f72380f1a", "instance_count": 1 } ] }, - "changed": { - "artifacts": [] - }, - "not-changed": { + "snappish2": { + "snapshot_id": "aws-prod#5062", "artifacts": [ { - "fingerprint": "0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:9b711df@sha256:0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", - "most_recent_timestamp": 1783618458, - "flow": "nginx-ci", - "commit_url": "https://github.com/cyber-dojo/nginx/commit/9b711df71c76a1f293c2525ace65778036591baf", - "instance_count": 1 + "fingerprint": "0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:3f0b997@sha256:0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", + "most_recent_timestamp": 1784352892, + "flow": "web-ci", + "commit_url": "https://github.com/cyber-dojo/web/commit/3f0b9975f96b7f4e4aae0b4409cebda3209be164", + "instance_count": 3 }, { "fingerprint": "1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", @@ -145,11 +146,11 @@ kosli diff snapshots aws-beta aws-prod --output=json "instance_count": 1 }, { - "fingerprint": "48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:e59370c@sha256:48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", - "most_recent_timestamp": 1783853016, - "flow": "saver-ci", - "commit_url": "https://github.com/cyber-dojo/saver/commit/e59370cc9a235dec909ef1f8467d4cd6fb923ae8", + "fingerprint": "3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:7ba8029@sha256:3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5", + "most_recent_timestamp": 1784183551, + "flow": "nginx-ci", + "commit_url": "https://github.com/cyber-dojo/nginx/commit/7ba8029e0cb5d4c8fa51360f59b5cb8714a60d47", "instance_count": 1 }, { @@ -160,6 +161,14 @@ kosli diff snapshots aws-beta aws-prod --output=json "commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/804f248d832dc34e564507b009c246dfb4f0c657", "instance_count": 1 }, + { + "fingerprint": "c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:335ddfa@sha256:c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", + "most_recent_timestamp": 1784184597, + "flow": "differ-ci", + "commit_url": "https://github.com/cyber-dojo/differ/commit/335ddfa139708c37908dd594a0502bc6d88f8615", + "instance_count": 1 + }, { "fingerprint": "cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:88b7eea@sha256:cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", @@ -168,14 +177,6 @@ kosli diff snapshots aws-beta aws-prod --output=json "commit_url": "https://github.com/cyber-dojo/runner/commit/88b7eeacb488a5117ac568408363ac59a146f41a", "instance_count": 3 }, - { - "fingerprint": "f1b2a1723fee8d534e5a50f2ec83854b23e770aa57dea0479870dc308a948459", - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:5195398@sha256:f1b2a1723fee8d534e5a50f2ec83854b23e770aa57dea0479870dc308a948459", - "most_recent_timestamp": 1784014184, - "flow": "web-ci", - "commit_url": "https://github.com/cyber-dojo/web/commit/51953982aab0dae2f7ff684ebb4a76e5c132e777", - "instance_count": 3 - }, { "fingerprint": "f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:c6db342@sha256:f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", @@ -185,6 +186,37 @@ kosli diff snapshots aws-beta aws-prod --output=json "instance_count": 1 } ] + }, + "changed": { + "artifacts": [] + }, + "not-changed": { + "artifacts": [ + { + "fingerprint": "aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:76672a8@sha256:aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", + "most_recent_timestamp": 1784357070, + "flow": "creator-ci", + "commit_url": "https://github.com/cyber-dojo/creator/commit/76672a8b247049c3ce8c3140852e17be8f47d995", + "instance_count": 1 + }, + { + "fingerprint": "d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:5407827@sha256:d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", + "most_recent_timestamp": 1784355921, + "flow": "dashboard-ci", + "commit_url": "https://github.com/cyber-dojo/dashboard/commit/5407827a19ff32c8d0e7ff2e8f18665e86e64f01", + "instance_count": 1 + }, + { + "fingerprint": "fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:f4bb341@sha256:fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", + "most_recent_timestamp": 1784443888, + "flow": "saver-ci", + "commit_url": "https://github.com/cyber-dojo/saver/commit/f4bb3412725258648a7cf5ce1a776609b4dade72", + "instance_count": 1 + } + ] } } ``` diff --git a/client_reference/kosli_get_environment.md b/client_reference/kosli_get_environment.md index f2619e3..30c05b9 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": 1784045038.4784424, - "last_reported_at": 1784045038.4784424, - "last_changed_at": 1784014258.5595071, + "last_modified_at": 1784625778.4536238, + "last_reported_at": 1784625778.4536238, + "last_changed_at": 1784609878.4986525, "state": true, "include_scaling": false, "tags": { diff --git a/client_reference/kosli_get_snapshot.md b/client_reference/kosli_get_snapshot.md index 6e7f680..7b4a65f 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": 5007, + "index": 5062, "is_latest": true, "next_snapshot_timestamp": null, "artifact_compliance_count": { @@ -72,590 +72,13 @@ kosli get snapshot aws-prod --output=json "false": 0, "null": 0 }, - "timestamp": 1784014258.5595071, + "timestamp": 1784609878.4986525, "type": "ECS", "compliant": true, - "html_url": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5007", + "html_url": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5062", "artifacts": [ { - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:5195398@sha256:f1b2a1723fee8d534e5a50f2ec83854b23e770aa57dea0479870dc308a948459", - "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": "51953982aab0dae2f7ff684ebb4a76e5c132e777", - "artifact_status": null - } - }, - { - "type": "rule_not_applicable", - "context": { - "flow_name": "production-promotion", - "trail_name": "promotion-one-122", - "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": "51953982aab0dae2f7ff684ebb4a76e5c132e777", - "artifact_status": "COMPLIANT" - } - }, - { - "type": "rule_not_applicable", - "context": { - "flow_name": "production-promotion", - "trail_name": "promotion-one-122", - "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": "51953982aab0dae2f7ff684ebb4a76e5c132e777", - "artifact_status": null - } - }, - { - "type": "rule_not_applicable", - "context": { - "flow_name": "production-promotion", - "trail_name": "promotion-one-122", - "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": "51953982aab0dae2f7ff684ebb4a76e5c132e777", - "artifact_status": null - } - }, - { - "type": "rule_satisfied", - "context": { - "flow_name": "production-promotion", - "trail_name": "promotion-one-122", - "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": "51953982aab0dae2f7ff684ebb4a76e5c132e777", - "artifact_status": "COMPLIANT" - } - }, - { - "type": "rule_not_applicable", - "context": { - "flow_name": "production-promotion", - "trail_name": "promotion-one-122", - "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": "51953982aab0dae2f7ff684ebb4a76e5c132e777", - "artifact_status": null, - "for_control": "SDLC-CTRL-0002" - } - }, - { - "type": "rule_not_applicable", - "context": { - "flow_name": "production-promotion", - "trail_name": "promotion-one-122", - "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": "51953982aab0dae2f7ff684ebb4a76e5c132e777", - "artifact_status": null - } - }, - { - "type": "rule_not_applicable", - "context": { - "flow_name": "production-promotion", - "trail_name": "promotion-one-122", - "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": "51953982aab0dae2f7ff684ebb4a76e5c132e777", - "artifact_status": "COMPLIANT" - } - }, - { - "type": "rule_not_applicable", - "context": { - "flow_name": "production-promotion", - "trail_name": "promotion-one-122", - "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": null, - "ignored": true, - "resolutions": [ - { - "type": "rule_not_applicable", - "context": { - "flow_name": "web-ci", - "trail_name": "51953982aab0dae2f7ff684ebb4a76e5c132e777", - "artifact_status": null, - "for_control": "SDLC-CTRL-0022" - } - }, - { - "type": "rule_not_applicable", - "context": { - "flow_name": "production-promotion", - "trail_name": "promotion-one-122", - "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": "51953982aab0dae2f7ff684ebb4a76e5c132e777", - "artifact_status": null - } - }, - { - "type": "rule_not_applicable", - "context": { - "flow_name": "production-promotion", - "trail_name": "promotion-one-122", - "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": "51953982aab0dae2f7ff684ebb4a76e5c132e777", - "artifact_status": "COMPLIANT" - } - }, - { - "type": "rule_not_applicable", - "context": { - "flow_name": "production-promotion", - "trail_name": "promotion-one-122", - "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": "51953982aab0dae2f7ff684ebb4a76e5c132e777", - "artifact_status": null - } - }, - { - "type": "rule_satisfied", - "context": { - "flow_name": "production-promotion", - "trail_name": "promotion-one-122", - "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": "51953982aab0dae2f7ff684ebb4a76e5c132e777", - "artifact_status": null - } - }, - { - "type": "rule_not_applicable", - "context": { - "flow_name": "production-promotion", - "trail_name": "promotion-one-122", - "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": "51953982aab0dae2f7ff684ebb4a76e5c132e777", - "artifact_status": "COMPLIANT" - } - }, - { - "type": "rule_satisfied", - "context": { - "flow_name": "production-promotion", - "trail_name": "promotion-one-122", - "artifact_status": "COMPLIANT" - } - } - ] - } - ], - "policy_name": "trail-compliance-aws-prod" - } - ], - "reasons_for_incompliance": [], - "fingerprint": "f1b2a1723fee8d534e5a50f2ec83854b23e770aa57dea0479870dc308a948459", - "creationTimestamp": [ - 1784014182, - 1784014183, - 1784014184 - ], - "pods": null, - "annotation": { - "type": "unchanged", - "was": 3, - "now": 3 - }, - "flow_name": "web-ci", - "git_commit": "51953982aab0dae2f7ff684ebb4a76e5c132e777", - "commit_url": "https://github.com/cyber-dojo/web/commit/51953982aab0dae2f7ff684ebb4a76e5c132e777", - "html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci/artifacts/f1b2a1723fee8d534e5a50f2ec83854b23e770aa57dea0479870dc308a948459?artifact_id=231d4126-b8bb-4db6-80e9-77922477", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci", - "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/web/compare/8d345854efbb1063d7546ef988dd771ed5445116...51953982aab0dae2f7ff684ebb4a76e5c132e777", - "previous_git_commit": "8d345854efbb1063d7546ef988dd771ed5445116", - "previous_fingerprint": "99da6bff005f90bf23d728dc2c7cfd65f0e251772b246766955fd3dc209dbb6f", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:8d34585@sha256:99da6bff005f90bf23d728dc2c7cfd65f0e251772b246766955fd3dc209dbb6f", - "previous_artifact_compliance_state": "COMPLIANT", - "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/web/commit/8d345854efbb1063d7546ef988dd771ed5445116", - "previous_trail_name": "8d345854efbb1063d7546ef988dd771ed5445116", - "previous_template_reference_name": "web" - }, - "commit_lead_time": 1243.0, - "flows": [ - { - "flow_name": "web-ci", - "trail_name": "51953982aab0dae2f7ff684ebb4a76e5c132e777", - "template_reference_name": "web", - "git_commit": "51953982aab0dae2f7ff684ebb4a76e5c132e777", - "commit_url": "https://github.com/cyber-dojo/web/commit/51953982aab0dae2f7ff684ebb4a76e5c132e777", - "git_commit_info": { - "sha1": "51953982aab0dae2f7ff684ebb4a76e5c132e777", - "message": "Fix false \"mobbing?\" dialog for a solo user on an unshared kata (#381)\n\nThe \"mobbing?\" dialog is meant to fire only when two or more laptops\n share a kata-id and their [test] submissions interfere. But a single\n user working alone could trigger it too.\n\n Cause: an inter-test file event (create/delete/rename/edit) posts at the\n browser's current index and advances it only from the response. Its fetch\n aborted after 2s, so a slow-but-successful save committed on the server\n while the browser never applied the returned index. The browser's index\n was now behind the committed head, and the next [test] sent that stale\n index, which the saver rejects as an \"Out of order event\" and the browser\n renders as \"mobbing?\". nginx rate-limiting was ruled out: a 429 is\n rejected before it reaches the saver, so it never commits and never\n desyncs the index.\n\n Fix (web only; saver and the index contract are unchanged):\n - Add GET /kata/next_index/:id returning last_committed_index + 1, the\n authoritative index a browser resyncs to.\n - On a lost/failed inter-test response, resync the browser index from\n that endpoint instead of silently leaving it stale (and drop the\n misleading \"rate-limited\" log). Degrades safely if the endpoint is\n absent (eg an older web instance mid-deploy): it 404s, resync no-ops,\n index unchanged.\n - Hold the in-progress flag for every inter-test event, not just\n file_edit, so a following [test] waits behind an in-flight file op.\n - Raise the inter-test abort 2s -> 30s (matching [test]); the 2s was not\n guarding any rate limiter and was the main trigger for abandoning a\n commit that actually landed.\n\n The additive route and graceful client fallback keep a mid-session deploy\n safe: every old/new browser-vs-server combination is either fixed or the\n prior behavior, never worse.\n\n Adds a dedicated endpoint test and a lost-event recovery test.", - "author": "Jon Jagger ", - "branch": "", - "timestamp": 1784012939.0, - "url": "https://github.com/cyber-dojo/web/commit/51953982aab0dae2f7ff684ebb4a76e5c132e777" - }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci/artifacts/f1b2a1723fee8d534e5a50f2ec83854b23e770aa57dea0479870dc308a948459?artifact_id=231d4126-b8bb-4db6-80e9-77922477", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci", - "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/web/compare/8d345854efbb1063d7546ef988dd771ed5445116...51953982aab0dae2f7ff684ebb4a76e5c132e777", - "previous_git_commit": "8d345854efbb1063d7546ef988dd771ed5445116", - "previous_fingerprint": "99da6bff005f90bf23d728dc2c7cfd65f0e251772b246766955fd3dc209dbb6f", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:8d34585@sha256:99da6bff005f90bf23d728dc2c7cfd65f0e251772b246766955fd3dc209dbb6f", - "previous_artifact_compliance_state": "COMPLIANT", - "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/web/commit/8d345854efbb1063d7546ef988dd771ed5445116", - "previous_trail_name": "8d345854efbb1063d7546ef988dd771ed5445116", - "previous_template_reference_name": "web" - }, - "commit_lead_time": 1243.0, - "artifact_compliance_in_flow": true, - "flow_reasons_for_non_compliance": [] - }, - { - "flow_name": "production-promotion", - "trail_name": "promotion-one-122", - "template_reference_name": "web", - "git_commit": "76325d840dc66e1c84743725e17de05a16616419", - "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/76325d840dc66e1c84743725e17de05a16616419", - "git_commit_info": { - "sha1": "76325d840dc66e1c84743725e17de05a16616419", - "message": "Add emoji prefix to workflow names", - "author": "JonJagger ", - "branch": "main", - "timestamp": 1783852701.0, - "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/76325d840dc66e1c84743725e17de05a16616419" - }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/f1b2a1723fee8d534e5a50f2ec83854b23e770aa57dea0479870dc308a948459?artifact_id=9e0d50c1-0d9b-4b26-8c48-b9f72d24", - "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...76325d840dc66e1c84743725e17de05a16616419", - "previous_git_commit": "d7e31ce0207b766140ae689f38625da4374acf87", - "previous_fingerprint": "99da6bff005f90bf23d728dc2c7cfd65f0e251772b246766955fd3dc209dbb6f", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:8d34585@sha256:99da6bff005f90bf23d728dc2c7cfd65f0e251772b246766955fd3dc209dbb6f", - "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": "web" - }, - "commit_lead_time": 161481.0, - "artifact_compliance_in_flow": true, - "flow_reasons_for_non_compliance": [] - } - ], - "ecs_context": { - "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/eae2542c20df45a68733ec5cf1e2125a", - "cluster_name": null, - "service_name": null - } - }, - { - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:e59370c@sha256:48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:88b7eea@sha256:cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", "compliant": true, "deployments": [], "policy_decisions": [ @@ -677,8 +100,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "saver-ci", - "trail_name": "e59370cc9a235dec909ef1f8467d4cd6fb923ae8", + "flow_name": "runner-ci", + "trail_name": "88b7eeacb488a5117ac568408363ac59a146f41a", "artifact_status": null } }, @@ -686,23 +109,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-121", + "trail_name": "promotion-one-120", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", "artifact_status": null } } @@ -722,8 +145,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "saver-ci", - "trail_name": "e59370cc9a235dec909ef1f8467d4cd6fb923ae8", + "flow_name": "runner-ci", + "trail_name": "88b7eeacb488a5117ac568408363ac59a146f41a", "artifact_status": "COMPLIANT" } }, @@ -731,23 +154,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-121", + "trail_name": "promotion-one-120", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", "artifact_status": "COMPLIANT" } } @@ -772,8 +195,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "saver-ci", - "trail_name": "e59370cc9a235dec909ef1f8467d4cd6fb923ae8", + "flow_name": "runner-ci", + "trail_name": "88b7eeacb488a5117ac568408363ac59a146f41a", "artifact_status": null } }, @@ -781,23 +204,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-121", + "trail_name": "promotion-one-120", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", "artifact_status": null } } @@ -824,8 +247,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "saver-ci", - "trail_name": "e59370cc9a235dec909ef1f8467d4cd6fb923ae8", + "flow_name": "runner-ci", + "trail_name": "88b7eeacb488a5117ac568408363ac59a146f41a", "artifact_status": null } }, @@ -833,23 +256,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-121", + "trail_name": "promotion-one-120", "artifact_status": null } }, { "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", "artifact_status": null } }, { "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", "artifact_status": null } } @@ -869,8 +292,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "saver-ci", - "trail_name": "e59370cc9a235dec909ef1f8467d4cd6fb923ae8", + "flow_name": "runner-ci", + "trail_name": "88b7eeacb488a5117ac568408363ac59a146f41a", "artifact_status": "COMPLIANT" } }, @@ -878,23 +301,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-121", + "trail_name": "promotion-one-120", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", "artifact_status": "COMPLIANT" } } @@ -919,8 +342,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "saver-ci", - "trail_name": "e59370cc9a235dec909ef1f8467d4cd6fb923ae8", + "flow_name": "runner-ci", + "trail_name": "88b7eeacb488a5117ac568408363ac59a146f41a", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -929,7 +352,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-121", + "trail_name": "promotion-one-120", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -937,8 +360,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -946,8 +369,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -975,8 +398,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "saver-ci", - "trail_name": "e59370cc9a235dec909ef1f8467d4cd6fb923ae8", + "flow_name": "runner-ci", + "trail_name": "88b7eeacb488a5117ac568408363ac59a146f41a", "artifact_status": null } }, @@ -984,23 +407,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-121", + "trail_name": "promotion-one-120", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", "artifact_status": null } } @@ -1020,8 +443,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "saver-ci", - "trail_name": "e59370cc9a235dec909ef1f8467d4cd6fb923ae8", + "flow_name": "runner-ci", + "trail_name": "88b7eeacb488a5117ac568408363ac59a146f41a", "artifact_status": "COMPLIANT" } }, @@ -1029,23 +452,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-121", + "trail_name": "promotion-one-120", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", "artifact_status": "COMPLIANT" } } @@ -1070,8 +493,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "saver-ci", - "trail_name": "e59370cc9a235dec909ef1f8467d4cd6fb923ae8", + "flow_name": "runner-ci", + "trail_name": "88b7eeacb488a5117ac568408363ac59a146f41a", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -1080,25 +503,25 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-121", + "trail_name": "promotion-one-120", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } }, { - "type": "rule_satisfied", + "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } }, { - "type": "rule_not_applicable", + "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -1126,8 +549,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "saver-ci", - "trail_name": "e59370cc9a235dec909ef1f8467d4cd6fb923ae8", + "flow_name": "runner-ci", + "trail_name": "88b7eeacb488a5117ac568408363ac59a146f41a", "artifact_status": null } }, @@ -1135,23 +558,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-121", + "trail_name": "promotion-one-120", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", "artifact_status": null } } @@ -1171,8 +594,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "saver-ci", - "trail_name": "e59370cc9a235dec909ef1f8467d4cd6fb923ae8", + "flow_name": "runner-ci", + "trail_name": "88b7eeacb488a5117ac568408363ac59a146f41a", "artifact_status": "COMPLIANT" } }, @@ -1180,23 +603,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-121", + "trail_name": "promotion-one-120", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", "artifact_status": "COMPLIANT" } } @@ -1221,8 +644,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "saver-ci", - "trail_name": "e59370cc9a235dec909ef1f8467d4cd6fb923ae8", + "flow_name": "runner-ci", + "trail_name": "88b7eeacb488a5117ac568408363ac59a146f41a", "artifact_status": null } }, @@ -1230,23 +653,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-121", + "trail_name": "promotion-one-120", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", "artifact_status": null } } @@ -1273,8 +696,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "saver-ci", - "trail_name": "e59370cc9a235dec909ef1f8467d4cd6fb923ae8", + "flow_name": "runner-ci", + "trail_name": "88b7eeacb488a5117ac568408363ac59a146f41a", "artifact_status": null } }, @@ -1282,23 +705,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-121", + "trail_name": "promotion-one-120", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", "artifact_status": null } } @@ -1324,8 +747,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "saver-ci", - "trail_name": "e59370cc9a235dec909ef1f8467d4cd6fb923ae8", + "flow_name": "runner-ci", + "trail_name": "88b7eeacb488a5117ac568408363ac59a146f41a", "artifact_status": "COMPLIANT" } }, @@ -1333,23 +756,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-121", + "trail_name": "promotion-one-120", "artifact_status": "COMPLIANT" } }, { - "type": "rule_satisfied", + "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", "artifact_status": "COMPLIANT" } }, { - "type": "rule_not_applicable", + "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", "artifact_status": "COMPLIANT" } } @@ -1360,100 +783,102 @@ kosli get snapshot aws-prod --output=json } ], "reasons_for_incompliance": [], - "fingerprint": "48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", + "fingerprint": "cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", "creationTimestamp": [ - 1783853016 + 1783757709, + 1783757715, + 1783757716 ], "pods": null, "annotation": { - "type": "unchanged", - "was": 1, - "now": 1 + "type": "changed", + "was": 3, + "now": 3 }, - "flow_name": "saver-ci", - "git_commit": "e59370cc9a235dec909ef1f8467d4cd6fb923ae8", - "commit_url": "https://github.com/cyber-dojo/saver/commit/e59370cc9a235dec909ef1f8467d4cd6fb923ae8", - "html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci/artifacts/48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c?artifact_id=be95fb64-f609-4b67-b5cb-e0efe36e", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci", + "flow_name": "runner-ci", + "git_commit": "88b7eeacb488a5117ac568408363ac59a146f41a", + "commit_url": "https://github.com/cyber-dojo/runner/commit/88b7eeacb488a5117ac568408363ac59a146f41a", + "html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci/artifacts/cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf?artifact_id=34ecf062-b48d-4c41-8714-e432768c", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/saver/compare/b8e6c03975a5701e3e8d198549f463989f1a00f4...e59370cc9a235dec909ef1f8467d4cd6fb923ae8", - "previous_git_commit": "b8e6c03975a5701e3e8d198549f463989f1a00f4", - "previous_fingerprint": "e930c316594afc43877740e30d7ac95cdadcf753a2b8a51935652c9531def452", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:b8e6c03@sha256:e930c316594afc43877740e30d7ac95cdadcf753a2b8a51935652c9531def452", + "diff_url": "https://github.com/cyber-dojo/runner/compare/627315ab66d5250fec7ec574b073f1095879a8a4...88b7eeacb488a5117ac568408363ac59a146f41a", + "previous_git_commit": "627315ab66d5250fec7ec574b073f1095879a8a4", + "previous_fingerprint": "b65f224d822ea1b3702a1154c1bd088f27906393755b73c570aefa054ef4211b", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:627315a@sha256:b65f224d822ea1b3702a1154c1bd088f27906393755b73c570aefa054ef4211b", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/saver/commit/b8e6c03975a5701e3e8d198549f463989f1a00f4", - "previous_trail_name": "b8e6c03975a5701e3e8d198549f463989f1a00f4", - "previous_template_reference_name": "saver" + "previous_git_commit_url": "https://github.com/cyber-dojo/runner/commit/627315ab66d5250fec7ec574b073f1095879a8a4", + "previous_trail_name": "627315ab66d5250fec7ec574b073f1095879a8a4", + "previous_template_reference_name": "runner" }, - "commit_lead_time": 11792.0, + "commit_lead_time": 1776.0, "flows": [ { - "flow_name": "saver-ci", - "trail_name": "e59370cc9a235dec909ef1f8467d4cd6fb923ae8", - "template_reference_name": "saver", - "git_commit": "e59370cc9a235dec909ef1f8467d4cd6fb923ae8", - "commit_url": "https://github.com/cyber-dojo/saver/commit/e59370cc9a235dec909ef1f8467d4cd6fb923ae8", + "flow_name": "runner-ci", + "trail_name": "88b7eeacb488a5117ac568408363ac59a146f41a", + "template_reference_name": "runner", + "git_commit": "88b7eeacb488a5117ac568408363ac59a146f41a", + "commit_url": "https://github.com/cyber-dojo/runner/commit/88b7eeacb488a5117ac568408363ac59a146f41a", "git_commit_info": { - "sha1": "e59370cc9a235dec909ef1f8467d4cd6fb923ae8", - "message": "Ignore Snyk c-ares CVE-2026-33630 until Alpine v3.24 backports the fix (#424)\n\nSnyk reports SNYK-ALPINE324-CARES-17896522 (CVE-2026-33630, a remote DoS\n in c-ares, fixed in 1.34.8-r0) against the saver image. The fixed package\n is not yet published to the Alpine v3.24 repo, so a rebuild or base-image\n bump cannot remediate it, and git is needed at runtime so the dependency\n (git -> libcurl -> c-ares) cannot be dropped.\n\n c-ares is not exercised by saver: its only git use is local (clone from\n \".\", remote remove, update-ref), which does no DNS resolution. The ignore\n is time-boxed (expires 2026-08-11) so it re-surfaces; once Alpine backports\n 1.34.8-r0 a routine rebuild removes it and this entry should be deleted.\n\n Document the assessment under docs/vulns/, following the pattern used by\n the runner repo.", + "sha1": "88b7eeacb488a5117ac568408363ac59a146f41a", + "message": "Merge pull request #266 from cyber-dojo/update-snyk-policy\n\nUpdate .snyk policy file for new vulns that are not exploitable", "author": "Jon Jagger ", "branch": "", - "timestamp": 1783841224.0, - "url": "https://github.com/cyber-dojo/saver/commit/e59370cc9a235dec909ef1f8467d4cd6fb923ae8" + "timestamp": 1783755933.0, + "url": "https://github.com/cyber-dojo/runner/commit/88b7eeacb488a5117ac568408363ac59a146f41a" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci/artifacts/48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c?artifact_id=be95fb64-f609-4b67-b5cb-e0efe36e", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci", + "html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci/artifacts/cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf?artifact_id=34ecf062-b48d-4c41-8714-e432768c", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/saver/compare/b8e6c03975a5701e3e8d198549f463989f1a00f4...e59370cc9a235dec909ef1f8467d4cd6fb923ae8", - "previous_git_commit": "b8e6c03975a5701e3e8d198549f463989f1a00f4", - "previous_fingerprint": "e930c316594afc43877740e30d7ac95cdadcf753a2b8a51935652c9531def452", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:b8e6c03@sha256:e930c316594afc43877740e30d7ac95cdadcf753a2b8a51935652c9531def452", + "diff_url": "https://github.com/cyber-dojo/runner/compare/627315ab66d5250fec7ec574b073f1095879a8a4...88b7eeacb488a5117ac568408363ac59a146f41a", + "previous_git_commit": "627315ab66d5250fec7ec574b073f1095879a8a4", + "previous_fingerprint": "b65f224d822ea1b3702a1154c1bd088f27906393755b73c570aefa054ef4211b", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:627315a@sha256:b65f224d822ea1b3702a1154c1bd088f27906393755b73c570aefa054ef4211b", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/saver/commit/b8e6c03975a5701e3e8d198549f463989f1a00f4", - "previous_trail_name": "b8e6c03975a5701e3e8d198549f463989f1a00f4", - "previous_template_reference_name": "saver" + "previous_git_commit_url": "https://github.com/cyber-dojo/runner/commit/627315ab66d5250fec7ec574b073f1095879a8a4", + "previous_trail_name": "627315ab66d5250fec7ec574b073f1095879a8a4", + "previous_template_reference_name": "runner" }, - "commit_lead_time": 11792.0, + "commit_lead_time": 1776.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "production-promotion", - "trail_name": "promotion-one-121", - "template_reference_name": "saver", - "git_commit": "76325d840dc66e1c84743725e17de05a16616419", - "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/76325d840dc66e1c84743725e17de05a16616419", + "trail_name": "promotion-one-120", + "template_reference_name": "runner", + "git_commit": "d7e31ce0207b766140ae689f38625da4374acf87", + "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/d7e31ce0207b766140ae689f38625da4374acf87", "git_commit_info": { - "sha1": "76325d840dc66e1c84743725e17de05a16616419", - "message": "Add emoji prefix to workflow names", - "author": "JonJagger ", + "sha1": "d7e31ce0207b766140ae689f38625da4374acf87", + "message": "Merge pull request #15 from cyber-dojo/delete-dead-comments\n\nDelete dead comments", + "author": "Jon Jagger ", "branch": "main", - "timestamp": 1783852701.0, - "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/76325d840dc66e1c84743725e17de05a16616419" + "timestamp": 1782907108.0, + "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/d7e31ce0207b766140ae689f38625da4374acf87" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c?artifact_id=da608fde-692a-43d4-bb49-f9865d77", + "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf?artifact_id=5951a303-b159-46bf-b22b-ab2c6f1e", "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...76325d840dc66e1c84743725e17de05a16616419", + "diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/d7e31ce0207b766140ae689f38625da4374acf87...d7e31ce0207b766140ae689f38625da4374acf87", "previous_git_commit": "d7e31ce0207b766140ae689f38625da4374acf87", - "previous_fingerprint": "e930c316594afc43877740e30d7ac95cdadcf753a2b8a51935652c9531def452", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:b8e6c03@sha256:e930c316594afc43877740e30d7ac95cdadcf753a2b8a51935652c9531def452", + "previous_fingerprint": "b65f224d822ea1b3702a1154c1bd088f27906393755b73c570aefa054ef4211b", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:627315a@sha256:b65f224d822ea1b3702a1154c1bd088f27906393755b73c570aefa054ef4211b", "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": "saver" + "previous_template_reference_name": "runner" }, - "commit_lead_time": 315.0, + "commit_lead_time": 850601.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "saver-48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", - "template_reference_name": "saver", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", + "template_reference_name": "runner", "git_commit": "35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", "git_commit_info": { @@ -1464,27 +889,27 @@ kosli get snapshot aws-prod --output=json "timestamp": 1783850974.0, "url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c?artifact_id=b856980b-075b-491a-acc8-2cc325c9", - "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/cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf?artifact_id=ca67618d-6290-404e-b19d-404bd891", + "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...35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", - "previous_git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_fingerprint": "f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:8c84fac@sha256:f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419", + "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/a517304f4e9013e2e9ea67e90c7342f7e56653f0...35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", + "previous_git_commit": "a517304f4e9013e2e9ea67e90c7342f7e56653f0", + "previous_fingerprint": "b65f224d822ea1b3702a1154c1bd088f27906393755b73c570aefa054ef4211b", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:627315a@sha256:b65f224d822ea1b3702a1154c1bd088f27906393755b73c570aefa054ef4211b", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_trail_name": "saver-f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419", - "previous_template_reference_name": "saver" + "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/a517304f4e9013e2e9ea67e90c7342f7e56653f0", + "previous_trail_name": "runner-b65f224d822ea1b3702a1154c1bd088f27906393755b73c570aefa054ef4211b", + "previous_template_reference_name": "runner" }, - "commit_lead_time": 2042.0, + "commit_lead_time": -93265.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "saver-48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", - "template_reference_name": "saver", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", + "template_reference_name": "runner", "git_commit": "35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", "git_commit_info": { @@ -1495,32 +920,32 @@ kosli get snapshot aws-prod --output=json "timestamp": 1783850974.0, "url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c?artifact_id=035499a3-d5cc-4f3c-8946-c2a19694", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf?artifact_id=43dcd6ab-3dba-4fef-be27-4c7d23ec", + "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/a517304f4e9013e2e9ea67e90c7342f7e56653f0...35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", - "previous_git_commit": "a517304f4e9013e2e9ea67e90c7342f7e56653f0", - "previous_fingerprint": "e930c316594afc43877740e30d7ac95cdadcf753a2b8a51935652c9531def452", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:b8e6c03@sha256:e930c316594afc43877740e30d7ac95cdadcf753a2b8a51935652c9531def452", + "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/00c479764cb9eca038fdaaaef108672d0bb0ed26...35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", + "previous_git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", + "previous_fingerprint": "414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:9cc2a80@sha256:414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/a517304f4e9013e2e9ea67e90c7342f7e56653f0", - "previous_trail_name": "saver-e930c316594afc43877740e30d7ac95cdadcf753a2b8a51935652c9531def452", - "previous_template_reference_name": "saver" + "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", + "previous_trail_name": "runner-414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06", + "previous_template_reference_name": "runner" }, - "commit_lead_time": 2042.0, + "commit_lead_time": -93265.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] } ], "ecs_context": { - "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/384f0dfe9f834a75ab534d0393c32cd9", + "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/605ef5f5a475499bb0b6dd215978e96e", "cluster_name": null, "service_name": null } }, { - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:88b7eea@sha256:cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:f4bb341@sha256:fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", "compliant": true, "deployments": [], "policy_decisions": [ @@ -1542,8 +967,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "runner-ci", - "trail_name": "88b7eeacb488a5117ac568408363ac59a146f41a", + "flow_name": "saver-ci", + "trail_name": "f4bb3412725258648a7cf5ce1a776609b4dade72", "artifact_status": null } }, @@ -1551,7 +976,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-120", + "trail_name": "promotion-one-133", "artifact_status": null } }, @@ -1559,7 +984,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", + "trail_name": "saver-fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", "artifact_status": null } }, @@ -1567,7 +992,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", + "trail_name": "saver-fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", "artifact_status": null } } @@ -1587,8 +1012,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "runner-ci", - "trail_name": "88b7eeacb488a5117ac568408363ac59a146f41a", + "flow_name": "saver-ci", + "trail_name": "f4bb3412725258648a7cf5ce1a776609b4dade72", "artifact_status": "COMPLIANT" } }, @@ -1596,7 +1021,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-120", + "trail_name": "promotion-one-133", "artifact_status": "COMPLIANT" } }, @@ -1604,7 +1029,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", + "trail_name": "saver-fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", "artifact_status": "COMPLIANT" } }, @@ -1612,7 +1037,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", + "trail_name": "saver-fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", "artifact_status": "COMPLIANT" } } @@ -1637,8 +1062,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "runner-ci", - "trail_name": "88b7eeacb488a5117ac568408363ac59a146f41a", + "flow_name": "saver-ci", + "trail_name": "f4bb3412725258648a7cf5ce1a776609b4dade72", "artifact_status": null } }, @@ -1646,7 +1071,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-120", + "trail_name": "promotion-one-133", "artifact_status": null } }, @@ -1654,7 +1079,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", + "trail_name": "saver-fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", "artifact_status": null } }, @@ -1662,7 +1087,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", + "trail_name": "saver-fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", "artifact_status": null } } @@ -1689,8 +1114,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "runner-ci", - "trail_name": "88b7eeacb488a5117ac568408363ac59a146f41a", + "flow_name": "saver-ci", + "trail_name": "f4bb3412725258648a7cf5ce1a776609b4dade72", "artifact_status": null } }, @@ -1698,7 +1123,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-120", + "trail_name": "promotion-one-133", "artifact_status": null } }, @@ -1706,7 +1131,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", + "trail_name": "saver-fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", "artifact_status": null } }, @@ -1714,7 +1139,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", + "trail_name": "saver-fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", "artifact_status": null } } @@ -1734,8 +1159,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "runner-ci", - "trail_name": "88b7eeacb488a5117ac568408363ac59a146f41a", + "flow_name": "saver-ci", + "trail_name": "f4bb3412725258648a7cf5ce1a776609b4dade72", "artifact_status": "COMPLIANT" } }, @@ -1743,7 +1168,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-120", + "trail_name": "promotion-one-133", "artifact_status": "COMPLIANT" } }, @@ -1751,7 +1176,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", + "trail_name": "saver-fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", "artifact_status": "COMPLIANT" } }, @@ -1759,7 +1184,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", + "trail_name": "saver-fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", "artifact_status": "COMPLIANT" } } @@ -1784,8 +1209,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "runner-ci", - "trail_name": "88b7eeacb488a5117ac568408363ac59a146f41a", + "flow_name": "saver-ci", + "trail_name": "f4bb3412725258648a7cf5ce1a776609b4dade72", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -1794,7 +1219,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-120", + "trail_name": "promotion-one-133", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -1803,7 +1228,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", + "trail_name": "saver-fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -1812,7 +1237,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", + "trail_name": "saver-fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -1840,8 +1265,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "runner-ci", - "trail_name": "88b7eeacb488a5117ac568408363ac59a146f41a", + "flow_name": "saver-ci", + "trail_name": "f4bb3412725258648a7cf5ce1a776609b4dade72", "artifact_status": null } }, @@ -1849,7 +1274,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-120", + "trail_name": "promotion-one-133", "artifact_status": null } }, @@ -1857,7 +1282,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", + "trail_name": "saver-fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", "artifact_status": null } }, @@ -1865,7 +1290,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", + "trail_name": "saver-fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", "artifact_status": null } } @@ -1885,8 +1310,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "runner-ci", - "trail_name": "88b7eeacb488a5117ac568408363ac59a146f41a", + "flow_name": "saver-ci", + "trail_name": "f4bb3412725258648a7cf5ce1a776609b4dade72", "artifact_status": "COMPLIANT" } }, @@ -1894,7 +1319,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-120", + "trail_name": "promotion-one-133", "artifact_status": "COMPLIANT" } }, @@ -1902,7 +1327,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", + "trail_name": "saver-fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", "artifact_status": "COMPLIANT" } }, @@ -1910,7 +1335,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", + "trail_name": "saver-fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", "artifact_status": "COMPLIANT" } } @@ -1935,8 +1360,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "runner-ci", - "trail_name": "88b7eeacb488a5117ac568408363ac59a146f41a", + "flow_name": "saver-ci", + "trail_name": "f4bb3412725258648a7cf5ce1a776609b4dade72", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -1945,7 +1370,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-120", + "trail_name": "promotion-one-133", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -1954,7 +1379,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", + "trail_name": "saver-fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -1963,7 +1388,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", + "trail_name": "saver-fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -1991,8 +1416,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "runner-ci", - "trail_name": "88b7eeacb488a5117ac568408363ac59a146f41a", + "flow_name": "saver-ci", + "trail_name": "f4bb3412725258648a7cf5ce1a776609b4dade72", "artifact_status": null } }, @@ -2000,7 +1425,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-120", + "trail_name": "promotion-one-133", "artifact_status": null } }, @@ -2008,7 +1433,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", + "trail_name": "saver-fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", "artifact_status": null } }, @@ -2016,7 +1441,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", + "trail_name": "saver-fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", "artifact_status": null } } @@ -2036,8 +1461,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "runner-ci", - "trail_name": "88b7eeacb488a5117ac568408363ac59a146f41a", + "flow_name": "saver-ci", + "trail_name": "f4bb3412725258648a7cf5ce1a776609b4dade72", "artifact_status": "COMPLIANT" } }, @@ -2045,7 +1470,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-120", + "trail_name": "promotion-one-133", "artifact_status": "COMPLIANT" } }, @@ -2053,7 +1478,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", + "trail_name": "saver-fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", "artifact_status": "COMPLIANT" } }, @@ -2061,7 +1486,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", + "trail_name": "saver-fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", "artifact_status": "COMPLIANT" } } @@ -2086,8 +1511,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "runner-ci", - "trail_name": "88b7eeacb488a5117ac568408363ac59a146f41a", + "flow_name": "saver-ci", + "trail_name": "f4bb3412725258648a7cf5ce1a776609b4dade72", "artifact_status": null } }, @@ -2095,7 +1520,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-120", + "trail_name": "promotion-one-133", "artifact_status": null } }, @@ -2103,7 +1528,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", + "trail_name": "saver-fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", "artifact_status": null } }, @@ -2111,7 +1536,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", + "trail_name": "saver-fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", "artifact_status": null } } @@ -2138,8 +1563,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "runner-ci", - "trail_name": "88b7eeacb488a5117ac568408363ac59a146f41a", + "flow_name": "saver-ci", + "trail_name": "f4bb3412725258648a7cf5ce1a776609b4dade72", "artifact_status": null } }, @@ -2147,7 +1572,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-120", + "trail_name": "promotion-one-133", "artifact_status": null } }, @@ -2155,7 +1580,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", + "trail_name": "saver-fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", "artifact_status": null } }, @@ -2163,7 +1588,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", + "trail_name": "saver-fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", "artifact_status": null } } @@ -2189,8 +1614,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "runner-ci", - "trail_name": "88b7eeacb488a5117ac568408363ac59a146f41a", + "flow_name": "saver-ci", + "trail_name": "f4bb3412725258648a7cf5ce1a776609b4dade72", "artifact_status": "COMPLIANT" } }, @@ -2198,7 +1623,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promotion-one-120", + "trail_name": "promotion-one-133", "artifact_status": "COMPLIANT" } }, @@ -2206,7 +1631,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", + "trail_name": "saver-fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", "artifact_status": "COMPLIANT" } }, @@ -2214,7 +1639,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", + "trail_name": "saver-fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", "artifact_status": "COMPLIANT" } } @@ -2225,102 +1650,100 @@ kosli get snapshot aws-prod --output=json } ], "reasons_for_incompliance": [], - "fingerprint": "cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", + "fingerprint": "fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", "creationTimestamp": [ - 1783757709, - 1783757715, - 1783757716 + 1784443888 ], "pods": null, "annotation": { "type": "unchanged", - "was": 3, - "now": 3 + "was": 1, + "now": 1 }, - "flow_name": "runner-ci", - "git_commit": "88b7eeacb488a5117ac568408363ac59a146f41a", - "commit_url": "https://github.com/cyber-dojo/runner/commit/88b7eeacb488a5117ac568408363ac59a146f41a", - "html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci/artifacts/cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf?artifact_id=34ecf062-b48d-4c41-8714-e432768c", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci", + "flow_name": "saver-ci", + "git_commit": "f4bb3412725258648a7cf5ce1a776609b4dade72", + "commit_url": "https://github.com/cyber-dojo/saver/commit/f4bb3412725258648a7cf5ce1a776609b4dade72", + "html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci/artifacts/fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97?artifact_id=e3c009b8-349c-4f4e-8730-f45dfccf", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/runner/compare/627315ab66d5250fec7ec574b073f1095879a8a4...88b7eeacb488a5117ac568408363ac59a146f41a", - "previous_git_commit": "627315ab66d5250fec7ec574b073f1095879a8a4", - "previous_fingerprint": "b65f224d822ea1b3702a1154c1bd088f27906393755b73c570aefa054ef4211b", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:627315a@sha256:b65f224d822ea1b3702a1154c1bd088f27906393755b73c570aefa054ef4211b", + "diff_url": "https://github.com/cyber-dojo/saver/compare/55561dc8a8d25313f5318038f26892cdee5e90f7...f4bb3412725258648a7cf5ce1a776609b4dade72", + "previous_git_commit": "55561dc8a8d25313f5318038f26892cdee5e90f7", + "previous_fingerprint": "b0c07ba3f67f16c2a1b6f0096f1474df6600ed3556e0e82b78d24acabc9b2bab", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:55561dc@sha256:b0c07ba3f67f16c2a1b6f0096f1474df6600ed3556e0e82b78d24acabc9b2bab", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/runner/commit/627315ab66d5250fec7ec574b073f1095879a8a4", - "previous_trail_name": "627315ab66d5250fec7ec574b073f1095879a8a4", - "previous_template_reference_name": "runner" + "previous_git_commit_url": "https://github.com/cyber-dojo/saver/commit/55561dc8a8d25313f5318038f26892cdee5e90f7", + "previous_trail_name": "55561dc8a8d25313f5318038f26892cdee5e90f7", + "previous_template_reference_name": "saver" }, - "commit_lead_time": 1776.0, + "commit_lead_time": 3678.0, "flows": [ { - "flow_name": "runner-ci", - "trail_name": "88b7eeacb488a5117ac568408363ac59a146f41a", - "template_reference_name": "runner", - "git_commit": "88b7eeacb488a5117ac568408363ac59a146f41a", - "commit_url": "https://github.com/cyber-dojo/runner/commit/88b7eeacb488a5117ac568408363ac59a146f41a", + "flow_name": "saver-ci", + "trail_name": "f4bb3412725258648a7cf5ce1a776609b4dade72", + "template_reference_name": "saver", + "git_commit": "f4bb3412725258648a7cf5ce1a776609b4dade72", + "commit_url": "https://github.com/cyber-dojo/saver/commit/f4bb3412725258648a7cf5ce1a776609b4dade72", "git_commit_info": { - "sha1": "88b7eeacb488a5117ac568408363ac59a146f41a", - "message": "Merge pull request #266 from cyber-dojo/update-snyk-policy\n\nUpdate .snyk policy file for new vulns that are not exploitable", + "sha1": "f4bb3412725258648a7cf5ce1a776609b4dade72", + "message": "Docs api tab seq and restructure (#435)\n\n* Document tab_seq and restructure the API reference\n\n The saver now dedups kata writes on (laptop_id, tab_seq), so tab_seq\n needs documenting alongside laptop_id on the nine write methods, and\n the read-event examples need it shown on committed events.\n\n While there, make the API reference easier to scan and navigate:\n - headings and links use bare method names (params moved below)\n - each section lists its methods in a Verb/Method/Description table\n - Cluster/Group/Kata/ID/Diff/Probe each gain a one-line blurb\n - each method leads with a description item; parameters become a\n Name/Type/Description table\n - kata_events/kata_event examples refreshed to the v2 event shape\n\n Co-Authored-By: Claude Opus 4.8 (1M context) \n\n* Add client-side tab_seq to the kata write methods\n\n The saver dedups kata writes on (laptop_id, tab_seq), but the client\n library only forwarded laptop_id and had no tab_seq coverage, so a\n redelivered write could not be exercised end-to-end from the client.\n\n Make tab_seq a required arg on the five client write methods (forwarded\n in the POST body like laptop_id), have the test-base forwarders default\n it via a per-test next_tab_seq counter, and add kata_tab_seq_test:\n tab_seq is stored and read back, a redelivered (laptop_id, tab_seq) is a\n no-op, and distinct tab_seqs both commit. Same-laptop concurrent writes\n now pass a distinct tab_seq per racing thread so they are not deduped.\n\n Co-Authored-By: Claude Opus 4.8 (1M context) ", "author": "Jon Jagger ", "branch": "", - "timestamp": 1783755933.0, - "url": "https://github.com/cyber-dojo/runner/commit/88b7eeacb488a5117ac568408363ac59a146f41a" - }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci/artifacts/cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf?artifact_id=34ecf062-b48d-4c41-8714-e432768c", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/runner-ci", + "timestamp": 1784440210.0, + "url": "https://github.com/cyber-dojo/saver/commit/f4bb3412725258648a7cf5ce1a776609b4dade72" + }, + "html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci/artifacts/fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97?artifact_id=e3c009b8-349c-4f4e-8730-f45dfccf", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/saver-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/runner/compare/627315ab66d5250fec7ec574b073f1095879a8a4...88b7eeacb488a5117ac568408363ac59a146f41a", - "previous_git_commit": "627315ab66d5250fec7ec574b073f1095879a8a4", - "previous_fingerprint": "b65f224d822ea1b3702a1154c1bd088f27906393755b73c570aefa054ef4211b", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:627315a@sha256:b65f224d822ea1b3702a1154c1bd088f27906393755b73c570aefa054ef4211b", + "diff_url": "https://github.com/cyber-dojo/saver/compare/55561dc8a8d25313f5318038f26892cdee5e90f7...f4bb3412725258648a7cf5ce1a776609b4dade72", + "previous_git_commit": "55561dc8a8d25313f5318038f26892cdee5e90f7", + "previous_fingerprint": "b0c07ba3f67f16c2a1b6f0096f1474df6600ed3556e0e82b78d24acabc9b2bab", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:55561dc@sha256:b0c07ba3f67f16c2a1b6f0096f1474df6600ed3556e0e82b78d24acabc9b2bab", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/runner/commit/627315ab66d5250fec7ec574b073f1095879a8a4", - "previous_trail_name": "627315ab66d5250fec7ec574b073f1095879a8a4", - "previous_template_reference_name": "runner" + "previous_git_commit_url": "https://github.com/cyber-dojo/saver/commit/55561dc8a8d25313f5318038f26892cdee5e90f7", + "previous_trail_name": "55561dc8a8d25313f5318038f26892cdee5e90f7", + "previous_template_reference_name": "saver" }, - "commit_lead_time": 1776.0, + "commit_lead_time": 3678.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "production-promotion", - "trail_name": "promotion-one-120", - "template_reference_name": "runner", - "git_commit": "d7e31ce0207b766140ae689f38625da4374acf87", - "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/d7e31ce0207b766140ae689f38625da4374acf87", + "trail_name": "promotion-one-133", + "template_reference_name": "saver", + "git_commit": "76325d840dc66e1c84743725e17de05a16616419", + "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/76325d840dc66e1c84743725e17de05a16616419", "git_commit_info": { - "sha1": "d7e31ce0207b766140ae689f38625da4374acf87", - "message": "Merge pull request #15 from cyber-dojo/delete-dead-comments\n\nDelete dead comments", - "author": "Jon Jagger ", + "sha1": "76325d840dc66e1c84743725e17de05a16616419", + "message": "Add emoji prefix to workflow names", + "author": "JonJagger ", "branch": "main", - "timestamp": 1782907108.0, - "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/d7e31ce0207b766140ae689f38625da4374acf87" + "timestamp": 1783852701.0, + "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/76325d840dc66e1c84743725e17de05a16616419" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf?artifact_id=5951a303-b159-46bf-b22b-ab2c6f1e", + "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97?artifact_id=4863df5d-e4e4-4239-ba51-0c76d3e8", "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...d7e31ce0207b766140ae689f38625da4374acf87", - "previous_git_commit": "d7e31ce0207b766140ae689f38625da4374acf87", - "previous_fingerprint": "b65f224d822ea1b3702a1154c1bd088f27906393755b73c570aefa054ef4211b", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:627315a@sha256:b65f224d822ea1b3702a1154c1bd088f27906393755b73c570aefa054ef4211b", + "diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/76325d840dc66e1c84743725e17de05a16616419...76325d840dc66e1c84743725e17de05a16616419", + "previous_git_commit": "76325d840dc66e1c84743725e17de05a16616419", + "previous_fingerprint": "b0c07ba3f67f16c2a1b6f0096f1474df6600ed3556e0e82b78d24acabc9b2bab", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:55561dc@sha256:b0c07ba3f67f16c2a1b6f0096f1474df6600ed3556e0e82b78d24acabc9b2bab", "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": "runner" + "previous_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/76325d840dc66e1c84743725e17de05a16616419", + "previous_trail_name": "promotion-one-129", + "previous_template_reference_name": "saver" }, - "commit_lead_time": 850601.0, + "commit_lead_time": 591187.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", - "template_reference_name": "runner", + "trail_name": "saver-fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", + "template_reference_name": "saver", "git_commit": "35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", "git_commit_info": { @@ -2331,27 +1754,27 @@ kosli get snapshot aws-prod --output=json "timestamp": 1783850974.0, "url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf?artifact_id=55813f39-7624-4502-bc05-18072121", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97?artifact_id=de2df123-0582-44d8-b81b-b814c76c", "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/a517304f4e9013e2e9ea67e90c7342f7e56653f0...35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", - "previous_git_commit": "a517304f4e9013e2e9ea67e90c7342f7e56653f0", - "previous_fingerprint": "b65f224d822ea1b3702a1154c1bd088f27906393755b73c570aefa054ef4211b", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:627315a@sha256:b65f224d822ea1b3702a1154c1bd088f27906393755b73c570aefa054ef4211b", + "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7...35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", + "previous_git_commit": "35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", + "previous_fingerprint": "b0c07ba3f67f16c2a1b6f0096f1474df6600ed3556e0e82b78d24acabc9b2bab", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:55561dc@sha256:b0c07ba3f67f16c2a1b6f0096f1474df6600ed3556e0e82b78d24acabc9b2bab", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/a517304f4e9013e2e9ea67e90c7342f7e56653f0", - "previous_trail_name": "runner-b65f224d822ea1b3702a1154c1bd088f27906393755b73c570aefa054ef4211b", - "previous_template_reference_name": "runner" + "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", + "previous_trail_name": "saver-b0c07ba3f67f16c2a1b6f0096f1474df6600ed3556e0e82b78d24acabc9b2bab", + "previous_template_reference_name": "saver" }, - "commit_lead_time": -93265.0, + "commit_lead_time": 592914.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "runner-cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", - "template_reference_name": "runner", + "trail_name": "saver-fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", + "template_reference_name": "saver", "git_commit": "35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", "git_commit_info": { @@ -2362,32 +1785,32 @@ kosli get snapshot aws-prod --output=json "timestamp": 1783850974.0, "url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf?artifact_id=418b1f5f-bdda-4cb4-95cf-4fccb515", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97?artifact_id=25521edd-4f44-4b5f-940f-4cfe8095", "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...35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", "previous_git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_fingerprint": "414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:9cc2a80@sha256:414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06", + "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": "runner-414a07a72fbd04444ba4d2e19b6c7102095d5aeb469211f99166538626c08d06", - "previous_template_reference_name": "runner" + "previous_trail_name": "saver-f5909cc8dd53b2105953d1a72cd5d6181367d3588964aa01a04c056205a5d419", + "previous_template_reference_name": "saver" }, - "commit_lead_time": -93265.0, + "commit_lead_time": 592914.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] } ], "ecs_context": { - "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/605ef5f5a475499bb0b6dd215978e96e", + "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/a63d8644d8fc4fa8b527fabd8e6cec3a", "cluster_name": null, "service_name": null } }, { - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:7e00b70@sha256:0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:76672a8@sha256:aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", "compliant": true, "deployments": [], "policy_decisions": [ @@ -2410,7 +1833,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "creator-ci", - "trail_name": "7e00b70f8911edf1c480ba9a8b9c2a280260cb08", + "trail_name": "76672a8b247049c3ce8c3140852e17be8f47d995", "artifact_status": null } }, @@ -2418,23 +1841,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-132", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "creator-aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "creator-aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", "artifact_status": null } } @@ -2455,7 +1878,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "creator-ci", - "trail_name": "7e00b70f8911edf1c480ba9a8b9c2a280260cb08", + "trail_name": "76672a8b247049c3ce8c3140852e17be8f47d995", "artifact_status": "COMPLIANT" } }, @@ -2463,23 +1886,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-132", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "creator-aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "creator-aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", "artifact_status": "COMPLIANT" } } @@ -2505,7 +1928,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "creator-ci", - "trail_name": "7e00b70f8911edf1c480ba9a8b9c2a280260cb08", + "trail_name": "76672a8b247049c3ce8c3140852e17be8f47d995", "artifact_status": null } }, @@ -2513,23 +1936,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-132", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "creator-aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "creator-aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", "artifact_status": null } } @@ -2557,7 +1980,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "creator-ci", - "trail_name": "7e00b70f8911edf1c480ba9a8b9c2a280260cb08", + "trail_name": "76672a8b247049c3ce8c3140852e17be8f47d995", "artifact_status": null } }, @@ -2565,23 +1988,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-132", "artifact_status": null } }, { "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "creator-aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", "artifact_status": null } }, { "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "creator-aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", "artifact_status": null } } @@ -2602,7 +2025,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "creator-ci", - "trail_name": "7e00b70f8911edf1c480ba9a8b9c2a280260cb08", + "trail_name": "76672a8b247049c3ce8c3140852e17be8f47d995", "artifact_status": "COMPLIANT" } }, @@ -2610,23 +2033,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-132", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "creator-aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "creator-aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", "artifact_status": "COMPLIANT" } } @@ -2652,7 +2075,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "creator-ci", - "trail_name": "7e00b70f8911edf1c480ba9a8b9c2a280260cb08", + "trail_name": "76672a8b247049c3ce8c3140852e17be8f47d995", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -2661,7 +2084,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-132", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -2669,8 +2092,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "creator-aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -2678,8 +2101,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "creator-aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -2708,7 +2131,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "creator-ci", - "trail_name": "7e00b70f8911edf1c480ba9a8b9c2a280260cb08", + "trail_name": "76672a8b247049c3ce8c3140852e17be8f47d995", "artifact_status": null } }, @@ -2716,23 +2139,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-132", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "creator-aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "creator-aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", "artifact_status": null } } @@ -2753,7 +2176,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "creator-ci", - "trail_name": "7e00b70f8911edf1c480ba9a8b9c2a280260cb08", + "trail_name": "76672a8b247049c3ce8c3140852e17be8f47d995", "artifact_status": "COMPLIANT" } }, @@ -2761,23 +2184,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-132", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "creator-aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "creator-aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", "artifact_status": "COMPLIANT" } } @@ -2803,7 +2226,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "creator-ci", - "trail_name": "7e00b70f8911edf1c480ba9a8b9c2a280260cb08", + "trail_name": "76672a8b247049c3ce8c3140852e17be8f47d995", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -2812,25 +2235,25 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-132", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } }, { - "type": "rule_not_applicable", + "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "creator-aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } }, { - "type": "rule_satisfied", + "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "creator-aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -2859,7 +2282,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "creator-ci", - "trail_name": "7e00b70f8911edf1c480ba9a8b9c2a280260cb08", + "trail_name": "76672a8b247049c3ce8c3140852e17be8f47d995", "artifact_status": null } }, @@ -2867,23 +2290,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-132", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "creator-aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "creator-aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", "artifact_status": null } } @@ -2904,7 +2327,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "creator-ci", - "trail_name": "7e00b70f8911edf1c480ba9a8b9c2a280260cb08", + "trail_name": "76672a8b247049c3ce8c3140852e17be8f47d995", "artifact_status": "COMPLIANT" } }, @@ -2912,23 +2335,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-132", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "creator-aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "creator-aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", "artifact_status": "COMPLIANT" } } @@ -2954,7 +2377,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "creator-ci", - "trail_name": "7e00b70f8911edf1c480ba9a8b9c2a280260cb08", + "trail_name": "76672a8b247049c3ce8c3140852e17be8f47d995", "artifact_status": null } }, @@ -2962,23 +2385,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-132", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "creator-aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "creator-aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", "artifact_status": null } } @@ -3006,7 +2429,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "creator-ci", - "trail_name": "7e00b70f8911edf1c480ba9a8b9c2a280260cb08", + "trail_name": "76672a8b247049c3ce8c3140852e17be8f47d995", "artifact_status": null } }, @@ -3014,23 +2437,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-132", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "creator-aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "creator-aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", "artifact_status": null } } @@ -3057,7 +2480,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "creator-ci", - "trail_name": "7e00b70f8911edf1c480ba9a8b9c2a280260cb08", + "trail_name": "76672a8b247049c3ce8c3140852e17be8f47d995", "artifact_status": "COMPLIANT" } }, @@ -3065,23 +2488,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-132", "artifact_status": "COMPLIANT" } }, { - "type": "rule_not_applicable", + "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "creator-aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", "artifact_status": "COMPLIANT" } }, { - "type": "rule_satisfied", + "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "creator-aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", "artifact_status": "COMPLIANT" } } @@ -3092,9 +2515,9 @@ kosli get snapshot aws-prod --output=json } ], "reasons_for_incompliance": [], - "fingerprint": "0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", + "fingerprint": "aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", "creationTimestamp": [ - 1783618467 + 1784357070 ], "pods": null, "annotation": { @@ -3103,119 +2526,119 @@ kosli get snapshot aws-prod --output=json "now": 1 }, "flow_name": "creator-ci", - "git_commit": "7e00b70f8911edf1c480ba9a8b9c2a280260cb08", - "commit_url": "https://github.com/cyber-dojo/creator/commit/7e00b70f8911edf1c480ba9a8b9c2a280260cb08", - "html_url": "https://app.kosli.com/cyber-dojo/flows/creator-ci/artifacts/0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50?artifact_id=aeec9b85-1a23-4579-b4a8-dbc98a05", + "git_commit": "76672a8b247049c3ce8c3140852e17be8f47d995", + "commit_url": "https://github.com/cyber-dojo/creator/commit/76672a8b247049c3ce8c3140852e17be8f47d995", + "html_url": "https://app.kosli.com/cyber-dojo/flows/creator-ci/artifacts/aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6?artifact_id=3cb9c270-d59b-4b28-b16a-b23d89d2", "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/creator-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/creator/compare/6ff6b4c71ab218d39065654bef32839b9226d21f...7e00b70f8911edf1c480ba9a8b9c2a280260cb08", - "previous_git_commit": "6ff6b4c71ab218d39065654bef32839b9226d21f", - "previous_fingerprint": "a523828dc47cd4f31aecf2d5ef1dea569944a1abcd214e4b2cda50676b2c4dc8", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:6ff6b4c@sha256:a523828dc47cd4f31aecf2d5ef1dea569944a1abcd214e4b2cda50676b2c4dc8", + "diff_url": "https://github.com/cyber-dojo/creator/compare/7e00b70f8911edf1c480ba9a8b9c2a280260cb08...76672a8b247049c3ce8c3140852e17be8f47d995", + "previous_git_commit": "7e00b70f8911edf1c480ba9a8b9c2a280260cb08", + "previous_fingerprint": "0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:7e00b70@sha256:0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/creator/commit/6ff6b4c71ab218d39065654bef32839b9226d21f", - "previous_trail_name": "6ff6b4c71ab218d39065654bef32839b9226d21f", + "previous_git_commit_url": "https://github.com/cyber-dojo/creator/commit/7e00b70f8911edf1c480ba9a8b9c2a280260cb08", + "previous_trail_name": "7e00b70f8911edf1c480ba9a8b9c2a280260cb08", "previous_template_reference_name": "creator" }, - "commit_lead_time": 79786.0, + "commit_lead_time": 45219.0, "flows": [ { "flow_name": "creator-ci", - "trail_name": "7e00b70f8911edf1c480ba9a8b9c2a280260cb08", + "trail_name": "76672a8b247049c3ce8c3140852e17be8f47d995", "template_reference_name": "creator", - "git_commit": "7e00b70f8911edf1c480ba9a8b9c2a280260cb08", - "commit_url": "https://github.com/cyber-dojo/creator/commit/7e00b70f8911edf1c480ba9a8b9c2a280260cb08", + "git_commit": "76672a8b247049c3ce8c3140852e17be8f47d995", + "commit_url": "https://github.com/cyber-dojo/creator/commit/76672a8b247049c3ce8c3140852e17be8f47d995", "git_commit_info": { - "sha1": "7e00b70f8911edf1c480ba9a8b9c2a280260cb08", - "message": "Update kosli template with provenance facts+decision (#41)", - "author": "Jon Jagger ", + "sha1": "76672a8b247049c3ce8c3140852e17be8f47d995", + "message": "Read deployed image for drift-detection plan (#43)\n\nThe Detect Drift workflow runs a terraform plan with no build behind it,\nbut the ECS deployment requires a container image (TF_VAR_TAGGED_IMAGE).\nThe variable has no default and the task definition tracks it directly,\nso a drift plan either fails with \"no value for required variable\" or, if\ngiven a placeholder, reports permanent false drift on the task definition.\n\nBefore planning, each environment reads the image that is currently\ndeployed straight from its ECS task definition and passes it to the\nreusable drift workflow as TF_VAR_TAGGED_IMAGE. The image lookup is done\nexplicitly in this repository rather than in the shared kosli-dev/tf\nworkflow, so Kosli's own drift detection is unaffected.\n\nThe logic lives in a local reusable workflow, detect-drift-env.yml, which\nis parameterized by AWS account and environment. detect-drift.yml holds\nonly the schedule and a beta/prod matrix that calls it, so there is no\nduplication between environments and adding another is a two-line change.", + "author": "Graham Savage ", "branch": "", - "timestamp": 1783538681.0, - "url": "https://github.com/cyber-dojo/creator/commit/7e00b70f8911edf1c480ba9a8b9c2a280260cb08" + "timestamp": 1784311851.0, + "url": "https://github.com/cyber-dojo/creator/commit/76672a8b247049c3ce8c3140852e17be8f47d995" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/creator-ci/artifacts/0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50?artifact_id=aeec9b85-1a23-4579-b4a8-dbc98a05", + "html_url": "https://app.kosli.com/cyber-dojo/flows/creator-ci/artifacts/aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6?artifact_id=3cb9c270-d59b-4b28-b16a-b23d89d2", "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/creator-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/creator/compare/6ff6b4c71ab218d39065654bef32839b9226d21f...7e00b70f8911edf1c480ba9a8b9c2a280260cb08", - "previous_git_commit": "6ff6b4c71ab218d39065654bef32839b9226d21f", - "previous_fingerprint": "a523828dc47cd4f31aecf2d5ef1dea569944a1abcd214e4b2cda50676b2c4dc8", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:6ff6b4c@sha256:a523828dc47cd4f31aecf2d5ef1dea569944a1abcd214e4b2cda50676b2c4dc8", + "diff_url": "https://github.com/cyber-dojo/creator/compare/7e00b70f8911edf1c480ba9a8b9c2a280260cb08...76672a8b247049c3ce8c3140852e17be8f47d995", + "previous_git_commit": "7e00b70f8911edf1c480ba9a8b9c2a280260cb08", + "previous_fingerprint": "0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:7e00b70@sha256:0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/creator/commit/6ff6b4c71ab218d39065654bef32839b9226d21f", - "previous_trail_name": "6ff6b4c71ab218d39065654bef32839b9226d21f", + "previous_git_commit_url": "https://github.com/cyber-dojo/creator/commit/7e00b70f8911edf1c480ba9a8b9c2a280260cb08", + "previous_trail_name": "7e00b70f8911edf1c480ba9a8b9c2a280260cb08", "previous_template_reference_name": "creator" }, - "commit_lead_time": 79786.0, + "commit_lead_time": 45219.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-132", "template_reference_name": "creator", - "git_commit": "d7e31ce0207b766140ae689f38625da4374acf87", - "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/d7e31ce0207b766140ae689f38625da4374acf87", + "git_commit": "76325d840dc66e1c84743725e17de05a16616419", + "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/76325d840dc66e1c84743725e17de05a16616419", "git_commit_info": { - "sha1": "d7e31ce0207b766140ae689f38625da4374acf87", - "message": "Merge pull request #15 from cyber-dojo/delete-dead-comments\n\nDelete dead comments", - "author": "Jon Jagger ", + "sha1": "76325d840dc66e1c84743725e17de05a16616419", + "message": "Add emoji prefix to workflow names", + "author": "JonJagger ", "branch": "main", - "timestamp": 1782907108.0, - "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/d7e31ce0207b766140ae689f38625da4374acf87" + "timestamp": 1783852701.0, + "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/76325d840dc66e1c84743725e17de05a16616419" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50?artifact_id=38e3d0b8-7897-4f0c-8b4b-72fa4745", + "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6?artifact_id=ebfdade0-510f-44f8-9b9f-2d4c7d0d", "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...d7e31ce0207b766140ae689f38625da4374acf87", + "diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/d7e31ce0207b766140ae689f38625da4374acf87...76325d840dc66e1c84743725e17de05a16616419", "previous_git_commit": "d7e31ce0207b766140ae689f38625da4374acf87", - "previous_fingerprint": "a523828dc47cd4f31aecf2d5ef1dea569944a1abcd214e4b2cda50676b2c4dc8", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:6ff6b4c@sha256:a523828dc47cd4f31aecf2d5ef1dea569944a1abcd214e4b2cda50676b2c4dc8", + "previous_fingerprint": "0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:7e00b70@sha256:0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", "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-29", + "previous_trail_name": "promote-all-30", "previous_template_reference_name": "creator" }, - "commit_lead_time": 711359.0, + "commit_lead_time": 504369.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "creator-0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "creator-aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", "template_reference_name": "creator", - "git_commit": "a517304f4e9013e2e9ea67e90c7342f7e56653f0", - "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/a517304f4e9013e2e9ea67e90c7342f7e56653f0", + "git_commit": "35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", + "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", "git_commit_info": { - "sha1": "a517304f4e9013e2e9ea67e90c7342f7e56653f0", - "message": "Remove unneeded provenance decision attestation - this is not a build flow", + "sha1": "35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", + "message": "Add emoji prefixes to workflow names\n\n Match the visual convention already used in the kosli-demo/stochastic-committer\n repo, where the Actions sidebar distinguishes workflow roles at a glance.\n\n The two aws-* files are the top-level entry points, triggered by dispatch and\n schedule, so they get the play emoji. The three reusable workflow_call\n sub-workflows get the package emoji to mark them as callable building blocks.", "author": "JonJagger ", "branch": "main", - "timestamp": 1782799303.0, - "url": "https://github.com/cyber-dojo/snyk-scanning/commit/a517304f4e9013e2e9ea67e90c7342f7e56653f0" + "timestamp": 1783850974.0, + "url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50?artifact_id=57b05a37-659f-4f41-801b-1a441ba0", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6?artifact_id=d339106c-31a1-4451-bfc2-b172346e", + "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/a517304f4e9013e2e9ea67e90c7342f7e56653f0...a517304f4e9013e2e9ea67e90c7342f7e56653f0", - "previous_git_commit": "a517304f4e9013e2e9ea67e90c7342f7e56653f0", - "previous_fingerprint": "a523828dc47cd4f31aecf2d5ef1dea569944a1abcd214e4b2cda50676b2c4dc8", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:6ff6b4c@sha256:a523828dc47cd4f31aecf2d5ef1dea569944a1abcd214e4b2cda50676b2c4dc8", + "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/7172cc22125f480a9f12127edb481a4d84aabea3...35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", + "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/a517304f4e9013e2e9ea67e90c7342f7e56653f0", - "previous_trail_name": "creator-a523828dc47cd4f31aecf2d5ef1dea569944a1abcd214e4b2cda50676b2c4dc8", + "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": 819164.0, + "commit_lead_time": 506096.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "creator-0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "creator-aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", "template_reference_name": "creator", "git_commit": "35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", @@ -3227,32 +2650,32 @@ kosli get snapshot aws-prod --output=json "timestamp": 1783850974.0, "url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50?artifact_id=6ac99a6e-fe18-4880-9c37-b2781448", - "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/aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6?artifact_id=e3173c76-dcba-4dc9-8f03-8abe8598", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/7172cc22125f480a9f12127edb481a4d84aabea3...35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", - "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/a517304f4e9013e2e9ea67e90c7342f7e56653f0...35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", + "previous_git_commit": "a517304f4e9013e2e9ea67e90c7342f7e56653f0", + "previous_fingerprint": "0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:7e00b70@sha256:0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", "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_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/a517304f4e9013e2e9ea67e90c7342f7e56653f0", + "previous_trail_name": "creator-0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", "previous_template_reference_name": "creator" }, - "commit_lead_time": -232507.0, + "commit_lead_time": 506096.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] } ], "ecs_context": { - "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/aabbbdeadb0b4fe4a415ddcc8030db24", + "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/2730a627a7a3472b810cacada52f3935", "cluster_name": null, "service_name": null } }, { - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:9b711df@sha256:0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:5407827@sha256:d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", "compliant": true, "deployments": [], "policy_decisions": [ @@ -3274,8 +2697,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "nginx-ci", - "trail_name": "9b711df71c76a1f293c2525ace65778036591baf", + "flow_name": "dashboard-ci", + "trail_name": "5407827a19ff32c8d0e7ff2e8f18665e86e64f01", "artifact_status": null } }, @@ -3283,7 +2706,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-131", "artifact_status": null } }, @@ -3291,7 +2714,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", + "trail_name": "dashboard-d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", "artifact_status": null } }, @@ -3299,7 +2722,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", + "trail_name": "dashboard-d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", "artifact_status": null } } @@ -3319,8 +2742,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "nginx-ci", - "trail_name": "9b711df71c76a1f293c2525ace65778036591baf", + "flow_name": "dashboard-ci", + "trail_name": "5407827a19ff32c8d0e7ff2e8f18665e86e64f01", "artifact_status": "COMPLIANT" } }, @@ -3328,7 +2751,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-131", "artifact_status": "COMPLIANT" } }, @@ -3336,7 +2759,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", + "trail_name": "dashboard-d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", "artifact_status": "COMPLIANT" } }, @@ -3344,7 +2767,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", + "trail_name": "dashboard-d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", "artifact_status": "COMPLIANT" } } @@ -3369,8 +2792,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "nginx-ci", - "trail_name": "9b711df71c76a1f293c2525ace65778036591baf", + "flow_name": "dashboard-ci", + "trail_name": "5407827a19ff32c8d0e7ff2e8f18665e86e64f01", "artifact_status": null } }, @@ -3378,7 +2801,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-131", "artifact_status": null } }, @@ -3386,7 +2809,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", + "trail_name": "dashboard-d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", "artifact_status": null } }, @@ -3394,7 +2817,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", + "trail_name": "dashboard-d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", "artifact_status": null } } @@ -3421,8 +2844,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "nginx-ci", - "trail_name": "9b711df71c76a1f293c2525ace65778036591baf", + "flow_name": "dashboard-ci", + "trail_name": "5407827a19ff32c8d0e7ff2e8f18665e86e64f01", "artifact_status": null } }, @@ -3430,7 +2853,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-131", "artifact_status": null } }, @@ -3438,7 +2861,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", + "trail_name": "dashboard-d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", "artifact_status": null } }, @@ -3446,7 +2869,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", + "trail_name": "dashboard-d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", "artifact_status": null } } @@ -3466,8 +2889,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "nginx-ci", - "trail_name": "9b711df71c76a1f293c2525ace65778036591baf", + "flow_name": "dashboard-ci", + "trail_name": "5407827a19ff32c8d0e7ff2e8f18665e86e64f01", "artifact_status": "COMPLIANT" } }, @@ -3475,7 +2898,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-131", "artifact_status": "COMPLIANT" } }, @@ -3483,7 +2906,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", + "trail_name": "dashboard-d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", "artifact_status": "COMPLIANT" } }, @@ -3491,7 +2914,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", + "trail_name": "dashboard-d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", "artifact_status": "COMPLIANT" } } @@ -3516,8 +2939,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "nginx-ci", - "trail_name": "9b711df71c76a1f293c2525ace65778036591baf", + "flow_name": "dashboard-ci", + "trail_name": "5407827a19ff32c8d0e7ff2e8f18665e86e64f01", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -3526,7 +2949,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-131", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -3535,7 +2958,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", + "trail_name": "dashboard-d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -3544,7 +2967,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", + "trail_name": "dashboard-d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -3572,8 +2995,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "nginx-ci", - "trail_name": "9b711df71c76a1f293c2525ace65778036591baf", + "flow_name": "dashboard-ci", + "trail_name": "5407827a19ff32c8d0e7ff2e8f18665e86e64f01", "artifact_status": null } }, @@ -3581,7 +3004,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-131", "artifact_status": null } }, @@ -3589,7 +3012,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", + "trail_name": "dashboard-d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", "artifact_status": null } }, @@ -3597,7 +3020,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", + "trail_name": "dashboard-d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", "artifact_status": null } } @@ -3617,8 +3040,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "nginx-ci", - "trail_name": "9b711df71c76a1f293c2525ace65778036591baf", + "flow_name": "dashboard-ci", + "trail_name": "5407827a19ff32c8d0e7ff2e8f18665e86e64f01", "artifact_status": "COMPLIANT" } }, @@ -3626,7 +3049,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-131", "artifact_status": "COMPLIANT" } }, @@ -3634,7 +3057,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", + "trail_name": "dashboard-d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", "artifact_status": "COMPLIANT" } }, @@ -3642,7 +3065,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", + "trail_name": "dashboard-d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", "artifact_status": "COMPLIANT" } } @@ -3667,8 +3090,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "nginx-ci", - "trail_name": "9b711df71c76a1f293c2525ace65778036591baf", + "flow_name": "dashboard-ci", + "trail_name": "5407827a19ff32c8d0e7ff2e8f18665e86e64f01", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -3677,7 +3100,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-131", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -3686,7 +3109,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", + "trail_name": "dashboard-d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -3695,7 +3118,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", + "trail_name": "dashboard-d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -3723,8 +3146,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "nginx-ci", - "trail_name": "9b711df71c76a1f293c2525ace65778036591baf", + "flow_name": "dashboard-ci", + "trail_name": "5407827a19ff32c8d0e7ff2e8f18665e86e64f01", "artifact_status": null } }, @@ -3732,7 +3155,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-131", "artifact_status": null } }, @@ -3740,7 +3163,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", + "trail_name": "dashboard-d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", "artifact_status": null } }, @@ -3748,7 +3171,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", + "trail_name": "dashboard-d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", "artifact_status": null } } @@ -3768,8 +3191,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "nginx-ci", - "trail_name": "9b711df71c76a1f293c2525ace65778036591baf", + "flow_name": "dashboard-ci", + "trail_name": "5407827a19ff32c8d0e7ff2e8f18665e86e64f01", "artifact_status": "COMPLIANT" } }, @@ -3777,7 +3200,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-131", "artifact_status": "COMPLIANT" } }, @@ -3785,7 +3208,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", + "trail_name": "dashboard-d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", "artifact_status": "COMPLIANT" } }, @@ -3793,7 +3216,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", + "trail_name": "dashboard-d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", "artifact_status": "COMPLIANT" } } @@ -3818,8 +3241,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "nginx-ci", - "trail_name": "9b711df71c76a1f293c2525ace65778036591baf", + "flow_name": "dashboard-ci", + "trail_name": "5407827a19ff32c8d0e7ff2e8f18665e86e64f01", "artifact_status": null } }, @@ -3827,7 +3250,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-131", "artifact_status": null } }, @@ -3835,7 +3258,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", + "trail_name": "dashboard-d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", "artifact_status": null } }, @@ -3843,7 +3266,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", + "trail_name": "dashboard-d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", "artifact_status": null } } @@ -3870,8 +3293,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "nginx-ci", - "trail_name": "9b711df71c76a1f293c2525ace65778036591baf", + "flow_name": "dashboard-ci", + "trail_name": "5407827a19ff32c8d0e7ff2e8f18665e86e64f01", "artifact_status": null } }, @@ -3879,7 +3302,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-131", "artifact_status": null } }, @@ -3887,7 +3310,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", + "trail_name": "dashboard-d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", "artifact_status": null } }, @@ -3895,7 +3318,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", + "trail_name": "dashboard-d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", "artifact_status": null } } @@ -3921,8 +3344,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "nginx-ci", - "trail_name": "9b711df71c76a1f293c2525ace65778036591baf", + "flow_name": "dashboard-ci", + "trail_name": "5407827a19ff32c8d0e7ff2e8f18665e86e64f01", "artifact_status": "COMPLIANT" } }, @@ -3930,7 +3353,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-131", "artifact_status": "COMPLIANT" } }, @@ -3938,7 +3361,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", + "trail_name": "dashboard-d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", "artifact_status": "COMPLIANT" } }, @@ -3946,7 +3369,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", + "trail_name": "dashboard-d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", "artifact_status": "COMPLIANT" } } @@ -3957,9 +3380,9 @@ kosli get snapshot aws-prod --output=json } ], "reasons_for_incompliance": [], - "fingerprint": "0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", + "fingerprint": "d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", "creationTimestamp": [ - 1783618458 + 1784355921 ], "pods": null, "annotation": { @@ -3967,90 +3390,90 @@ kosli get snapshot aws-prod --output=json "was": 1, "now": 1 }, - "flow_name": "nginx-ci", - "git_commit": "9b711df71c76a1f293c2525ace65778036591baf", - "commit_url": "https://github.com/cyber-dojo/nginx/commit/9b711df71c76a1f293c2525ace65778036591baf", - "html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci/artifacts/0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7?artifact_id=0d448ff6-ac85-47bb-8d86-9dfab222", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci", + "flow_name": "dashboard-ci", + "git_commit": "5407827a19ff32c8d0e7ff2e8f18665e86e64f01", + "commit_url": "https://github.com/cyber-dojo/dashboard/commit/5407827a19ff32c8d0e7ff2e8f18665e86e64f01", + "html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci/artifacts/d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e?artifact_id=53e5b750-6f87-43db-a8a3-e1f5b1db", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/nginx/compare/cbf0063e279351ffb201b39296e9bfe892dc772f...9b711df71c76a1f293c2525ace65778036591baf", - "previous_git_commit": "cbf0063e279351ffb201b39296e9bfe892dc772f", - "previous_fingerprint": "c2ec29a9c6cce9948227159bc97dbb689cdc5803e77c4cff5573a6f257c8182c", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:cbf0063@sha256:c2ec29a9c6cce9948227159bc97dbb689cdc5803e77c4cff5573a6f257c8182c", + "diff_url": "https://github.com/cyber-dojo/dashboard/compare/e4757683b74df7033c95aa544a7824b395c2f8bb...5407827a19ff32c8d0e7ff2e8f18665e86e64f01", + "previous_git_commit": "e4757683b74df7033c95aa544a7824b395c2f8bb", + "previous_fingerprint": "54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:e475768@sha256:54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/nginx/commit/cbf0063e279351ffb201b39296e9bfe892dc772f", - "previous_trail_name": "cbf0063e279351ffb201b39296e9bfe892dc772f", - "previous_template_reference_name": "nginx" + "previous_git_commit_url": "https://github.com/cyber-dojo/dashboard/commit/e4757683b74df7033c95aa544a7824b395c2f8bb", + "previous_trail_name": "e4757683b74df7033c95aa544a7824b395c2f8bb", + "previous_template_reference_name": "dashboard" }, - "commit_lead_time": 12638.0, + "commit_lead_time": 43879.0, "flows": [ { - "flow_name": "nginx-ci", - "trail_name": "9b711df71c76a1f293c2525ace65778036591baf", - "template_reference_name": "nginx", - "git_commit": "9b711df71c76a1f293c2525ace65778036591baf", - "commit_url": "https://github.com/cyber-dojo/nginx/commit/9b711df71c76a1f293c2525ace65778036591baf", + "flow_name": "dashboard-ci", + "trail_name": "5407827a19ff32c8d0e7ff2e8f18665e86e64f01", + "template_reference_name": "dashboard", + "git_commit": "5407827a19ff32c8d0e7ff2e8f18665e86e64f01", + "commit_url": "https://github.com/cyber-dojo/dashboard/commit/5407827a19ff32c8d0e7ff2e8f18665e86e64f01", "git_commit_info": { - "sha1": "9b711df71c76a1f293c2525ace65778036591baf", - "message": "Merge pull request #158 from cyber-dojo/run-workflow-152\n\nRun main workflow to check updates to secure-docker-build sub workflow", - "author": "Jon Jagger ", + "sha1": "5407827a19ff32c8d0e7ff2e8f18665e86e64f01", + "message": "Read deployed image for drift-detection plan (#417)\n\nThe Detect Drift workflow runs a terraform plan with no build behind it,\nbut the ECS deployment requires a container image (TF_VAR_TAGGED_IMAGE).\nThe variable has no default and the task definition tracks it directly,\nso a drift plan either fails with \"no value for required variable\" or, if\ngiven a placeholder, reports permanent false drift on the task definition.\n\nBefore planning, each environment reads the image that is currently\ndeployed straight from its ECS task definition and passes it to the\nreusable drift workflow as TF_VAR_TAGGED_IMAGE. The image lookup is done\nexplicitly in this repository rather than in the shared kosli-dev/tf\nworkflow, so Kosli's own drift detection is unaffected.\n\nThe logic lives in a local reusable workflow, detect-drift-env.yml, which\nis parameterized by AWS account and environment. detect-drift.yml holds\nonly the schedule and a beta/prod matrix that calls it, so there is no\nduplication between environments and adding another is a two-line change.", + "author": "Graham Savage ", "branch": "", - "timestamp": 1783605820.0, - "url": "https://github.com/cyber-dojo/nginx/commit/9b711df71c76a1f293c2525ace65778036591baf" + "timestamp": 1784312042.0, + "url": "https://github.com/cyber-dojo/dashboard/commit/5407827a19ff32c8d0e7ff2e8f18665e86e64f01" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci/artifacts/0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7?artifact_id=0d448ff6-ac85-47bb-8d86-9dfab222", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci", + "html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci/artifacts/d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e?artifact_id=53e5b750-6f87-43db-a8a3-e1f5b1db", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/nginx/compare/cbf0063e279351ffb201b39296e9bfe892dc772f...9b711df71c76a1f293c2525ace65778036591baf", - "previous_git_commit": "cbf0063e279351ffb201b39296e9bfe892dc772f", - "previous_fingerprint": "c2ec29a9c6cce9948227159bc97dbb689cdc5803e77c4cff5573a6f257c8182c", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:cbf0063@sha256:c2ec29a9c6cce9948227159bc97dbb689cdc5803e77c4cff5573a6f257c8182c", + "diff_url": "https://github.com/cyber-dojo/dashboard/compare/e4757683b74df7033c95aa544a7824b395c2f8bb...5407827a19ff32c8d0e7ff2e8f18665e86e64f01", + "previous_git_commit": "e4757683b74df7033c95aa544a7824b395c2f8bb", + "previous_fingerprint": "54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:e475768@sha256:54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/nginx/commit/cbf0063e279351ffb201b39296e9bfe892dc772f", - "previous_trail_name": "cbf0063e279351ffb201b39296e9bfe892dc772f", - "previous_template_reference_name": "nginx" + "previous_git_commit_url": "https://github.com/cyber-dojo/dashboard/commit/e4757683b74df7033c95aa544a7824b395c2f8bb", + "previous_trail_name": "e4757683b74df7033c95aa544a7824b395c2f8bb", + "previous_template_reference_name": "dashboard" }, - "commit_lead_time": 12638.0, + "commit_lead_time": 43879.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "production-promotion", - "trail_name": "promote-all-30", - "template_reference_name": "nginx", - "git_commit": "d7e31ce0207b766140ae689f38625da4374acf87", - "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/d7e31ce0207b766140ae689f38625da4374acf87", + "trail_name": "promotion-one-131", + "template_reference_name": "dashboard", + "git_commit": "76325d840dc66e1c84743725e17de05a16616419", + "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/76325d840dc66e1c84743725e17de05a16616419", "git_commit_info": { - "sha1": "d7e31ce0207b766140ae689f38625da4374acf87", - "message": "Merge pull request #15 from cyber-dojo/delete-dead-comments\n\nDelete dead comments", - "author": "Jon Jagger ", + "sha1": "76325d840dc66e1c84743725e17de05a16616419", + "message": "Add emoji prefix to workflow names", + "author": "JonJagger ", "branch": "main", - "timestamp": 1782907108.0, - "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/d7e31ce0207b766140ae689f38625da4374acf87" + "timestamp": 1783852701.0, + "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/76325d840dc66e1c84743725e17de05a16616419" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7?artifact_id=389fea12-1169-476e-b156-27970ac8", + "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e?artifact_id=4485997e-f05e-4e02-a192-8e7ccff7", "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...d7e31ce0207b766140ae689f38625da4374acf87", + "diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/d7e31ce0207b766140ae689f38625da4374acf87...76325d840dc66e1c84743725e17de05a16616419", "previous_git_commit": "d7e31ce0207b766140ae689f38625da4374acf87", - "previous_fingerprint": "c2ec29a9c6cce9948227159bc97dbb689cdc5803e77c4cff5573a6f257c8182c", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:cbf0063@sha256:c2ec29a9c6cce9948227159bc97dbb689cdc5803e77c4cff5573a6f257c8182c", + "previous_fingerprint": "54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:e475768@sha256:54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", "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": "promotion-one-118", - "previous_template_reference_name": "nginx" + "previous_trail_name": "promote-all-30", + "previous_template_reference_name": "dashboard" }, - "commit_lead_time": 711350.0, + "commit_lead_time": 503220.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "nginx-0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", - "template_reference_name": "nginx", + "trail_name": "dashboard-d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", + "template_reference_name": "dashboard", "git_commit": "35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", "git_commit_info": { @@ -4061,27 +3484,27 @@ kosli get snapshot aws-prod --output=json "timestamp": 1783850974.0, "url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7?artifact_id=3ebc7928-e96e-465b-a205-6f9ed1fc", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e?artifact_id=d4135ce9-580b-4555-ab80-1d8acad2", "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...35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", "previous_git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_fingerprint": "b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:7065268@sha256:b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8", + "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": "nginx-b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8", - "previous_template_reference_name": "nginx" + "previous_trail_name": "dashboard-45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c", + "previous_template_reference_name": "dashboard" }, - "commit_lead_time": -232516.0, + "commit_lead_time": 504947.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "nginx-0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", - "template_reference_name": "nginx", + "trail_name": "dashboard-d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", + "template_reference_name": "dashboard", "git_commit": "35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", "git_commit_info": { @@ -4092,32 +3515,32 @@ kosli get snapshot aws-prod --output=json "timestamp": 1783850974.0, "url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7?artifact_id=e96930e3-5ed2-4174-bb6a-f09901cd", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e?artifact_id=4c3e3d1c-97ec-4d7d-a047-b9ef553d", "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/d07d841723e4e524e4ea4d7dc8a7e60f0fc3349e...35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", - "previous_git_commit": "d07d841723e4e524e4ea4d7dc8a7e60f0fc3349e", - "previous_fingerprint": "8bc44a90894de99aa76cd931ea42e2544b0727c5e3842ea57e4f08cace175ca9", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:66c0766@sha256:8bc44a90894de99aa76cd931ea42e2544b0727c5e3842ea57e4f08cace175ca9", + "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/a517304f4e9013e2e9ea67e90c7342f7e56653f0...35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", + "previous_git_commit": "a517304f4e9013e2e9ea67e90c7342f7e56653f0", + "previous_fingerprint": "54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:e475768@sha256:54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/d07d841723e4e524e4ea4d7dc8a7e60f0fc3349e", - "previous_trail_name": "nginx-8bc44a90894de99aa76cd931ea42e2544b0727c5e3842ea57e4f08cace175ca9", - "previous_template_reference_name": "nginx" + "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/a517304f4e9013e2e9ea67e90c7342f7e56653f0", + "previous_trail_name": "dashboard-54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", + "previous_template_reference_name": "dashboard" }, - "commit_lead_time": -232516.0, + "commit_lead_time": 504947.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] } ], "ecs_context": { - "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/e229983953cd42e5a38849ac1cf5b41f", + "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/fb1ca8ead3c2436e83ca34d72d275313", "cluster_name": null, "service_name": null } }, { - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:c6db342@sha256:f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:3f0b997@sha256:0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", "compliant": true, "deployments": [], "policy_decisions": [ @@ -4139,32 +3562,32 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "c6db342472238a7852b6ff31b04f9a6a6099f5cf", + "flow_name": "web-ci", + "trail_name": "3f0b9975f96b7f4e4aae0b4409cebda3209be164", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", + "flow_name": "production-promotion", + "trail_name": "promotion-one-130", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", "artifact_status": null } } @@ -4184,32 +3607,32 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "c6db342472238a7852b6ff31b04f9a6a6099f5cf", + "flow_name": "web-ci", + "trail_name": "3f0b9975f96b7f4e4aae0b4409cebda3209be164", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", + "flow_name": "production-promotion", + "trail_name": "promotion-one-130", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", "artifact_status": "COMPLIANT" } } @@ -4234,32 +3657,32 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "c6db342472238a7852b6ff31b04f9a6a6099f5cf", + "flow_name": "web-ci", + "trail_name": "3f0b9975f96b7f4e4aae0b4409cebda3209be164", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", + "flow_name": "production-promotion", + "trail_name": "promotion-one-130", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", "artifact_status": null } } @@ -4286,32 +3709,32 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "c6db342472238a7852b6ff31b04f9a6a6099f5cf", + "flow_name": "web-ci", + "trail_name": "3f0b9975f96b7f4e4aae0b4409cebda3209be164", "artifact_status": null } }, { "type": "rule_satisfied", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", "artifact_status": null } }, { "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", + "flow_name": "production-promotion", + "trail_name": "promotion-one-130", "artifact_status": null } }, { "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", "artifact_status": null } } @@ -4331,32 +3754,32 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "c6db342472238a7852b6ff31b04f9a6a6099f5cf", + "flow_name": "web-ci", + "trail_name": "3f0b9975f96b7f4e4aae0b4409cebda3209be164", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", + "flow_name": "production-promotion", + "trail_name": "promotion-one-130", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", "artifact_status": "COMPLIANT" } } @@ -4381,8 +3804,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "c6db342472238a7852b6ff31b04f9a6a6099f5cf", + "flow_name": "web-ci", + "trail_name": "3f0b9975f96b7f4e4aae0b4409cebda3209be164", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -4390,8 +3813,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -4399,8 +3822,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", + "flow_name": "production-promotion", + "trail_name": "promotion-one-130", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -4408,8 +3831,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -4437,32 +3860,32 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "c6db342472238a7852b6ff31b04f9a6a6099f5cf", + "flow_name": "web-ci", + "trail_name": "3f0b9975f96b7f4e4aae0b4409cebda3209be164", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", + "flow_name": "production-promotion", + "trail_name": "promotion-one-130", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", "artifact_status": null } } @@ -4482,32 +3905,32 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "c6db342472238a7852b6ff31b04f9a6a6099f5cf", + "flow_name": "web-ci", + "trail_name": "3f0b9975f96b7f4e4aae0b4409cebda3209be164", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", + "flow_name": "production-promotion", + "trail_name": "promotion-one-130", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", "artifact_status": "COMPLIANT" } } @@ -4532,8 +3955,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "c6db342472238a7852b6ff31b04f9a6a6099f5cf", + "flow_name": "web-ci", + "trail_name": "3f0b9975f96b7f4e4aae0b4409cebda3209be164", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -4541,26 +3964,26 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } }, { - "type": "rule_satisfied", + "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", + "flow_name": "production-promotion", + "trail_name": "promotion-one-130", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } }, { - "type": "rule_not_applicable", + "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -4588,32 +4011,32 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "c6db342472238a7852b6ff31b04f9a6a6099f5cf", + "flow_name": "web-ci", + "trail_name": "3f0b9975f96b7f4e4aae0b4409cebda3209be164", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", + "flow_name": "production-promotion", + "trail_name": "promotion-one-130", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", "artifact_status": null } } @@ -4633,32 +4056,32 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "c6db342472238a7852b6ff31b04f9a6a6099f5cf", + "flow_name": "web-ci", + "trail_name": "3f0b9975f96b7f4e4aae0b4409cebda3209be164", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", + "flow_name": "production-promotion", + "trail_name": "promotion-one-130", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", "artifact_status": "COMPLIANT" } } @@ -4683,32 +4106,32 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "c6db342472238a7852b6ff31b04f9a6a6099f5cf", + "flow_name": "web-ci", + "trail_name": "3f0b9975f96b7f4e4aae0b4409cebda3209be164", "artifact_status": null } }, { - "type": "rule_satisfied", + "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", "artifact_status": null } }, { - "type": "rule_not_applicable", + "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", + "flow_name": "production-promotion", + "trail_name": "promotion-one-130", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", "artifact_status": null } } @@ -4735,32 +4158,32 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "c6db342472238a7852b6ff31b04f9a6a6099f5cf", + "flow_name": "web-ci", + "trail_name": "3f0b9975f96b7f4e4aae0b4409cebda3209be164", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", + "flow_name": "production-promotion", + "trail_name": "promotion-one-130", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", "artifact_status": null } } @@ -4786,32 +4209,32 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "languages-start-points-ci", - "trail_name": "c6db342472238a7852b6ff31b04f9a6a6099f5cf", + "flow_name": "web-ci", + "trail_name": "3f0b9975f96b7f4e4aae0b4409cebda3209be164", "artifact_status": "COMPLIANT" } }, { - "type": "rule_satisfied", + "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", "artifact_status": "COMPLIANT" } }, { "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", + "flow_name": "production-promotion", + "trail_name": "promotion-one-130", "artifact_status": "COMPLIANT" } }, { - "type": "rule_not_applicable", + "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", "artifact_status": "COMPLIANT" } } @@ -4822,131 +4245,133 @@ kosli get snapshot aws-prod --output=json } ], "reasons_for_incompliance": [], - "fingerprint": "f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", + "fingerprint": "0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", "creationTimestamp": [ - 1783618209 + 1784352887, + 1784352892, + 1784352892 ], "pods": null, "annotation": { "type": "unchanged", - "was": 1, - "now": 1 + "was": 3, + "now": 3 }, - "flow_name": "languages-start-points-ci", - "git_commit": "c6db342472238a7852b6ff31b04f9a6a6099f5cf", - "commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/c6db342472238a7852b6ff31b04f9a6a6099f5cf", - "html_url": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci/artifacts/f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418?artifact_id=ed104a44-8358-4883-beeb-ac3c8bb7", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci", + "flow_name": "web-ci", + "git_commit": "3f0b9975f96b7f4e4aae0b4409cebda3209be164", + "commit_url": "https://github.com/cyber-dojo/web/commit/3f0b9975f96b7f4e4aae0b4409cebda3209be164", + "html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci/artifacts/0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972?artifact_id=0f00c8a9-1489-416c-b64f-5819890f", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/languages-start-points/compare/04e0e14bb8874ab521d35c97d6040133f0d2143a...c6db342472238a7852b6ff31b04f9a6a6099f5cf", - "previous_git_commit": "04e0e14bb8874ab521d35c97d6040133f0d2143a", - "previous_fingerprint": "a89642efb4e686ea38d597e20c2c3f256649d8bca02e2d923767844a6897667c", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:04e0e14@sha256:a89642efb4e686ea38d597e20c2c3f256649d8bca02e2d923767844a6897667c", + "diff_url": "https://github.com/cyber-dojo/web/compare/bdf01beca687a34db9689499bd805cfc752a1747...3f0b9975f96b7f4e4aae0b4409cebda3209be164", + "previous_git_commit": "bdf01beca687a34db9689499bd805cfc752a1747", + "previous_fingerprint": "64c1342f34dfbf19a5da21b0b027ac20abdbc1be6e1c763ff90a83ae207f9920", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:bdf01be@sha256:64c1342f34dfbf19a5da21b0b027ac20abdbc1be6e1c763ff90a83ae207f9920", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/04e0e14bb8874ab521d35c97d6040133f0d2143a", - "previous_trail_name": "04e0e14bb8874ab521d35c97d6040133f0d2143a", - "previous_template_reference_name": "languages-start-points" + "previous_git_commit_url": "https://github.com/cyber-dojo/web/commit/bdf01beca687a34db9689499bd805cfc752a1747", + "previous_trail_name": "bdf01beca687a34db9689499bd805cfc752a1747", + "previous_template_reference_name": "web" }, - "commit_lead_time": 81654.0, + "commit_lead_time": 56258.0, "flows": [ { - "flow_name": "languages-start-points-ci", - "trail_name": "c6db342472238a7852b6ff31b04f9a6a6099f5cf", - "template_reference_name": "languages-start-points", - "git_commit": "c6db342472238a7852b6ff31b04f9a6a6099f5cf", - "commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/c6db342472238a7852b6ff31b04f9a6a6099f5cf", + "flow_name": "web-ci", + "trail_name": "3f0b9975f96b7f4e4aae0b4409cebda3209be164", + "template_reference_name": "web", + "git_commit": "3f0b9975f96b7f4e4aae0b4409cebda3209be164", + "commit_url": "https://github.com/cyber-dojo/web/commit/3f0b9975f96b7f4e4aae0b4409cebda3209be164", "git_commit_info": { - "sha1": "c6db342472238a7852b6ff31b04f9a6a6099f5cf", - "message": "Merge pull request #242 from cyber-dojo/declare-sbom-and-provenance-facts-attestations\n\nDeclare sbom and provenance facts+decision attestations in the trail \u2026", - "author": "Jon Jagger ", + "sha1": "3f0b9975f96b7f4e4aae0b4409cebda3209be164", + "message": "Merge pull request #385 from cyber-dojo/add-drift-detection\n\nRead deployed image for drift-detection plan", + "author": "Graham Savage ", "branch": "", - "timestamp": 1783536555.0, - "url": "https://github.com/cyber-dojo/languages-start-points/commit/c6db342472238a7852b6ff31b04f9a6a6099f5cf" - }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci/artifacts/f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418?artifact_id=ed104a44-8358-4883-beeb-ac3c8bb7", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci", + "timestamp": 1784296629.0, + "url": "https://github.com/cyber-dojo/web/commit/3f0b9975f96b7f4e4aae0b4409cebda3209be164" + }, + "html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci/artifacts/0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972?artifact_id=0f00c8a9-1489-416c-b64f-5819890f", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/languages-start-points/compare/04e0e14bb8874ab521d35c97d6040133f0d2143a...c6db342472238a7852b6ff31b04f9a6a6099f5cf", - "previous_git_commit": "04e0e14bb8874ab521d35c97d6040133f0d2143a", - "previous_fingerprint": "a89642efb4e686ea38d597e20c2c3f256649d8bca02e2d923767844a6897667c", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:04e0e14@sha256:a89642efb4e686ea38d597e20c2c3f256649d8bca02e2d923767844a6897667c", + "diff_url": "https://github.com/cyber-dojo/web/compare/bdf01beca687a34db9689499bd805cfc752a1747...3f0b9975f96b7f4e4aae0b4409cebda3209be164", + "previous_git_commit": "bdf01beca687a34db9689499bd805cfc752a1747", + "previous_fingerprint": "64c1342f34dfbf19a5da21b0b027ac20abdbc1be6e1c763ff90a83ae207f9920", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:bdf01be@sha256:64c1342f34dfbf19a5da21b0b027ac20abdbc1be6e1c763ff90a83ae207f9920", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/04e0e14bb8874ab521d35c97d6040133f0d2143a", - "previous_trail_name": "04e0e14bb8874ab521d35c97d6040133f0d2143a", - "previous_template_reference_name": "languages-start-points" + "previous_git_commit_url": "https://github.com/cyber-dojo/web/commit/bdf01beca687a34db9689499bd805cfc752a1747", + "previous_trail_name": "bdf01beca687a34db9689499bd805cfc752a1747", + "previous_template_reference_name": "web" }, - "commit_lead_time": 81654.0, + "commit_lead_time": 56258.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { - "flow_name": "production-promotion", - "trail_name": "promote-all-30", - "template_reference_name": "languages-start-points", - "git_commit": "d7e31ce0207b766140ae689f38625da4374acf87", - "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/d7e31ce0207b766140ae689f38625da4374acf87", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "web-0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", + "template_reference_name": "web", + "git_commit": "35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", + "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", "git_commit_info": { - "sha1": "d7e31ce0207b766140ae689f38625da4374acf87", - "message": "Merge pull request #15 from cyber-dojo/delete-dead-comments\n\nDelete dead comments", - "author": "Jon Jagger ", + "sha1": "35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", + "message": "Add emoji prefixes to workflow names\n\n Match the visual convention already used in the kosli-demo/stochastic-committer\n repo, where the Actions sidebar distinguishes workflow roles at a glance.\n\n The two aws-* files are the top-level entry points, triggered by dispatch and\n schedule, so they get the play emoji. The three reusable workflow_call\n sub-workflows get the package emoji to mark them as callable building blocks.", + "author": "JonJagger ", "branch": "main", - "timestamp": 1782907108.0, - "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/d7e31ce0207b766140ae689f38625da4374acf87" + "timestamp": 1783850974.0, + "url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418?artifact_id=a9535090-47a2-4ea2-8827-c368a63e", - "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/0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972?artifact_id=7a70a8fa-ae6d-40c2-9aea-532dfae2", + "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/d7e31ce0207b766140ae689f38625da4374acf87...d7e31ce0207b766140ae689f38625da4374acf87", - "previous_git_commit": "d7e31ce0207b766140ae689f38625da4374acf87", - "previous_fingerprint": "a89642efb4e686ea38d597e20c2c3f256649d8bca02e2d923767844a6897667c", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:04e0e14@sha256:a89642efb4e686ea38d597e20c2c3f256649d8bca02e2d923767844a6897667c", + "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/a517304f4e9013e2e9ea67e90c7342f7e56653f0...35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", + "previous_git_commit": "a517304f4e9013e2e9ea67e90c7342f7e56653f0", + "previous_fingerprint": "929748bb88b31863da9cd8d62a5039c274ff3c669f2ef05bc025e6989d2c1eab", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:97ebee5@sha256:929748bb88b31863da9cd8d62a5039c274ff3c669f2ef05bc025e6989d2c1eab", "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-29", - "previous_template_reference_name": "languages-start-points" + "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/a517304f4e9013e2e9ea67e90c7342f7e56653f0", + "previous_trail_name": "web-929748bb88b31863da9cd8d62a5039c274ff3c669f2ef05bc025e6989d2c1eab", + "previous_template_reference_name": "web" }, - "commit_lead_time": 711101.0, + "commit_lead_time": 501913.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", - "template_reference_name": "languages-start-points", - "git_commit": "35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", - "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", + "flow_name": "production-promotion", + "trail_name": "promotion-one-130", + "template_reference_name": "web", + "git_commit": "76325d840dc66e1c84743725e17de05a16616419", + "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/76325d840dc66e1c84743725e17de05a16616419", "git_commit_info": { - "sha1": "35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", - "message": "Add emoji prefixes to workflow names\n\n Match the visual convention already used in the kosli-demo/stochastic-committer\n repo, where the Actions sidebar distinguishes workflow roles at a glance.\n\n The two aws-* files are the top-level entry points, triggered by dispatch and\n schedule, so they get the play emoji. The three reusable workflow_call\n sub-workflows get the package emoji to mark them as callable building blocks.", + "sha1": "76325d840dc66e1c84743725e17de05a16616419", + "message": "Add emoji prefix to workflow names", "author": "JonJagger ", "branch": "main", - "timestamp": 1783850974.0, - "url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7" + "timestamp": 1783852701.0, + "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/76325d840dc66e1c84743725e17de05a16616419" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418?artifact_id=15c2cd90-9acb-472f-bd2a-93299448", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact", + "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972?artifact_id=ef4ad7ac-354a-4541-beb1-9d1e1ac7", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/00c479764cb9eca038fdaaaef108672d0bb0ed26...35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", - "previous_git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_fingerprint": "b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:7e86fed@sha256:b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676", + "diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/76325d840dc66e1c84743725e17de05a16616419...76325d840dc66e1c84743725e17de05a16616419", + "previous_git_commit": "76325d840dc66e1c84743725e17de05a16616419", + "previous_fingerprint": "64c1342f34dfbf19a5da21b0b027ac20abdbc1be6e1c763ff90a83ae207f9920", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:bdf01be@sha256:64c1342f34dfbf19a5da21b0b027ac20abdbc1be6e1c763ff90a83ae207f9920", "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_git_commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/76325d840dc66e1c84743725e17de05a16616419", + "previous_trail_name": "promotion-one-125", + "previous_template_reference_name": "web" }, - "commit_lead_time": -232765.0, + "commit_lead_time": 500186.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", - "template_reference_name": "languages-start-points", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "web-0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", + "template_reference_name": "web", "git_commit": "35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", "git_commit_info": { @@ -4957,32 +4382,32 @@ kosli get snapshot aws-prod --output=json "timestamp": 1783850974.0, "url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418?artifact_id=c03b0261-dfb5-4626-9b43-e3bfc66c", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972?artifact_id=ed58b953-1596-4471-a563-64268026", + "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/c17bb3ed8862de03c1a491dfe790fd8734fc7071...35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", - "previous_git_commit": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", - "previous_fingerprint": "5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:bb8a712@sha256:5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", + "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/00c479764cb9eca038fdaaaef108672d0bb0ed26...35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", + "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/c17bb3ed8862de03c1a491dfe790fd8734fc7071", - "previous_trail_name": "languages-start-points-5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", - "previous_template_reference_name": "languages-start-points" + "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": -232765.0, + "commit_lead_time": 501913.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] } ], "ecs_context": { - "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/e0989e55de644314bd7c0db5f877729c", + "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/ef2471a4418645c1ae25de259e1ac91f", "cluster_name": null, "service_name": null } }, { - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:d37aace@sha256:1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:335ddfa@sha256:c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", "compliant": true, "deployments": [], "policy_decisions": [ @@ -5004,8 +4429,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "custom-start-points-ci", - "trail_name": "d37aace7598ee943ba0bd5e51f224335cbdf0a3e", + "flow_name": "differ-ci", + "trail_name": "335ddfa139708c37908dd594a0502bc6d88f8615", "artifact_status": null } }, @@ -5013,23 +4438,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-128", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "differ-c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "differ-c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", "artifact_status": null } } @@ -5049,8 +4474,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "custom-start-points-ci", - "trail_name": "d37aace7598ee943ba0bd5e51f224335cbdf0a3e", + "flow_name": "differ-ci", + "trail_name": "335ddfa139708c37908dd594a0502bc6d88f8615", "artifact_status": "COMPLIANT" } }, @@ -5058,23 +4483,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-128", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "differ-c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "differ-c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", "artifact_status": "COMPLIANT" } } @@ -5099,8 +4524,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "custom-start-points-ci", - "trail_name": "d37aace7598ee943ba0bd5e51f224335cbdf0a3e", + "flow_name": "differ-ci", + "trail_name": "335ddfa139708c37908dd594a0502bc6d88f8615", "artifact_status": null } }, @@ -5108,23 +4533,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-128", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "differ-c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "differ-c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", "artifact_status": null } } @@ -5151,8 +4576,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "custom-start-points-ci", - "trail_name": "d37aace7598ee943ba0bd5e51f224335cbdf0a3e", + "flow_name": "differ-ci", + "trail_name": "335ddfa139708c37908dd594a0502bc6d88f8615", "artifact_status": null } }, @@ -5160,23 +4585,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-128", "artifact_status": null } }, { "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "differ-c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", "artifact_status": null } }, { "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "differ-c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", "artifact_status": null } } @@ -5196,8 +4621,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "custom-start-points-ci", - "trail_name": "d37aace7598ee943ba0bd5e51f224335cbdf0a3e", + "flow_name": "differ-ci", + "trail_name": "335ddfa139708c37908dd594a0502bc6d88f8615", "artifact_status": "COMPLIANT" } }, @@ -5205,23 +4630,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-128", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "differ-c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "differ-c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", "artifact_status": "COMPLIANT" } } @@ -5246,8 +4671,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "custom-start-points-ci", - "trail_name": "d37aace7598ee943ba0bd5e51f224335cbdf0a3e", + "flow_name": "differ-ci", + "trail_name": "335ddfa139708c37908dd594a0502bc6d88f8615", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -5256,7 +4681,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-128", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -5264,8 +4689,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "differ-c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -5273,8 +4698,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "differ-c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -5302,8 +4727,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "custom-start-points-ci", - "trail_name": "d37aace7598ee943ba0bd5e51f224335cbdf0a3e", + "flow_name": "differ-ci", + "trail_name": "335ddfa139708c37908dd594a0502bc6d88f8615", "artifact_status": null } }, @@ -5311,23 +4736,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-128", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "differ-c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "differ-c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", "artifact_status": null } } @@ -5347,8 +4772,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "custom-start-points-ci", - "trail_name": "d37aace7598ee943ba0bd5e51f224335cbdf0a3e", + "flow_name": "differ-ci", + "trail_name": "335ddfa139708c37908dd594a0502bc6d88f8615", "artifact_status": "COMPLIANT" } }, @@ -5356,23 +4781,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-128", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "differ-c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "differ-c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", "artifact_status": "COMPLIANT" } } @@ -5397,8 +4822,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "custom-start-points-ci", - "trail_name": "d37aace7598ee943ba0bd5e51f224335cbdf0a3e", + "flow_name": "differ-ci", + "trail_name": "335ddfa139708c37908dd594a0502bc6d88f8615", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -5407,25 +4832,25 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-128", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } }, { - "type": "rule_satisfied", + "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "differ-c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } }, { - "type": "rule_not_applicable", + "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "differ-c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -5453,8 +4878,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "custom-start-points-ci", - "trail_name": "d37aace7598ee943ba0bd5e51f224335cbdf0a3e", + "flow_name": "differ-ci", + "trail_name": "335ddfa139708c37908dd594a0502bc6d88f8615", "artifact_status": null } }, @@ -5462,23 +4887,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-128", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "differ-c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "differ-c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", "artifact_status": null } } @@ -5498,8 +4923,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "custom-start-points-ci", - "trail_name": "d37aace7598ee943ba0bd5e51f224335cbdf0a3e", + "flow_name": "differ-ci", + "trail_name": "335ddfa139708c37908dd594a0502bc6d88f8615", "artifact_status": "COMPLIANT" } }, @@ -5507,23 +4932,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-128", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "differ-c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "differ-c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", "artifact_status": "COMPLIANT" } } @@ -5548,8 +4973,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "custom-start-points-ci", - "trail_name": "d37aace7598ee943ba0bd5e51f224335cbdf0a3e", + "flow_name": "differ-ci", + "trail_name": "335ddfa139708c37908dd594a0502bc6d88f8615", "artifact_status": null } }, @@ -5557,23 +4982,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-128", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "differ-c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "differ-c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", "artifact_status": null } } @@ -5600,8 +5025,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "custom-start-points-ci", - "trail_name": "d37aace7598ee943ba0bd5e51f224335cbdf0a3e", + "flow_name": "differ-ci", + "trail_name": "335ddfa139708c37908dd594a0502bc6d88f8615", "artifact_status": null } }, @@ -5609,23 +5034,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-128", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "differ-c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "differ-c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", "artifact_status": null } } @@ -5651,8 +5076,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "custom-start-points-ci", - "trail_name": "d37aace7598ee943ba0bd5e51f224335cbdf0a3e", + "flow_name": "differ-ci", + "trail_name": "335ddfa139708c37908dd594a0502bc6d88f8615", "artifact_status": "COMPLIANT" } }, @@ -5660,23 +5085,23 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "trail_name": "promotion-one-128", "artifact_status": "COMPLIANT" } }, { - "type": "rule_satisfied", + "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "differ-c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", "artifact_status": "COMPLIANT" } }, { - "type": "rule_not_applicable", + "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "differ-c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", "artifact_status": "COMPLIANT" } } @@ -5687,9 +5112,9 @@ kosli get snapshot aws-prod --output=json } ], "reasons_for_incompliance": [], - "fingerprint": "1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", + "fingerprint": "c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", "creationTimestamp": [ - 1783618204 + 1784184597 ], "pods": null, "annotation": { @@ -5697,90 +5122,90 @@ kosli get snapshot aws-prod --output=json "was": 1, "now": 1 }, - "flow_name": "custom-start-points-ci", - "git_commit": "d37aace7598ee943ba0bd5e51f224335cbdf0a3e", - "commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/d37aace7598ee943ba0bd5e51f224335cbdf0a3e", - "html_url": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci/artifacts/1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400?artifact_id=e434f9eb-be9c-4851-ab99-187f1a26", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci", + "flow_name": "differ-ci", + "git_commit": "335ddfa139708c37908dd594a0502bc6d88f8615", + "commit_url": "https://github.com/cyber-dojo/differ/commit/335ddfa139708c37908dd594a0502bc6d88f8615", + "html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci/artifacts/c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f?artifact_id=5f3d2a2e-acdb-4414-a1e7-ebca7c32", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/custom-start-points/compare/fc6b09be0518fbf8ab76815cb85b1745631e3659...d37aace7598ee943ba0bd5e51f224335cbdf0a3e", - "previous_git_commit": "fc6b09be0518fbf8ab76815cb85b1745631e3659", - "previous_fingerprint": "1dbac604d2f08378e085032c135be4f4910559a7d7723c26372724d6fb8010d1", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:fc6b09b@sha256:1dbac604d2f08378e085032c135be4f4910559a7d7723c26372724d6fb8010d1", + "diff_url": "https://github.com/cyber-dojo/differ/compare/8beff9901ac67acb7afcab3408106208571a1124...335ddfa139708c37908dd594a0502bc6d88f8615", + "previous_git_commit": "8beff9901ac67acb7afcab3408106208571a1124", + "previous_fingerprint": "7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:8beff99@sha256:7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/fc6b09be0518fbf8ab76815cb85b1745631e3659", - "previous_trail_name": "fc6b09be0518fbf8ab76815cb85b1745631e3659", - "previous_template_reference_name": "custom-start-points" + "previous_git_commit_url": "https://github.com/cyber-dojo/differ/commit/8beff9901ac67acb7afcab3408106208571a1124", + "previous_trail_name": "8beff9901ac67acb7afcab3408106208571a1124", + "previous_template_reference_name": "differ" }, - "commit_lead_time": 4272.0, + "commit_lead_time": 423508.0, "flows": [ { - "flow_name": "custom-start-points-ci", - "trail_name": "d37aace7598ee943ba0bd5e51f224335cbdf0a3e", - "template_reference_name": "custom-start-points", - "git_commit": "d37aace7598ee943ba0bd5e51f224335cbdf0a3e", - "commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/d37aace7598ee943ba0bd5e51f224335cbdf0a3e", + "flow_name": "differ-ci", + "trail_name": "335ddfa139708c37908dd594a0502bc6d88f8615", + "template_reference_name": "differ", + "git_commit": "335ddfa139708c37908dd594a0502bc6d88f8615", + "commit_url": "https://github.com/cyber-dojo/differ/commit/335ddfa139708c37908dd594a0502bc6d88f8615", "git_commit_info": { - "sha1": "d37aace7598ee943ba0bd5e51f224335cbdf0a3e", - "message": "Merge pull request #139 from cyber-dojo/run-workflow-171\n\nRun main workflow to check updates to secure-build sub workflow", + "sha1": "335ddfa139708c37908dd594a0502bc6d88f8615", + "message": "Run workflow so image has updated git to fix new cares snyk vuln (#431)", "author": "Jon Jagger ", "branch": "", - "timestamp": 1783613932.0, - "url": "https://github.com/cyber-dojo/custom-start-points/commit/d37aace7598ee943ba0bd5e51f224335cbdf0a3e" + "timestamp": 1783761089.0, + "url": "https://github.com/cyber-dojo/differ/commit/335ddfa139708c37908dd594a0502bc6d88f8615" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci/artifacts/1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400?artifact_id=e434f9eb-be9c-4851-ab99-187f1a26", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci", + "html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci/artifacts/c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f?artifact_id=5f3d2a2e-acdb-4414-a1e7-ebca7c32", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/custom-start-points/compare/fc6b09be0518fbf8ab76815cb85b1745631e3659...d37aace7598ee943ba0bd5e51f224335cbdf0a3e", - "previous_git_commit": "fc6b09be0518fbf8ab76815cb85b1745631e3659", - "previous_fingerprint": "1dbac604d2f08378e085032c135be4f4910559a7d7723c26372724d6fb8010d1", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:fc6b09b@sha256:1dbac604d2f08378e085032c135be4f4910559a7d7723c26372724d6fb8010d1", + "diff_url": "https://github.com/cyber-dojo/differ/compare/8beff9901ac67acb7afcab3408106208571a1124...335ddfa139708c37908dd594a0502bc6d88f8615", + "previous_git_commit": "8beff9901ac67acb7afcab3408106208571a1124", + "previous_fingerprint": "7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:8beff99@sha256:7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/fc6b09be0518fbf8ab76815cb85b1745631e3659", - "previous_trail_name": "fc6b09be0518fbf8ab76815cb85b1745631e3659", - "previous_template_reference_name": "custom-start-points" + "previous_git_commit_url": "https://github.com/cyber-dojo/differ/commit/8beff9901ac67acb7afcab3408106208571a1124", + "previous_trail_name": "8beff9901ac67acb7afcab3408106208571a1124", + "previous_template_reference_name": "differ" }, - "commit_lead_time": 4272.0, + "commit_lead_time": 423508.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "production-promotion", - "trail_name": "promote-all-30", - "template_reference_name": "custom-start-points", - "git_commit": "d7e31ce0207b766140ae689f38625da4374acf87", - "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/d7e31ce0207b766140ae689f38625da4374acf87", + "trail_name": "promotion-one-128", + "template_reference_name": "differ", + "git_commit": "76325d840dc66e1c84743725e17de05a16616419", + "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/76325d840dc66e1c84743725e17de05a16616419", "git_commit_info": { - "sha1": "d7e31ce0207b766140ae689f38625da4374acf87", - "message": "Merge pull request #15 from cyber-dojo/delete-dead-comments\n\nDelete dead comments", - "author": "Jon Jagger ", + "sha1": "76325d840dc66e1c84743725e17de05a16616419", + "message": "Add emoji prefix to workflow names", + "author": "JonJagger ", "branch": "main", - "timestamp": 1782907108.0, - "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/d7e31ce0207b766140ae689f38625da4374acf87" + "timestamp": 1783852701.0, + "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/76325d840dc66e1c84743725e17de05a16616419" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400?artifact_id=f63f0700-2e41-44a7-ab00-31da5193", + "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f?artifact_id=c445f15d-1957-4d94-9123-d67ad0b8", "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...d7e31ce0207b766140ae689f38625da4374acf87", + "diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/d7e31ce0207b766140ae689f38625da4374acf87...76325d840dc66e1c84743725e17de05a16616419", "previous_git_commit": "d7e31ce0207b766140ae689f38625da4374acf87", - "previous_fingerprint": "1dbac604d2f08378e085032c135be4f4910559a7d7723c26372724d6fb8010d1", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:fc6b09b@sha256:1dbac604d2f08378e085032c135be4f4910559a7d7723c26372724d6fb8010d1", + "previous_fingerprint": "7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:8beff99@sha256:7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", "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-29", - "previous_template_reference_name": "custom-start-points" + "previous_trail_name": "promote-all-30", + "previous_template_reference_name": "differ" }, - "commit_lead_time": 711096.0, + "commit_lead_time": 331896.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", - "template_reference_name": "custom-start-points", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "differ-c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", + "template_reference_name": "differ", "git_commit": "35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", "git_commit_info": { @@ -5791,27 +5216,27 @@ kosli get snapshot aws-prod --output=json "timestamp": 1783850974.0, "url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400?artifact_id=289e3f72-1142-4bb3-a33e-42bfc205", - "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/c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f?artifact_id=dd1d108b-6d0a-47fb-8d6e-046c2862", + "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...35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", - "previous_git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_fingerprint": "b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:6b5c159@sha256:b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928", + "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/a517304f4e9013e2e9ea67e90c7342f7e56653f0...35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", + "previous_git_commit": "a517304f4e9013e2e9ea67e90c7342f7e56653f0", + "previous_fingerprint": "7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:8beff99@sha256:7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_trail_name": "custom-start-points-b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928", - "previous_template_reference_name": "custom-start-points" + "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/a517304f4e9013e2e9ea67e90c7342f7e56653f0", + "previous_trail_name": "differ-7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", + "previous_template_reference_name": "differ" }, - "commit_lead_time": -232770.0, + "commit_lead_time": 333623.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", - "template_reference_name": "custom-start-points", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "differ-c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", + "template_reference_name": "differ", "git_commit": "35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", "git_commit_info": { @@ -5822,32 +5247,32 @@ kosli get snapshot aws-prod --output=json "timestamp": 1783850974.0, "url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400?artifact_id=a7aecd18-7c13-495d-bf39-cc8b3fd8", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f?artifact_id=099f1d69-8d7b-4226-8755-7ed23538", + "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/c17bb3ed8862de03c1a491dfe790fd8734fc7071...35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", - "previous_git_commit": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", - "previous_fingerprint": "311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:514f79a@sha256:311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", + "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/00c479764cb9eca038fdaaaef108672d0bb0ed26...35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", + "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/c17bb3ed8862de03c1a491dfe790fd8734fc7071", - "previous_trail_name": "custom-start-points-311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", - "previous_template_reference_name": "custom-start-points" + "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": -232770.0, + "commit_lead_time": 333623.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] } ], "ecs_context": { - "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/5333f9f522e74ab797a3893465e348d9", + "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/28557ef6830842138dd4db99a13c5d4a", "cluster_name": null, "service_name": null } }, { - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:e475768@sha256:54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:7ba8029@sha256:3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5", "compliant": true, "deployments": [], "policy_decisions": [ @@ -5869,24 +5294,24 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "dashboard-ci", - "trail_name": "e4757683b74df7033c95aa544a7824b395c2f8bb", + "flow_name": "nginx-ci", + "trail_name": "7ba8029e0cb5d4c8fa51360f59b5cb8714a60d47", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", + "flow_name": "production-promotion", + "trail_name": "promotion-one-127", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "nginx-3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5", "artifact_status": null } }, @@ -5894,7 +5319,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", + "trail_name": "nginx-3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5", "artifact_status": null } } @@ -5914,24 +5339,24 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "dashboard-ci", - "trail_name": "e4757683b74df7033c95aa544a7824b395c2f8bb", + "flow_name": "nginx-ci", + "trail_name": "7ba8029e0cb5d4c8fa51360f59b5cb8714a60d47", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", + "flow_name": "production-promotion", + "trail_name": "promotion-one-127", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "nginx-3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5", "artifact_status": "COMPLIANT" } }, @@ -5939,7 +5364,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", + "trail_name": "nginx-3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5", "artifact_status": "COMPLIANT" } } @@ -5964,24 +5389,24 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "dashboard-ci", - "trail_name": "e4757683b74df7033c95aa544a7824b395c2f8bb", + "flow_name": "nginx-ci", + "trail_name": "7ba8029e0cb5d4c8fa51360f59b5cb8714a60d47", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", + "flow_name": "production-promotion", + "trail_name": "promotion-one-127", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "nginx-3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5", "artifact_status": null } }, @@ -5989,7 +5414,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", + "trail_name": "nginx-3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5", "artifact_status": null } } @@ -6016,24 +5441,24 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "dashboard-ci", - "trail_name": "e4757683b74df7033c95aa544a7824b395c2f8bb", + "flow_name": "nginx-ci", + "trail_name": "7ba8029e0cb5d4c8fa51360f59b5cb8714a60d47", "artifact_status": null } }, { "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", + "flow_name": "production-promotion", + "trail_name": "promotion-one-127", "artifact_status": null } }, { "type": "rule_satisfied", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "nginx-3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5", "artifact_status": null } }, @@ -6041,7 +5466,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", + "trail_name": "nginx-3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5", "artifact_status": null } } @@ -6061,24 +5486,24 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "dashboard-ci", - "trail_name": "e4757683b74df7033c95aa544a7824b395c2f8bb", + "flow_name": "nginx-ci", + "trail_name": "7ba8029e0cb5d4c8fa51360f59b5cb8714a60d47", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", + "flow_name": "production-promotion", + "trail_name": "promotion-one-127", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "nginx-3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5", "artifact_status": "COMPLIANT" } }, @@ -6086,7 +5511,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", + "trail_name": "nginx-3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5", "artifact_status": "COMPLIANT" } } @@ -6111,8 +5536,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "dashboard-ci", - "trail_name": "e4757683b74df7033c95aa544a7824b395c2f8bb", + "flow_name": "nginx-ci", + "trail_name": "7ba8029e0cb5d4c8fa51360f59b5cb8714a60d47", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -6120,8 +5545,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", + "flow_name": "production-promotion", + "trail_name": "promotion-one-127", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -6129,8 +5554,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "nginx-3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -6139,7 +5564,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", + "trail_name": "nginx-3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -6167,24 +5592,24 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "dashboard-ci", - "trail_name": "e4757683b74df7033c95aa544a7824b395c2f8bb", + "flow_name": "nginx-ci", + "trail_name": "7ba8029e0cb5d4c8fa51360f59b5cb8714a60d47", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", + "flow_name": "production-promotion", + "trail_name": "promotion-one-127", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "nginx-3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5", "artifact_status": null } }, @@ -6192,7 +5617,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", + "trail_name": "nginx-3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5", "artifact_status": null } } @@ -6212,24 +5637,24 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "dashboard-ci", - "trail_name": "e4757683b74df7033c95aa544a7824b395c2f8bb", + "flow_name": "nginx-ci", + "trail_name": "7ba8029e0cb5d4c8fa51360f59b5cb8714a60d47", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", + "flow_name": "production-promotion", + "trail_name": "promotion-one-127", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "nginx-3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5", "artifact_status": "COMPLIANT" } }, @@ -6237,7 +5662,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", + "trail_name": "nginx-3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5", "artifact_status": "COMPLIANT" } } @@ -6262,8 +5687,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "dashboard-ci", - "trail_name": "e4757683b74df7033c95aa544a7824b395c2f8bb", + "flow_name": "nginx-ci", + "trail_name": "7ba8029e0cb5d4c8fa51360f59b5cb8714a60d47", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -6271,8 +5696,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", + "flow_name": "production-promotion", + "trail_name": "promotion-one-127", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -6280,8 +5705,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "nginx-3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -6290,7 +5715,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", + "trail_name": "nginx-3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -6318,24 +5743,24 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "dashboard-ci", - "trail_name": "e4757683b74df7033c95aa544a7824b395c2f8bb", + "flow_name": "nginx-ci", + "trail_name": "7ba8029e0cb5d4c8fa51360f59b5cb8714a60d47", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", + "flow_name": "production-promotion", + "trail_name": "promotion-one-127", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "nginx-3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5", "artifact_status": null } }, @@ -6343,7 +5768,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", + "trail_name": "nginx-3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5", "artifact_status": null } } @@ -6363,24 +5788,24 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "dashboard-ci", - "trail_name": "e4757683b74df7033c95aa544a7824b395c2f8bb", + "flow_name": "nginx-ci", + "trail_name": "7ba8029e0cb5d4c8fa51360f59b5cb8714a60d47", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", + "flow_name": "production-promotion", + "trail_name": "promotion-one-127", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "nginx-3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5", "artifact_status": "COMPLIANT" } }, @@ -6388,7 +5813,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", + "trail_name": "nginx-3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5", "artifact_status": "COMPLIANT" } } @@ -6413,24 +5838,24 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "dashboard-ci", - "trail_name": "e4757683b74df7033c95aa544a7824b395c2f8bb", + "flow_name": "nginx-ci", + "trail_name": "7ba8029e0cb5d4c8fa51360f59b5cb8714a60d47", "artifact_status": null } }, { - "type": "rule_not_applicable", + "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", + "flow_name": "production-promotion", + "trail_name": "promotion-one-127", "artifact_status": null } }, { - "type": "rule_satisfied", + "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "nginx-3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5", "artifact_status": null } }, @@ -6438,7 +5863,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", + "trail_name": "nginx-3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5", "artifact_status": null } } @@ -6465,24 +5890,24 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "dashboard-ci", - "trail_name": "e4757683b74df7033c95aa544a7824b395c2f8bb", + "flow_name": "nginx-ci", + "trail_name": "7ba8029e0cb5d4c8fa51360f59b5cb8714a60d47", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", + "flow_name": "production-promotion", + "trail_name": "promotion-one-127", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "nginx-3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5", "artifact_status": null } }, @@ -6490,7 +5915,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", + "trail_name": "nginx-3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5", "artifact_status": null } } @@ -6516,24 +5941,24 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "dashboard-ci", - "trail_name": "e4757683b74df7033c95aa544a7824b395c2f8bb", + "flow_name": "nginx-ci", + "trail_name": "7ba8029e0cb5d4c8fa51360f59b5cb8714a60d47", "artifact_status": "COMPLIANT" } }, { - "type": "rule_not_applicable", + "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", + "flow_name": "production-promotion", + "trail_name": "promotion-one-127", "artifact_status": "COMPLIANT" } }, { - "type": "rule_satisfied", + "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "nginx-3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5", "artifact_status": "COMPLIANT" } }, @@ -6541,7 +5966,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", + "trail_name": "nginx-3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5", "artifact_status": "COMPLIANT" } } @@ -6552,9 +5977,9 @@ kosli get snapshot aws-prod --output=json } ], "reasons_for_incompliance": [], - "fingerprint": "54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", + "fingerprint": "3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5", "creationTimestamp": [ - 1783618197 + 1784183551 ], "pods": null, "annotation": { @@ -6562,121 +5987,121 @@ kosli get snapshot aws-prod --output=json "was": 1, "now": 1 }, - "flow_name": "dashboard-ci", - "git_commit": "e4757683b74df7033c95aa544a7824b395c2f8bb", - "commit_url": "https://github.com/cyber-dojo/dashboard/commit/e4757683b74df7033c95aa544a7824b395c2f8bb", - "html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci/artifacts/54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb?artifact_id=cc7c618f-d22e-4d95-b6f1-cea4fded", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci", + "flow_name": "nginx-ci", + "git_commit": "7ba8029e0cb5d4c8fa51360f59b5cb8714a60d47", + "commit_url": "https://github.com/cyber-dojo/nginx/commit/7ba8029e0cb5d4c8fa51360f59b5cb8714a60d47", + "html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci/artifacts/3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5?artifact_id=5c293d3e-84a1-42dd-8215-6abd8d8d", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/dashboard/compare/6d203a85ffda1513db4d86d4e48b1f969bd2f510...e4757683b74df7033c95aa544a7824b395c2f8bb", - "previous_git_commit": "6d203a85ffda1513db4d86d4e48b1f969bd2f510", - "previous_fingerprint": "4d1ba1622515a86443d2ec4b76df41daa7b98daabeb557a134607f6e200e8ebc", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:6d203a8@sha256:4d1ba1622515a86443d2ec4b76df41daa7b98daabeb557a134607f6e200e8ebc", + "diff_url": "https://github.com/cyber-dojo/nginx/compare/9b711df71c76a1f293c2525ace65778036591baf...7ba8029e0cb5d4c8fa51360f59b5cb8714a60d47", + "previous_git_commit": "9b711df71c76a1f293c2525ace65778036591baf", + "previous_fingerprint": "0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:9b711df@sha256:0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/dashboard/commit/6d203a85ffda1513db4d86d4e48b1f969bd2f510", - "previous_trail_name": "6d203a85ffda1513db4d86d4e48b1f969bd2f510", - "previous_template_reference_name": "dashboard" + "previous_git_commit_url": "https://github.com/cyber-dojo/nginx/commit/9b711df71c76a1f293c2525ace65778036591baf", + "previous_trail_name": "9b711df71c76a1f293c2525ace65778036591baf", + "previous_template_reference_name": "nginx" }, - "commit_lead_time": 79687.0, + "commit_lead_time": 1377.0, "flows": [ { - "flow_name": "dashboard-ci", - "trail_name": "e4757683b74df7033c95aa544a7824b395c2f8bb", - "template_reference_name": "dashboard", - "git_commit": "e4757683b74df7033c95aa544a7824b395c2f8bb", - "commit_url": "https://github.com/cyber-dojo/dashboard/commit/e4757683b74df7033c95aa544a7824b395c2f8bb", + "flow_name": "nginx-ci", + "trail_name": "7ba8029e0cb5d4c8fa51360f59b5cb8714a60d47", + "template_reference_name": "nginx", + "git_commit": "7ba8029e0cb5d4c8fa51360f59b5cb8714a60d47", + "commit_url": "https://github.com/cyber-dojo/nginx/commit/7ba8029e0cb5d4c8fa51360f59b5cb8714a60d47", "git_commit_info": { - "sha1": "e4757683b74df7033c95aa544a7824b395c2f8bb", - "message": "Update kosli template with provenance facts+decision (#414)", + "sha1": "7ba8029e0cb5d4c8fa51360f59b5cb8714a60d47", + "message": "Merge pull request #159 from cyber-dojo/remove-curl-fix-snyk-alpine323-curl-17970543\n\nRemove curl to clear recurring Alpine libcurl CVEs", "author": "Jon Jagger ", "branch": "", - "timestamp": 1783538510.0, - "url": "https://github.com/cyber-dojo/dashboard/commit/e4757683b74df7033c95aa544a7824b395c2f8bb" + "timestamp": 1784182174.0, + "url": "https://github.com/cyber-dojo/nginx/commit/7ba8029e0cb5d4c8fa51360f59b5cb8714a60d47" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci/artifacts/54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb?artifact_id=cc7c618f-d22e-4d95-b6f1-cea4fded", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci", + "html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci/artifacts/3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5?artifact_id=5c293d3e-84a1-42dd-8215-6abd8d8d", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/nginx-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/dashboard/compare/6d203a85ffda1513db4d86d4e48b1f969bd2f510...e4757683b74df7033c95aa544a7824b395c2f8bb", - "previous_git_commit": "6d203a85ffda1513db4d86d4e48b1f969bd2f510", - "previous_fingerprint": "4d1ba1622515a86443d2ec4b76df41daa7b98daabeb557a134607f6e200e8ebc", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:6d203a8@sha256:4d1ba1622515a86443d2ec4b76df41daa7b98daabeb557a134607f6e200e8ebc", + "diff_url": "https://github.com/cyber-dojo/nginx/compare/9b711df71c76a1f293c2525ace65778036591baf...7ba8029e0cb5d4c8fa51360f59b5cb8714a60d47", + "previous_git_commit": "9b711df71c76a1f293c2525ace65778036591baf", + "previous_fingerprint": "0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:9b711df@sha256:0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/dashboard/commit/6d203a85ffda1513db4d86d4e48b1f969bd2f510", - "previous_trail_name": "6d203a85ffda1513db4d86d4e48b1f969bd2f510", - "previous_template_reference_name": "dashboard" + "previous_git_commit_url": "https://github.com/cyber-dojo/nginx/commit/9b711df71c76a1f293c2525ace65778036591baf", + "previous_trail_name": "9b711df71c76a1f293c2525ace65778036591baf", + "previous_template_reference_name": "nginx" }, - "commit_lead_time": 79687.0, + "commit_lead_time": 1377.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "dashboard-54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", - "template_reference_name": "dashboard", - "git_commit": "a517304f4e9013e2e9ea67e90c7342f7e56653f0", - "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/a517304f4e9013e2e9ea67e90c7342f7e56653f0", + "flow_name": "production-promotion", + "trail_name": "promotion-one-127", + "template_reference_name": "nginx", + "git_commit": "76325d840dc66e1c84743725e17de05a16616419", + "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/76325d840dc66e1c84743725e17de05a16616419", "git_commit_info": { - "sha1": "a517304f4e9013e2e9ea67e90c7342f7e56653f0", - "message": "Remove unneeded provenance decision attestation - this is not a build flow", + "sha1": "76325d840dc66e1c84743725e17de05a16616419", + "message": "Add emoji prefix to workflow names", "author": "JonJagger ", "branch": "main", - "timestamp": 1782799303.0, - "url": "https://github.com/cyber-dojo/snyk-scanning/commit/a517304f4e9013e2e9ea67e90c7342f7e56653f0" + "timestamp": 1783852701.0, + "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/76325d840dc66e1c84743725e17de05a16616419" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb?artifact_id=345df2c2-785f-4d79-a5fa-0e576d45", - "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/3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5?artifact_id=70dad200-6f93-430c-a06d-e1479d48", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/a517304f4e9013e2e9ea67e90c7342f7e56653f0...a517304f4e9013e2e9ea67e90c7342f7e56653f0", - "previous_git_commit": "a517304f4e9013e2e9ea67e90c7342f7e56653f0", - "previous_fingerprint": "4d1ba1622515a86443d2ec4b76df41daa7b98daabeb557a134607f6e200e8ebc", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:6d203a8@sha256:4d1ba1622515a86443d2ec4b76df41daa7b98daabeb557a134607f6e200e8ebc", + "diff_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/compare/d7e31ce0207b766140ae689f38625da4374acf87...76325d840dc66e1c84743725e17de05a16616419", + "previous_git_commit": "d7e31ce0207b766140ae689f38625da4374acf87", + "previous_fingerprint": "0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:9b711df@sha256:0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/a517304f4e9013e2e9ea67e90c7342f7e56653f0", - "previous_trail_name": "dashboard-4d1ba1622515a86443d2ec4b76df41daa7b98daabeb557a134607f6e200e8ebc", - "previous_template_reference_name": "dashboard" + "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": "nginx" }, - "commit_lead_time": 818894.0, + "commit_lead_time": 330850.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { - "flow_name": "production-promotion", - "trail_name": "promote-all-30", - "template_reference_name": "dashboard", - "git_commit": "d7e31ce0207b766140ae689f38625da4374acf87", - "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/d7e31ce0207b766140ae689f38625da4374acf87", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "nginx-3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5", + "template_reference_name": "nginx", + "git_commit": "35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", + "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", "git_commit_info": { - "sha1": "d7e31ce0207b766140ae689f38625da4374acf87", - "message": "Merge pull request #15 from cyber-dojo/delete-dead-comments\n\nDelete dead comments", - "author": "Jon Jagger ", + "sha1": "35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", + "message": "Add emoji prefixes to workflow names\n\n Match the visual convention already used in the kosli-demo/stochastic-committer\n repo, where the Actions sidebar distinguishes workflow roles at a glance.\n\n The two aws-* files are the top-level entry points, triggered by dispatch and\n schedule, so they get the play emoji. The three reusable workflow_call\n sub-workflows get the package emoji to mark them as callable building blocks.", + "author": "JonJagger ", "branch": "main", - "timestamp": 1782907108.0, - "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/d7e31ce0207b766140ae689f38625da4374acf87" + "timestamp": 1783850974.0, + "url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb?artifact_id=58819de1-c255-4e0c-a08d-e5807021", - "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/3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5?artifact_id=39abaccd-2adc-48e5-992d-8804e957", + "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/d7e31ce0207b766140ae689f38625da4374acf87...d7e31ce0207b766140ae689f38625da4374acf87", - "previous_git_commit": "d7e31ce0207b766140ae689f38625da4374acf87", - "previous_fingerprint": "4d1ba1622515a86443d2ec4b76df41daa7b98daabeb557a134607f6e200e8ebc", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:6d203a8@sha256:4d1ba1622515a86443d2ec4b76df41daa7b98daabeb557a134607f6e200e8ebc", + "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/d07d841723e4e524e4ea4d7dc8a7e60f0fc3349e...35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", + "previous_git_commit": "d07d841723e4e524e4ea4d7dc8a7e60f0fc3349e", + "previous_fingerprint": "8bc44a90894de99aa76cd931ea42e2544b0727c5e3842ea57e4f08cace175ca9", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:66c0766@sha256:8bc44a90894de99aa76cd931ea42e2544b0727c5e3842ea57e4f08cace175ca9", "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-29", - "previous_template_reference_name": "dashboard" + "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/d07d841723e4e524e4ea4d7dc8a7e60f0fc3349e", + "previous_trail_name": "nginx-8bc44a90894de99aa76cd931ea42e2544b0727c5e3842ea57e4f08cace175ca9", + "previous_template_reference_name": "nginx" }, - "commit_lead_time": 711089.0, + "commit_lead_time": 332577.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "dashboard-54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", - "template_reference_name": "dashboard", + "trail_name": "nginx-3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5", + "template_reference_name": "nginx", "git_commit": "35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", "git_commit_info": { @@ -6687,32 +6112,32 @@ kosli get snapshot aws-prod --output=json "timestamp": 1783850974.0, "url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb?artifact_id=b5910c68-49fe-49b8-b1ca-c2814ee1", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5?artifact_id=47460da2-f8e3-415d-bf61-f62f6b7f", "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...35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", "previous_git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_fingerprint": "45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:87f560f@sha256:45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c", + "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": "dashboard-45513c642ba191052bde056d56eeba8b06b0346eb444ec0008bd59bc0581bb8c", - "previous_template_reference_name": "dashboard" + "previous_trail_name": "nginx-b7ff2cf22c934716a4280f0450ae52fe822cda7fce7fc5488bf62853860cddc8", + "previous_template_reference_name": "nginx" }, - "commit_lead_time": -232777.0, + "commit_lead_time": 332577.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] } ], "ecs_context": { - "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/fca9ca08541544e0bba91f462605371e", + "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/950b7815820f45dd82a7dec0a382128a", "cluster_name": null, "service_name": null } }, { - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:8beff99@sha256:7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:c6db342@sha256:f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", "compliant": true, "deployments": [], "policy_decisions": [ @@ -6734,8 +6159,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "differ-ci", - "trail_name": "8beff9901ac67acb7afcab3408106208571a1124", + "flow_name": "languages-start-points-ci", + "trail_name": "c6db342472238a7852b6ff31b04f9a6a6099f5cf", "artifact_status": null } }, @@ -6751,7 +6176,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", + "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", "artifact_status": null } }, @@ -6759,7 +6184,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", + "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", "artifact_status": null } } @@ -6779,8 +6204,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "differ-ci", - "trail_name": "8beff9901ac67acb7afcab3408106208571a1124", + "flow_name": "languages-start-points-ci", + "trail_name": "c6db342472238a7852b6ff31b04f9a6a6099f5cf", "artifact_status": "COMPLIANT" } }, @@ -6796,7 +6221,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", + "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", "artifact_status": "COMPLIANT" } }, @@ -6804,7 +6229,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", + "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", "artifact_status": "COMPLIANT" } } @@ -6829,8 +6254,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "differ-ci", - "trail_name": "8beff9901ac67acb7afcab3408106208571a1124", + "flow_name": "languages-start-points-ci", + "trail_name": "c6db342472238a7852b6ff31b04f9a6a6099f5cf", "artifact_status": null } }, @@ -6846,7 +6271,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", + "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", "artifact_status": null } }, @@ -6854,7 +6279,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", + "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", "artifact_status": null } } @@ -6881,8 +6306,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "differ-ci", - "trail_name": "8beff9901ac67acb7afcab3408106208571a1124", + "flow_name": "languages-start-points-ci", + "trail_name": "c6db342472238a7852b6ff31b04f9a6a6099f5cf", "artifact_status": null } }, @@ -6898,7 +6323,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", + "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", "artifact_status": null } }, @@ -6906,7 +6331,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", + "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", "artifact_status": null } } @@ -6926,8 +6351,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "differ-ci", - "trail_name": "8beff9901ac67acb7afcab3408106208571a1124", + "flow_name": "languages-start-points-ci", + "trail_name": "c6db342472238a7852b6ff31b04f9a6a6099f5cf", "artifact_status": "COMPLIANT" } }, @@ -6943,7 +6368,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", + "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", "artifact_status": "COMPLIANT" } }, @@ -6951,7 +6376,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", + "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", "artifact_status": "COMPLIANT" } } @@ -6976,8 +6401,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "differ-ci", - "trail_name": "8beff9901ac67acb7afcab3408106208571a1124", + "flow_name": "languages-start-points-ci", + "trail_name": "c6db342472238a7852b6ff31b04f9a6a6099f5cf", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -6995,7 +6420,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", + "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -7004,7 +6429,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", + "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -7032,8 +6457,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "differ-ci", - "trail_name": "8beff9901ac67acb7afcab3408106208571a1124", + "flow_name": "languages-start-points-ci", + "trail_name": "c6db342472238a7852b6ff31b04f9a6a6099f5cf", "artifact_status": null } }, @@ -7049,7 +6474,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", + "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", "artifact_status": null } }, @@ -7057,7 +6482,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", + "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", "artifact_status": null } } @@ -7077,8 +6502,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "differ-ci", - "trail_name": "8beff9901ac67acb7afcab3408106208571a1124", + "flow_name": "languages-start-points-ci", + "trail_name": "c6db342472238a7852b6ff31b04f9a6a6099f5cf", "artifact_status": "COMPLIANT" } }, @@ -7094,7 +6519,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", + "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", "artifact_status": "COMPLIANT" } }, @@ -7102,7 +6527,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", + "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", "artifact_status": "COMPLIANT" } } @@ -7127,8 +6552,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "differ-ci", - "trail_name": "8beff9901ac67acb7afcab3408106208571a1124", + "flow_name": "languages-start-points-ci", + "trail_name": "c6db342472238a7852b6ff31b04f9a6a6099f5cf", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -7146,7 +6571,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", + "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -7155,7 +6580,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", + "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -7183,8 +6608,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "differ-ci", - "trail_name": "8beff9901ac67acb7afcab3408106208571a1124", + "flow_name": "languages-start-points-ci", + "trail_name": "c6db342472238a7852b6ff31b04f9a6a6099f5cf", "artifact_status": null } }, @@ -7200,7 +6625,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", + "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", "artifact_status": null } }, @@ -7208,7 +6633,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", + "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", "artifact_status": null } } @@ -7228,8 +6653,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "differ-ci", - "trail_name": "8beff9901ac67acb7afcab3408106208571a1124", + "flow_name": "languages-start-points-ci", + "trail_name": "c6db342472238a7852b6ff31b04f9a6a6099f5cf", "artifact_status": "COMPLIANT" } }, @@ -7245,7 +6670,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", + "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", "artifact_status": "COMPLIANT" } }, @@ -7253,7 +6678,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", + "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", "artifact_status": "COMPLIANT" } } @@ -7278,8 +6703,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "differ-ci", - "trail_name": "8beff9901ac67acb7afcab3408106208571a1124", + "flow_name": "languages-start-points-ci", + "trail_name": "c6db342472238a7852b6ff31b04f9a6a6099f5cf", "artifact_status": null } }, @@ -7295,7 +6720,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", + "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", "artifact_status": null } }, @@ -7303,7 +6728,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", + "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", "artifact_status": null } } @@ -7330,8 +6755,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "differ-ci", - "trail_name": "8beff9901ac67acb7afcab3408106208571a1124", + "flow_name": "languages-start-points-ci", + "trail_name": "c6db342472238a7852b6ff31b04f9a6a6099f5cf", "artifact_status": null } }, @@ -7347,7 +6772,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", + "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", "artifact_status": null } }, @@ -7355,7 +6780,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", + "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", "artifact_status": null } } @@ -7381,8 +6806,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "differ-ci", - "trail_name": "8beff9901ac67acb7afcab3408106208571a1124", + "flow_name": "languages-start-points-ci", + "trail_name": "c6db342472238a7852b6ff31b04f9a6a6099f5cf", "artifact_status": "COMPLIANT" } }, @@ -7398,7 +6823,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", + "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", "artifact_status": "COMPLIANT" } }, @@ -7406,7 +6831,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", + "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", "artifact_status": "COMPLIANT" } } @@ -7417,9 +6842,9 @@ kosli get snapshot aws-prod --output=json } ], "reasons_for_incompliance": [], - "fingerprint": "7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", + "fingerprint": "f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", "creationTimestamp": [ - 1783618126 + 1783618209 ], "pods": null, "annotation": { @@ -7427,59 +6852,59 @@ kosli get snapshot aws-prod --output=json "was": 1, "now": 1 }, - "flow_name": "differ-ci", - "git_commit": "8beff9901ac67acb7afcab3408106208571a1124", - "commit_url": "https://github.com/cyber-dojo/differ/commit/8beff9901ac67acb7afcab3408106208571a1124", - "html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci/artifacts/7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc?artifact_id=ece4f8ca-6c19-4ca5-a482-dd4af708", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci", + "flow_name": "languages-start-points-ci", + "git_commit": "c6db342472238a7852b6ff31b04f9a6a6099f5cf", + "commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/c6db342472238a7852b6ff31b04f9a6a6099f5cf", + "html_url": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci/artifacts/f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418?artifact_id=ed104a44-8358-4883-beeb-ac3c8bb7", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/differ/compare/26dcd06257a4bb00d594dbb5de05eefbb7b20379...8beff9901ac67acb7afcab3408106208571a1124", - "previous_git_commit": "26dcd06257a4bb00d594dbb5de05eefbb7b20379", - "previous_fingerprint": "8f01c6f92f1226465177b079c360d26898315356b172042f8dedb593c95d2dd7", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:26dcd06@sha256:8f01c6f92f1226465177b079c360d26898315356b172042f8dedb593c95d2dd7", + "diff_url": "https://github.com/cyber-dojo/languages-start-points/compare/04e0e14bb8874ab521d35c97d6040133f0d2143a...c6db342472238a7852b6ff31b04f9a6a6099f5cf", + "previous_git_commit": "04e0e14bb8874ab521d35c97d6040133f0d2143a", + "previous_fingerprint": "a89642efb4e686ea38d597e20c2c3f256649d8bca02e2d923767844a6897667c", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:04e0e14@sha256:a89642efb4e686ea38d597e20c2c3f256649d8bca02e2d923767844a6897667c", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/differ/commit/26dcd06257a4bb00d594dbb5de05eefbb7b20379", - "previous_trail_name": "26dcd06257a4bb00d594dbb5de05eefbb7b20379", - "previous_template_reference_name": "differ" + "previous_git_commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/04e0e14bb8874ab521d35c97d6040133f0d2143a", + "previous_trail_name": "04e0e14bb8874ab521d35c97d6040133f0d2143a", + "previous_template_reference_name": "languages-start-points" }, - "commit_lead_time": 77967.0, + "commit_lead_time": 81654.0, "flows": [ { - "flow_name": "differ-ci", - "trail_name": "8beff9901ac67acb7afcab3408106208571a1124", - "template_reference_name": "differ", - "git_commit": "8beff9901ac67acb7afcab3408106208571a1124", - "commit_url": "https://github.com/cyber-dojo/differ/commit/8beff9901ac67acb7afcab3408106208571a1124", + "flow_name": "languages-start-points-ci", + "trail_name": "c6db342472238a7852b6ff31b04f9a6a6099f5cf", + "template_reference_name": "languages-start-points", + "git_commit": "c6db342472238a7852b6ff31b04f9a6a6099f5cf", + "commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/c6db342472238a7852b6ff31b04f9a6a6099f5cf", "git_commit_info": { - "sha1": "8beff9901ac67acb7afcab3408106208571a1124", - "message": "Update kosli template with provenance facts+decision (#428)", + "sha1": "c6db342472238a7852b6ff31b04f9a6a6099f5cf", + "message": "Merge pull request #242 from cyber-dojo/declare-sbom-and-provenance-facts-attestations\n\nDeclare sbom and provenance facts+decision attestations in the trail \u2026", "author": "Jon Jagger ", "branch": "", - "timestamp": 1783540159.0, - "url": "https://github.com/cyber-dojo/differ/commit/8beff9901ac67acb7afcab3408106208571a1124" + "timestamp": 1783536555.0, + "url": "https://github.com/cyber-dojo/languages-start-points/commit/c6db342472238a7852b6ff31b04f9a6a6099f5cf" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci/artifacts/7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc?artifact_id=ece4f8ca-6c19-4ca5-a482-dd4af708", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/differ-ci", + "html_url": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci/artifacts/f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418?artifact_id=ed104a44-8358-4883-beeb-ac3c8bb7", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/differ/compare/26dcd06257a4bb00d594dbb5de05eefbb7b20379...8beff9901ac67acb7afcab3408106208571a1124", - "previous_git_commit": "26dcd06257a4bb00d594dbb5de05eefbb7b20379", - "previous_fingerprint": "8f01c6f92f1226465177b079c360d26898315356b172042f8dedb593c95d2dd7", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:26dcd06@sha256:8f01c6f92f1226465177b079c360d26898315356b172042f8dedb593c95d2dd7", + "diff_url": "https://github.com/cyber-dojo/languages-start-points/compare/04e0e14bb8874ab521d35c97d6040133f0d2143a...c6db342472238a7852b6ff31b04f9a6a6099f5cf", + "previous_git_commit": "04e0e14bb8874ab521d35c97d6040133f0d2143a", + "previous_fingerprint": "a89642efb4e686ea38d597e20c2c3f256649d8bca02e2d923767844a6897667c", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:04e0e14@sha256:a89642efb4e686ea38d597e20c2c3f256649d8bca02e2d923767844a6897667c", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/differ/commit/26dcd06257a4bb00d594dbb5de05eefbb7b20379", - "previous_trail_name": "26dcd06257a4bb00d594dbb5de05eefbb7b20379", - "previous_template_reference_name": "differ" + "previous_git_commit_url": "https://github.com/cyber-dojo/languages-start-points/commit/04e0e14bb8874ab521d35c97d6040133f0d2143a", + "previous_trail_name": "04e0e14bb8874ab521d35c97d6040133f0d2143a", + "previous_template_reference_name": "languages-start-points" }, - "commit_lead_time": 77967.0, + "commit_lead_time": 81654.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "production-promotion", "trail_name": "promote-all-30", - "template_reference_name": "differ", + "template_reference_name": "languages-start-points", "git_commit": "d7e31ce0207b766140ae689f38625da4374acf87", "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/d7e31ce0207b766140ae689f38625da4374acf87", "git_commit_info": { @@ -7490,58 +6915,58 @@ kosli get snapshot aws-prod --output=json "timestamp": 1782907108.0, "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/d7e31ce0207b766140ae689f38625da4374acf87" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc?artifact_id=d70bdb3a-6d3f-4ff4-9cce-651590a5", + "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418?artifact_id=a9535090-47a2-4ea2-8827-c368a63e", "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...d7e31ce0207b766140ae689f38625da4374acf87", "previous_git_commit": "d7e31ce0207b766140ae689f38625da4374acf87", - "previous_fingerprint": "8f01c6f92f1226465177b079c360d26898315356b172042f8dedb593c95d2dd7", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:26dcd06@sha256:8f01c6f92f1226465177b079c360d26898315356b172042f8dedb593c95d2dd7", + "previous_fingerprint": "a89642efb4e686ea38d597e20c2c3f256649d8bca02e2d923767844a6897667c", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:04e0e14@sha256:a89642efb4e686ea38d597e20c2c3f256649d8bca02e2d923767844a6897667c", "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-29", - "previous_template_reference_name": "differ" + "previous_template_reference_name": "languages-start-points" }, - "commit_lead_time": 711018.0, + "commit_lead_time": 711101.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "differ-7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", - "template_reference_name": "differ", - "git_commit": "a517304f4e9013e2e9ea67e90c7342f7e56653f0", - "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/a517304f4e9013e2e9ea67e90c7342f7e56653f0", + "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", + "template_reference_name": "languages-start-points", + "git_commit": "35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", + "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", "git_commit_info": { - "sha1": "a517304f4e9013e2e9ea67e90c7342f7e56653f0", - "message": "Remove unneeded provenance decision attestation - this is not a build flow", + "sha1": "35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", + "message": "Add emoji prefixes to workflow names\n\n Match the visual convention already used in the kosli-demo/stochastic-committer\n repo, where the Actions sidebar distinguishes workflow roles at a glance.\n\n The two aws-* files are the top-level entry points, triggered by dispatch and\n schedule, so they get the play emoji. The three reusable workflow_call\n sub-workflows get the package emoji to mark them as callable building blocks.", "author": "JonJagger ", "branch": "main", - "timestamp": 1782799303.0, - "url": "https://github.com/cyber-dojo/snyk-scanning/commit/a517304f4e9013e2e9ea67e90c7342f7e56653f0" + "timestamp": 1783850974.0, + "url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc?artifact_id=0df2564f-0d3c-4379-bd18-d16e40a8", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418?artifact_id=b08301eb-028d-4fa4-8256-d1be128c", "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/a517304f4e9013e2e9ea67e90c7342f7e56653f0...a517304f4e9013e2e9ea67e90c7342f7e56653f0", - "previous_git_commit": "a517304f4e9013e2e9ea67e90c7342f7e56653f0", - "previous_fingerprint": "8f01c6f92f1226465177b079c360d26898315356b172042f8dedb593c95d2dd7", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:26dcd06@sha256:8f01c6f92f1226465177b079c360d26898315356b172042f8dedb593c95d2dd7", + "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/c17bb3ed8862de03c1a491dfe790fd8734fc7071...35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", + "previous_git_commit": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "previous_fingerprint": "5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:bb8a712@sha256:5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/a517304f4e9013e2e9ea67e90c7342f7e56653f0", - "previous_trail_name": "differ-8f01c6f92f1226465177b079c360d26898315356b172042f8dedb593c95d2dd7", - "previous_template_reference_name": "differ" + "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "previous_trail_name": "languages-start-points-5bc686a6794d6a180f3a70f815348627578982e951f16e7462b1b6f533a97f38", + "previous_template_reference_name": "languages-start-points" }, - "commit_lead_time": 818823.0, + "commit_lead_time": -232765.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "differ-7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", - "template_reference_name": "differ", + "trail_name": "languages-start-points-f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", + "template_reference_name": "languages-start-points", "git_commit": "35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", "git_commit_info": { @@ -7552,32 +6977,32 @@ kosli get snapshot aws-prod --output=json "timestamp": 1783850974.0, "url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc?artifact_id=cc856081-7c14-4a5b-9020-35165c8b", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418?artifact_id=a8f86d52-e94b-45b3-b7f6-2f44615a", "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...35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", "previous_git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_fingerprint": "902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:981dcfc@sha256:902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b", + "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": "differ-902ec7af03407049ac6e5ef713146d518bbffd9d99cd28715fa0df973e809b7b", - "previous_template_reference_name": "differ" + "previous_trail_name": "languages-start-points-b2f51324efc1528e4dda57d235bdbc68d966e1ea23722d5d296f98eefbfc2676", + "previous_template_reference_name": "languages-start-points" }, - "commit_lead_time": -232848.0, + "commit_lead_time": -232765.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] } ], "ecs_context": { - "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/10e2c5d7013342098a15699c13707b71", + "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/e0989e55de644314bd7c0db5f877729c", "cluster_name": null, "service_name": null } }, { - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:804f248@sha256:a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:d37aace@sha256:1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", "compliant": true, "deployments": [], "policy_decisions": [ @@ -7599,8 +7024,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "804f248d832dc34e564507b009c246dfb4f0c657", + "flow_name": "custom-start-points-ci", + "trail_name": "d37aace7598ee943ba0bd5e51f224335cbdf0a3e", "artifact_status": null } }, @@ -7615,16 +7040,16 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", "artifact_status": null } } @@ -7644,8 +7069,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "804f248d832dc34e564507b009c246dfb4f0c657", + "flow_name": "custom-start-points-ci", + "trail_name": "d37aace7598ee943ba0bd5e51f224335cbdf0a3e", "artifact_status": "COMPLIANT" } }, @@ -7660,16 +7085,16 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", "artifact_status": "COMPLIANT" } } @@ -7694,8 +7119,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "804f248d832dc34e564507b009c246dfb4f0c657", + "flow_name": "custom-start-points-ci", + "trail_name": "d37aace7598ee943ba0bd5e51f224335cbdf0a3e", "artifact_status": null } }, @@ -7710,16 +7135,16 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", "artifact_status": null } } @@ -7746,8 +7171,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "804f248d832dc34e564507b009c246dfb4f0c657", + "flow_name": "custom-start-points-ci", + "trail_name": "d37aace7598ee943ba0bd5e51f224335cbdf0a3e", "artifact_status": null } }, @@ -7762,16 +7187,16 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", "artifact_status": null } }, { "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", "artifact_status": null } } @@ -7791,8 +7216,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "804f248d832dc34e564507b009c246dfb4f0c657", + "flow_name": "custom-start-points-ci", + "trail_name": "d37aace7598ee943ba0bd5e51f224335cbdf0a3e", "artifact_status": "COMPLIANT" } }, @@ -7807,16 +7232,16 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", "artifact_status": "COMPLIANT" } } @@ -7841,8 +7266,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "804f248d832dc34e564507b009c246dfb4f0c657", + "flow_name": "custom-start-points-ci", + "trail_name": "d37aace7598ee943ba0bd5e51f224335cbdf0a3e", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -7859,8 +7284,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -7868,8 +7293,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -7897,8 +7322,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "804f248d832dc34e564507b009c246dfb4f0c657", + "flow_name": "custom-start-points-ci", + "trail_name": "d37aace7598ee943ba0bd5e51f224335cbdf0a3e", "artifact_status": null } }, @@ -7913,16 +7338,16 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", "artifact_status": null } } @@ -7942,8 +7367,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "804f248d832dc34e564507b009c246dfb4f0c657", + "flow_name": "custom-start-points-ci", + "trail_name": "d37aace7598ee943ba0bd5e51f224335cbdf0a3e", "artifact_status": "COMPLIANT" } }, @@ -7958,16 +7383,16 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", "artifact_status": "COMPLIANT" } } @@ -7992,8 +7417,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "804f248d832dc34e564507b009c246dfb4f0c657", + "flow_name": "custom-start-points-ci", + "trail_name": "d37aace7598ee943ba0bd5e51f224335cbdf0a3e", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -8008,19 +7433,19 @@ kosli get snapshot aws-prod --output=json } }, { - "type": "rule_satisfied", + "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } }, { - "type": "rule_not_applicable", + "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -8048,8 +7473,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "804f248d832dc34e564507b009c246dfb4f0c657", + "flow_name": "custom-start-points-ci", + "trail_name": "d37aace7598ee943ba0bd5e51f224335cbdf0a3e", "artifact_status": null } }, @@ -8064,16 +7489,16 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", "artifact_status": null } } @@ -8093,8 +7518,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "804f248d832dc34e564507b009c246dfb4f0c657", + "flow_name": "custom-start-points-ci", + "trail_name": "d37aace7598ee943ba0bd5e51f224335cbdf0a3e", "artifact_status": "COMPLIANT" } }, @@ -8109,16 +7534,16 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", "artifact_status": "COMPLIANT" } } @@ -8143,8 +7568,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "804f248d832dc34e564507b009c246dfb4f0c657", + "flow_name": "custom-start-points-ci", + "trail_name": "d37aace7598ee943ba0bd5e51f224335cbdf0a3e", "artifact_status": null } }, @@ -8159,16 +7584,16 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", "artifact_status": null } } @@ -8195,8 +7620,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "804f248d832dc34e564507b009c246dfb4f0c657", + "flow_name": "custom-start-points-ci", + "trail_name": "d37aace7598ee943ba0bd5e51f224335cbdf0a3e", "artifact_status": null } }, @@ -8211,16 +7636,16 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", "artifact_status": null } }, { "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", "artifact_status": null } } @@ -8246,8 +7671,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "exercises-start-points-ci", - "trail_name": "804f248d832dc34e564507b009c246dfb4f0c657", + "flow_name": "custom-start-points-ci", + "trail_name": "d37aace7598ee943ba0bd5e51f224335cbdf0a3e", "artifact_status": "COMPLIANT" } }, @@ -8260,18 +7685,18 @@ kosli get snapshot aws-prod --output=json } }, { - "type": "rule_satisfied", + "type": "rule_not_applicable", "context": { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", "artifact_status": "COMPLIANT" } }, { - "type": "rule_not_applicable", + "type": "rule_satisfied", "context": { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", "artifact_status": "COMPLIANT" } } @@ -8282,9 +7707,9 @@ kosli get snapshot aws-prod --output=json } ], "reasons_for_incompliance": [], - "fingerprint": "a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "fingerprint": "1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", "creationTimestamp": [ - 1783618126 + 1783618204 ], "pods": null, "annotation": { @@ -8292,59 +7717,59 @@ kosli get snapshot aws-prod --output=json "was": 1, "now": 1 }, - "flow_name": "exercises-start-points-ci", - "git_commit": "804f248d832dc34e564507b009c246dfb4f0c657", - "commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/804f248d832dc34e564507b009c246dfb4f0c657", - "html_url": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci/artifacts/a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613?artifact_id=0e55e1be-fab1-475b-8aaa-b45ca6e2", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci", + "flow_name": "custom-start-points-ci", + "git_commit": "d37aace7598ee943ba0bd5e51f224335cbdf0a3e", + "commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/d37aace7598ee943ba0bd5e51f224335cbdf0a3e", + "html_url": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci/artifacts/1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400?artifact_id=e434f9eb-be9c-4851-ab99-187f1a26", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/exercises-start-points/compare/80b913e9f88902428a3567f75165d8b9d73b561a...804f248d832dc34e564507b009c246dfb4f0c657", - "previous_git_commit": "80b913e9f88902428a3567f75165d8b9d73b561a", - "previous_fingerprint": "748c413e0f6e45c3652fa4ee47ff2d7371da0bade41c027711296216b53db39b", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:80b913e@sha256:748c413e0f6e45c3652fa4ee47ff2d7371da0bade41c027711296216b53db39b", + "diff_url": "https://github.com/cyber-dojo/custom-start-points/compare/fc6b09be0518fbf8ab76815cb85b1745631e3659...d37aace7598ee943ba0bd5e51f224335cbdf0a3e", + "previous_git_commit": "fc6b09be0518fbf8ab76815cb85b1745631e3659", + "previous_fingerprint": "1dbac604d2f08378e085032c135be4f4910559a7d7723c26372724d6fb8010d1", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:fc6b09b@sha256:1dbac604d2f08378e085032c135be4f4910559a7d7723c26372724d6fb8010d1", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/80b913e9f88902428a3567f75165d8b9d73b561a", - "previous_trail_name": "80b913e9f88902428a3567f75165d8b9d73b561a", - "previous_template_reference_name": "exercises-start-points" + "previous_git_commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/fc6b09be0518fbf8ab76815cb85b1745631e3659", + "previous_trail_name": "fc6b09be0518fbf8ab76815cb85b1745631e3659", + "previous_template_reference_name": "custom-start-points" }, - "commit_lead_time": 81944.0, + "commit_lead_time": 4272.0, "flows": [ { - "flow_name": "exercises-start-points-ci", - "trail_name": "804f248d832dc34e564507b009c246dfb4f0c657", - "template_reference_name": "exercises-start-points", - "git_commit": "804f248d832dc34e564507b009c246dfb4f0c657", - "commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/804f248d832dc34e564507b009c246dfb4f0c657", + "flow_name": "custom-start-points-ci", + "trail_name": "d37aace7598ee943ba0bd5e51f224335cbdf0a3e", + "template_reference_name": "custom-start-points", + "git_commit": "d37aace7598ee943ba0bd5e51f224335cbdf0a3e", + "commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/d37aace7598ee943ba0bd5e51f224335cbdf0a3e", "git_commit_info": { - "sha1": "804f248d832dc34e564507b009c246dfb4f0c657", - "message": "Merge pull request #145 from cyber-dojo/declare-sbom-and-provenance-facts-attestations\n\nDeclare sbom and provenance facts+decision attestations in the trail \u2026", + "sha1": "d37aace7598ee943ba0bd5e51f224335cbdf0a3e", + "message": "Merge pull request #139 from cyber-dojo/run-workflow-171\n\nRun main workflow to check updates to secure-build sub workflow", "author": "Jon Jagger ", "branch": "", - "timestamp": 1783536182.0, - "url": "https://github.com/cyber-dojo/exercises-start-points/commit/804f248d832dc34e564507b009c246dfb4f0c657" + "timestamp": 1783613932.0, + "url": "https://github.com/cyber-dojo/custom-start-points/commit/d37aace7598ee943ba0bd5e51f224335cbdf0a3e" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci/artifacts/a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613?artifact_id=0e55e1be-fab1-475b-8aaa-b45ca6e2", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci", + "html_url": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci/artifacts/1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400?artifact_id=e434f9eb-be9c-4851-ab99-187f1a26", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/exercises-start-points/compare/80b913e9f88902428a3567f75165d8b9d73b561a...804f248d832dc34e564507b009c246dfb4f0c657", - "previous_git_commit": "80b913e9f88902428a3567f75165d8b9d73b561a", - "previous_fingerprint": "748c413e0f6e45c3652fa4ee47ff2d7371da0bade41c027711296216b53db39b", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:80b913e@sha256:748c413e0f6e45c3652fa4ee47ff2d7371da0bade41c027711296216b53db39b", + "diff_url": "https://github.com/cyber-dojo/custom-start-points/compare/fc6b09be0518fbf8ab76815cb85b1745631e3659...d37aace7598ee943ba0bd5e51f224335cbdf0a3e", + "previous_git_commit": "fc6b09be0518fbf8ab76815cb85b1745631e3659", + "previous_fingerprint": "1dbac604d2f08378e085032c135be4f4910559a7d7723c26372724d6fb8010d1", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:fc6b09b@sha256:1dbac604d2f08378e085032c135be4f4910559a7d7723c26372724d6fb8010d1", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/80b913e9f88902428a3567f75165d8b9d73b561a", - "previous_trail_name": "80b913e9f88902428a3567f75165d8b9d73b561a", - "previous_template_reference_name": "exercises-start-points" + "previous_git_commit_url": "https://github.com/cyber-dojo/custom-start-points/commit/fc6b09be0518fbf8ab76815cb85b1745631e3659", + "previous_trail_name": "fc6b09be0518fbf8ab76815cb85b1745631e3659", + "previous_template_reference_name": "custom-start-points" }, - "commit_lead_time": 81944.0, + "commit_lead_time": 4272.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "production-promotion", "trail_name": "promote-all-30", - "template_reference_name": "exercises-start-points", + "template_reference_name": "custom-start-points", "git_commit": "d7e31ce0207b766140ae689f38625da4374acf87", "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/d7e31ce0207b766140ae689f38625da4374acf87", "git_commit_info": { @@ -8355,27 +7780,27 @@ kosli get snapshot aws-prod --output=json "timestamp": 1782907108.0, "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/d7e31ce0207b766140ae689f38625da4374acf87" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613?artifact_id=729eea0c-e715-4d68-8a0a-b25a7202", + "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400?artifact_id=f63f0700-2e41-44a7-ab00-31da5193", "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...d7e31ce0207b766140ae689f38625da4374acf87", "previous_git_commit": "d7e31ce0207b766140ae689f38625da4374acf87", - "previous_fingerprint": "748c413e0f6e45c3652fa4ee47ff2d7371da0bade41c027711296216b53db39b", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:80b913e@sha256:748c413e0f6e45c3652fa4ee47ff2d7371da0bade41c027711296216b53db39b", + "previous_fingerprint": "1dbac604d2f08378e085032c135be4f4910559a7d7723c26372724d6fb8010d1", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:fc6b09b@sha256:1dbac604d2f08378e085032c135be4f4910559a7d7723c26372724d6fb8010d1", "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-29", - "previous_template_reference_name": "exercises-start-points" + "previous_template_reference_name": "custom-start-points" }, - "commit_lead_time": 711018.0, + "commit_lead_time": 711096.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { - "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", - "template_reference_name": "exercises-start-points", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", + "template_reference_name": "custom-start-points", "git_commit": "35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", "git_commit_info": { @@ -8386,27 +7811,27 @@ kosli get snapshot aws-prod --output=json "timestamp": 1783850974.0, "url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613?artifact_id=6f626279-b0ca-41dd-931a-9c235a4e", - "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/1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400?artifact_id=947aceb0-d3d2-4dc6-857f-48489d35", + "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...35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", - "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/c17bb3ed8862de03c1a491dfe790fd8734fc7071...35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", + "previous_git_commit": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "previous_fingerprint": "311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:514f79a@sha256:311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", "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/c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "previous_trail_name": "custom-start-points-311da8e95c74716bf3953de67a6dc3fe514c88d805a08a55ab17c677d75cf797", + "previous_template_reference_name": "custom-start-points" }, - "commit_lead_time": -232848.0, + "commit_lead_time": -232770.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { - "flow_name": "snyk-aws-beta-per-artifact", - "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", - "template_reference_name": "exercises-start-points", + "flow_name": "snyk-aws-prod-per-artifact", + "trail_name": "custom-start-points-1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", + "template_reference_name": "custom-start-points", "git_commit": "35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", "git_commit_info": { @@ -8417,32 +7842,32 @@ kosli get snapshot aws-prod --output=json "timestamp": 1783850974.0, "url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613?artifact_id=3aae3348-407f-4de1-9241-4d61c88b", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400?artifact_id=94e83094-452f-4e40-967c-ed679f72", + "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/c17bb3ed8862de03c1a491dfe790fd8734fc7071...35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", - "previous_git_commit": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", - "previous_fingerprint": "fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:75485ee@sha256:fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", + "diff_url": "https://github.com/cyber-dojo/snyk-scanning/compare/00c479764cb9eca038fdaaaef108672d0bb0ed26...35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", + "previous_git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", + "previous_fingerprint": "b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:6b5c159@sha256:b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071", - "previous_trail_name": "exercises-start-points-fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", - "previous_template_reference_name": "exercises-start-points" + "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/00c479764cb9eca038fdaaaef108672d0bb0ed26", + "previous_trail_name": "custom-start-points-b4448ca68a0926e4a7a800f5b101b63e9c2f38e1caaebb7e929d992763570928", + "previous_template_reference_name": "custom-start-points" }, - "commit_lead_time": -232848.0, + "commit_lead_time": -232770.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] } ], "ecs_context": { - "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/c2a918fa550f40d6a4f2b35f023d40f1", + "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/5333f9f522e74ab797a3893465e348d9", "cluster_name": null, "service_name": null } }, { - "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:8d34585@sha256:99da6bff005f90bf23d728dc2c7cfd65f0e251772b246766955fd3dc209dbb6f", + "name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:804f248@sha256:a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", "compliant": true, "deployments": [], "policy_decisions": [ @@ -8464,8 +7889,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "web-ci", - "trail_name": "8d345854efbb1063d7546ef988dd771ed5445116", + "flow_name": "exercises-start-points-ci", + "trail_name": "804f248d832dc34e564507b009c246dfb4f0c657", "artifact_status": null } }, @@ -8477,11 +7902,19 @@ kosli get snapshot aws-prod --output=json "artifact_status": null } }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "artifact_status": null + } + }, { "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-99da6bff005f90bf23d728dc2c7cfd65f0e251772b246766955fd3dc209dbb6f", + "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", "artifact_status": null } } @@ -8501,16 +7934,24 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "web-ci", - "trail_name": "8d345854efbb1063d7546ef988dd771ed5445116", + "flow_name": "exercises-start-points-ci", + "trail_name": "804f248d832dc34e564507b009c246dfb4f0c657", + "artifact_status": "COMPLIANT" + } + }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "production-promotion", + "trail_name": "promote-all-30", "artifact_status": "COMPLIANT" } }, { "type": "rule_not_applicable", "context": { - "flow_name": "production-promotion", - "trail_name": "promote-all-30", + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", "artifact_status": "COMPLIANT" } }, @@ -8518,7 +7959,7 @@ kosli get snapshot aws-prod --output=json "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-99da6bff005f90bf23d728dc2c7cfd65f0e251772b246766955fd3dc209dbb6f", + "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", "artifact_status": "COMPLIANT" } } @@ -8543,8 +7984,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "web-ci", - "trail_name": "8d345854efbb1063d7546ef988dd771ed5445116", + "flow_name": "exercises-start-points-ci", + "trail_name": "804f248d832dc34e564507b009c246dfb4f0c657", "artifact_status": null } }, @@ -8556,11 +7997,19 @@ kosli get snapshot aws-prod --output=json "artifact_status": null } }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "artifact_status": null + } + }, { "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-99da6bff005f90bf23d728dc2c7cfd65f0e251772b246766955fd3dc209dbb6f", + "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", "artifact_status": null } } @@ -8587,8 +8036,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "web-ci", - "trail_name": "8d345854efbb1063d7546ef988dd771ed5445116", + "flow_name": "exercises-start-points-ci", + "trail_name": "804f248d832dc34e564507b009c246dfb4f0c657", "artifact_status": null } }, @@ -8600,11 +8049,19 @@ kosli get snapshot aws-prod --output=json "artifact_status": null } }, + { + "type": "rule_satisfied", + "context": { + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "artifact_status": null + } + }, { "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-99da6bff005f90bf23d728dc2c7cfd65f0e251772b246766955fd3dc209dbb6f", + "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", "artifact_status": null } } @@ -8624,8 +8081,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "web-ci", - "trail_name": "8d345854efbb1063d7546ef988dd771ed5445116", + "flow_name": "exercises-start-points-ci", + "trail_name": "804f248d832dc34e564507b009c246dfb4f0c657", "artifact_status": "COMPLIANT" } }, @@ -8637,11 +8094,19 @@ kosli get snapshot aws-prod --output=json "artifact_status": "COMPLIANT" } }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "artifact_status": "COMPLIANT" + } + }, { "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-99da6bff005f90bf23d728dc2c7cfd65f0e251772b246766955fd3dc209dbb6f", + "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", "artifact_status": "COMPLIANT" } } @@ -8666,8 +8131,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_satisfied", "context": { - "flow_name": "web-ci", - "trail_name": "8d345854efbb1063d7546ef988dd771ed5445116", + "flow_name": "exercises-start-points-ci", + "trail_name": "804f248d832dc34e564507b009c246dfb4f0c657", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -8681,11 +8146,20 @@ kosli get snapshot aws-prod --output=json "for_control": "SDLC-CTRL-0002" } }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "artifact_status": null, + "for_control": "SDLC-CTRL-0002" + } + }, { "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-99da6bff005f90bf23d728dc2c7cfd65f0e251772b246766955fd3dc209dbb6f", + "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", "artifact_status": null, "for_control": "SDLC-CTRL-0002" } @@ -8713,8 +8187,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "web-ci", - "trail_name": "8d345854efbb1063d7546ef988dd771ed5445116", + "flow_name": "exercises-start-points-ci", + "trail_name": "804f248d832dc34e564507b009c246dfb4f0c657", "artifact_status": null } }, @@ -8726,11 +8200,19 @@ kosli get snapshot aws-prod --output=json "artifact_status": null } }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "artifact_status": null + } + }, { "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-99da6bff005f90bf23d728dc2c7cfd65f0e251772b246766955fd3dc209dbb6f", + "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", "artifact_status": null } } @@ -8750,8 +8232,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "web-ci", - "trail_name": "8d345854efbb1063d7546ef988dd771ed5445116", + "flow_name": "exercises-start-points-ci", + "trail_name": "804f248d832dc34e564507b009c246dfb4f0c657", "artifact_status": "COMPLIANT" } }, @@ -8763,11 +8245,19 @@ kosli get snapshot aws-prod --output=json "artifact_status": "COMPLIANT" } }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "artifact_status": "COMPLIANT" + } + }, { "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-99da6bff005f90bf23d728dc2c7cfd65f0e251772b246766955fd3dc209dbb6f", + "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", "artifact_status": "COMPLIANT" } } @@ -8792,8 +8282,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "web-ci", - "trail_name": "8d345854efbb1063d7546ef988dd771ed5445116", + "flow_name": "exercises-start-points-ci", + "trail_name": "804f248d832dc34e564507b009c246dfb4f0c657", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -8807,11 +8297,20 @@ kosli get snapshot aws-prod --output=json "for_control": "SDLC-CTRL-0022" } }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "artifact_status": null, + "for_control": "SDLC-CTRL-0022" + } + }, { "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-99da6bff005f90bf23d728dc2c7cfd65f0e251772b246766955fd3dc209dbb6f", + "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", "artifact_status": null, "for_control": "SDLC-CTRL-0022" } @@ -8839,8 +8338,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "web-ci", - "trail_name": "8d345854efbb1063d7546ef988dd771ed5445116", + "flow_name": "exercises-start-points-ci", + "trail_name": "804f248d832dc34e564507b009c246dfb4f0c657", "artifact_status": null } }, @@ -8852,11 +8351,19 @@ kosli get snapshot aws-prod --output=json "artifact_status": null } }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "artifact_status": null + } + }, { "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-99da6bff005f90bf23d728dc2c7cfd65f0e251772b246766955fd3dc209dbb6f", + "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", "artifact_status": null } } @@ -8876,8 +8383,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "web-ci", - "trail_name": "8d345854efbb1063d7546ef988dd771ed5445116", + "flow_name": "exercises-start-points-ci", + "trail_name": "804f248d832dc34e564507b009c246dfb4f0c657", "artifact_status": "COMPLIANT" } }, @@ -8889,11 +8396,19 @@ kosli get snapshot aws-prod --output=json "artifact_status": "COMPLIANT" } }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "artifact_status": "COMPLIANT" + } + }, { "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-99da6bff005f90bf23d728dc2c7cfd65f0e251772b246766955fd3dc209dbb6f", + "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", "artifact_status": "COMPLIANT" } } @@ -8918,8 +8433,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "web-ci", - "trail_name": "8d345854efbb1063d7546ef988dd771ed5445116", + "flow_name": "exercises-start-points-ci", + "trail_name": "804f248d832dc34e564507b009c246dfb4f0c657", "artifact_status": null } }, @@ -8931,11 +8446,19 @@ kosli get snapshot aws-prod --output=json "artifact_status": null } }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "artifact_status": null + } + }, { "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-99da6bff005f90bf23d728dc2c7cfd65f0e251772b246766955fd3dc209dbb6f", + "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", "artifact_status": null } } @@ -8962,8 +8485,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "web-ci", - "trail_name": "8d345854efbb1063d7546ef988dd771ed5445116", + "flow_name": "exercises-start-points-ci", + "trail_name": "804f248d832dc34e564507b009c246dfb4f0c657", "artifact_status": null } }, @@ -8975,11 +8498,19 @@ kosli get snapshot aws-prod --output=json "artifact_status": null } }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "artifact_status": null + } + }, { "type": "rule_not_applicable", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-99da6bff005f90bf23d728dc2c7cfd65f0e251772b246766955fd3dc209dbb6f", + "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", "artifact_status": null } } @@ -9005,8 +8536,8 @@ kosli get snapshot aws-prod --output=json { "type": "rule_not_applicable", "context": { - "flow_name": "web-ci", - "trail_name": "8d345854efbb1063d7546ef988dd771ed5445116", + "flow_name": "exercises-start-points-ci", + "trail_name": "804f248d832dc34e564507b009c246dfb4f0c657", "artifact_status": "COMPLIANT" } }, @@ -9018,11 +8549,19 @@ kosli get snapshot aws-prod --output=json "artifact_status": "COMPLIANT" } }, + { + "type": "rule_not_applicable", + "context": { + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "artifact_status": "COMPLIANT" + } + }, { "type": "rule_satisfied", "context": { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-99da6bff005f90bf23d728dc2c7cfd65f0e251772b246766955fd3dc209dbb6f", + "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", "artifact_status": "COMPLIANT" } } @@ -9033,71 +8572,69 @@ kosli get snapshot aws-prod --output=json } ], "reasons_for_incompliance": [], - "fingerprint": "99da6bff005f90bf23d728dc2c7cfd65f0e251772b246766955fd3dc209dbb6f", + "fingerprint": "a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", "creationTimestamp": [ - 1783618129, - 1783618201, - 1783618209 + 1783618126 ], "pods": null, "annotation": { - "type": "exited", - "was": 3, - "now": 0 + "type": "unchanged", + "was": 1, + "now": 1 }, - "flow_name": "web-ci", - "git_commit": "8d345854efbb1063d7546ef988dd771ed5445116", - "commit_url": "https://github.com/cyber-dojo/web/commit/8d345854efbb1063d7546ef988dd771ed5445116", - "html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci/artifacts/99da6bff005f90bf23d728dc2c7cfd65f0e251772b246766955fd3dc209dbb6f?artifact_id=022a327b-df37-4f2c-94f2-2f7c3fd0", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci", + "flow_name": "exercises-start-points-ci", + "git_commit": "804f248d832dc34e564507b009c246dfb4f0c657", + "commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/804f248d832dc34e564507b009c246dfb4f0c657", + "html_url": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci/artifacts/a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613?artifact_id=0e55e1be-fab1-475b-8aaa-b45ca6e2", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/web/compare/97ebee56e01ca3af95bfcae0c7c328eee8c56865...8d345854efbb1063d7546ef988dd771ed5445116", - "previous_git_commit": "97ebee56e01ca3af95bfcae0c7c328eee8c56865", - "previous_fingerprint": "929748bb88b31863da9cd8d62a5039c274ff3c669f2ef05bc025e6989d2c1eab", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:97ebee5@sha256:929748bb88b31863da9cd8d62a5039c274ff3c669f2ef05bc025e6989d2c1eab", + "diff_url": "https://github.com/cyber-dojo/exercises-start-points/compare/80b913e9f88902428a3567f75165d8b9d73b561a...804f248d832dc34e564507b009c246dfb4f0c657", + "previous_git_commit": "80b913e9f88902428a3567f75165d8b9d73b561a", + "previous_fingerprint": "748c413e0f6e45c3652fa4ee47ff2d7371da0bade41c027711296216b53db39b", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:80b913e@sha256:748c413e0f6e45c3652fa4ee47ff2d7371da0bade41c027711296216b53db39b", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/web/commit/97ebee56e01ca3af95bfcae0c7c328eee8c56865", - "previous_trail_name": "97ebee56e01ca3af95bfcae0c7c328eee8c56865", - "previous_template_reference_name": "web" + "previous_git_commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/80b913e9f88902428a3567f75165d8b9d73b561a", + "previous_trail_name": "80b913e9f88902428a3567f75165d8b9d73b561a", + "previous_template_reference_name": "exercises-start-points" }, - "commit_lead_time": 1293.0, + "commit_lead_time": 81944.0, "flows": [ { - "flow_name": "web-ci", - "trail_name": "8d345854efbb1063d7546ef988dd771ed5445116", - "template_reference_name": "web", - "git_commit": "8d345854efbb1063d7546ef988dd771ed5445116", - "commit_url": "https://github.com/cyber-dojo/web/commit/8d345854efbb1063d7546ef988dd771ed5445116", + "flow_name": "exercises-start-points-ci", + "trail_name": "804f248d832dc34e564507b009c246dfb4f0c657", + "template_reference_name": "exercises-start-points", + "git_commit": "804f248d832dc34e564507b009c246dfb4f0c657", + "commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/804f248d832dc34e564507b009c246dfb4f0c657", "git_commit_info": { - "sha1": "8d345854efbb1063d7546ef988dd771ed5445116", - "message": "When kata is in a cluster make [dashboard] open in cluster view (#379)", + "sha1": "804f248d832dc34e564507b009c246dfb4f0c657", + "message": "Merge pull request #145 from cyber-dojo/declare-sbom-and-provenance-facts-attestations\n\nDeclare sbom and provenance facts+decision attestations in the trail \u2026", "author": "Jon Jagger ", "branch": "", - "timestamp": 1783616836.0, - "url": "https://github.com/cyber-dojo/web/commit/8d345854efbb1063d7546ef988dd771ed5445116" + "timestamp": 1783536182.0, + "url": "https://github.com/cyber-dojo/exercises-start-points/commit/804f248d832dc34e564507b009c246dfb4f0c657" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci/artifacts/99da6bff005f90bf23d728dc2c7cfd65f0e251772b246766955fd3dc209dbb6f?artifact_id=022a327b-df37-4f2c-94f2-2f7c3fd0", - "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/web-ci", + "html_url": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci/artifacts/a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613?artifact_id=0e55e1be-fab1-475b-8aaa-b45ca6e2", + "flow_html_url": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci", "deployment_diff": { - "diff_url": "https://github.com/cyber-dojo/web/compare/97ebee56e01ca3af95bfcae0c7c328eee8c56865...8d345854efbb1063d7546ef988dd771ed5445116", - "previous_git_commit": "97ebee56e01ca3af95bfcae0c7c328eee8c56865", - "previous_fingerprint": "929748bb88b31863da9cd8d62a5039c274ff3c669f2ef05bc025e6989d2c1eab", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:97ebee5@sha256:929748bb88b31863da9cd8d62a5039c274ff3c669f2ef05bc025e6989d2c1eab", + "diff_url": "https://github.com/cyber-dojo/exercises-start-points/compare/80b913e9f88902428a3567f75165d8b9d73b561a...804f248d832dc34e564507b009c246dfb4f0c657", + "previous_git_commit": "80b913e9f88902428a3567f75165d8b9d73b561a", + "previous_fingerprint": "748c413e0f6e45c3652fa4ee47ff2d7371da0bade41c027711296216b53db39b", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:80b913e@sha256:748c413e0f6e45c3652fa4ee47ff2d7371da0bade41c027711296216b53db39b", "previous_artifact_compliance_state": "COMPLIANT", "previous_running": false, - "previous_git_commit_url": "https://github.com/cyber-dojo/web/commit/97ebee56e01ca3af95bfcae0c7c328eee8c56865", - "previous_trail_name": "97ebee56e01ca3af95bfcae0c7c328eee8c56865", - "previous_template_reference_name": "web" + "previous_git_commit_url": "https://github.com/cyber-dojo/exercises-start-points/commit/80b913e9f88902428a3567f75165d8b9d73b561a", + "previous_trail_name": "80b913e9f88902428a3567f75165d8b9d73b561a", + "previous_template_reference_name": "exercises-start-points" }, - "commit_lead_time": 1293.0, + "commit_lead_time": 81944.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "production-promotion", "trail_name": "promote-all-30", - "template_reference_name": "web", + "template_reference_name": "exercises-start-points", "git_commit": "d7e31ce0207b766140ae689f38625da4374acf87", "commit_url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/d7e31ce0207b766140ae689f38625da4374acf87", "git_commit_info": { @@ -9108,27 +8645,58 @@ kosli get snapshot aws-prod --output=json "timestamp": 1782907108.0, "url": "https://github.com/cyber-dojo/aws-prod-co-promotion/commit/d7e31ce0207b766140ae689f38625da4374acf87" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/99da6bff005f90bf23d728dc2c7cfd65f0e251772b246766955fd3dc209dbb6f?artifact_id=980ad392-95f2-486b-ae9e-5f073c4d", + "html_url": "https://app.kosli.com/cyber-dojo/flows/production-promotion/artifacts/a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613?artifact_id=729eea0c-e715-4d68-8a0a-b25a7202", "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...d7e31ce0207b766140ae689f38625da4374acf87", "previous_git_commit": "d7e31ce0207b766140ae689f38625da4374acf87", - "previous_fingerprint": "929748bb88b31863da9cd8d62a5039c274ff3c669f2ef05bc025e6989d2c1eab", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:97ebee5@sha256:929748bb88b31863da9cd8d62a5039c274ff3c669f2ef05bc025e6989d2c1eab", + "previous_fingerprint": "748c413e0f6e45c3652fa4ee47ff2d7371da0bade41c027711296216b53db39b", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:80b913e@sha256:748c413e0f6e45c3652fa4ee47ff2d7371da0bade41c027711296216b53db39b", "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-29", - "previous_template_reference_name": "web" + "previous_template_reference_name": "exercises-start-points" + }, + "commit_lead_time": 711018.0, + "artifact_compliance_in_flow": true, + "flow_reasons_for_non_compliance": [] + }, + { + "flow_name": "snyk-aws-beta-per-artifact", + "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "template_reference_name": "exercises-start-points", + "git_commit": "35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", + "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", + "git_commit_info": { + "sha1": "35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", + "message": "Add emoji prefixes to workflow names\n\n Match the visual convention already used in the kosli-demo/stochastic-committer\n repo, where the Actions sidebar distinguishes workflow roles at a glance.\n\n The two aws-* files are the top-level entry points, triggered by dispatch and\n schedule, so they get the play emoji. The three reusable workflow_call\n sub-workflows get the package emoji to mark them as callable building blocks.", + "author": "JonJagger ", + "branch": "main", + "timestamp": 1783850974.0, + "url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7" + }, + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-beta-per-artifact/artifacts/a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613?artifact_id=d2f09480-2fe9-4995-9f0b-5b24b3b8", + "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/c17bb3ed8862de03c1a491dfe790fd8734fc7071...35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", + "previous_git_commit": "c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "previous_fingerprint": "fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", + "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:75485ee@sha256:fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", + "previous_artifact_compliance_state": "COMPLIANT", + "previous_running": false, + "previous_git_commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/c17bb3ed8862de03c1a491dfe790fd8734fc7071", + "previous_trail_name": "exercises-start-points-fe536dd19b159d9cb43aaa09236d26c916906bd915c648991aa824fb2f69af58", + "previous_template_reference_name": "exercises-start-points" }, - "commit_lead_time": 711021.0, + "commit_lead_time": -232848.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] }, { "flow_name": "snyk-aws-prod-per-artifact", - "trail_name": "web-99da6bff005f90bf23d728dc2c7cfd65f0e251772b246766955fd3dc209dbb6f", - "template_reference_name": "web", + "trail_name": "exercises-start-points-a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "template_reference_name": "exercises-start-points", "git_commit": "35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", "commit_url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", "git_commit_info": { @@ -9139,26 +8707,26 @@ kosli get snapshot aws-prod --output=json "timestamp": 1783850974.0, "url": "https://github.com/cyber-dojo/snyk-scanning/commit/35a09b2d283bafd6bbc12c29eba3306d5b36a5f7" }, - "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/99da6bff005f90bf23d728dc2c7cfd65f0e251772b246766955fd3dc209dbb6f?artifact_id=be9da614-3eeb-462d-be85-f38bf8c4", + "html_url": "https://app.kosli.com/cyber-dojo/flows/snyk-aws-prod-per-artifact/artifacts/a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613?artifact_id=6f0bcbb2-c4f1-4b93-ae2d-b6132a23", "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...35a09b2d283bafd6bbc12c29eba3306d5b36a5f7", "previous_git_commit": "00c479764cb9eca038fdaaaef108672d0bb0ed26", - "previous_fingerprint": "29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4", - "previous_artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:f66cc5c@sha256:29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4", + "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": "web-29c69c2f30f261a26fff4793fd8ae44b9081def1d4bcaaa27b0fef0501d949e4", - "previous_template_reference_name": "web" + "previous_trail_name": "exercises-start-points-f00aa234bebafb1980dced29626750f84a6fe6c9c50f6a90167e4d8e6511a8a8", + "previous_template_reference_name": "exercises-start-points" }, - "commit_lead_time": -232845.0, + "commit_lead_time": -232848.0, "artifact_compliance_in_flow": true, "flow_reasons_for_non_compliance": [] } ], "ecs_context": { - "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/e5637d1722824c84878a645cd36e9639", + "task_arn": "arn:aws:ecs:eu-central-1:274425519734:task/app/c2a918fa550f40d6a4f2b35f023d40f1", "cluster_name": null, "service_name": null } diff --git a/client_reference/kosli_list_environments.md b/client_reference/kosli_list_environments.md index 16f8ed2..560a21a 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": 1784045063.9079397, - "last_reported_at": 1784045063.9079397, - "last_changed_at": 1784013744.0287054, + "last_modified_at": 1784625743.9508638, + "last_reported_at": 1784625743.9508638, + "last_changed_at": 1784609844.045453, "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": 1784044808.6708312, - "last_reported_at": 1784044808.6708312, - "last_changed_at": 1784013608.7827568, + "last_modified_at": 1784625608.467594, + "last_reported_at": 1784625608.467594, + "last_changed_at": 1784445908.5464153, "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": 1784045098.481298, - "last_reported_at": 1784045098.481298, - "last_changed_at": 1784014258.5595071, + "last_modified_at": 1784625778.4536238, + "last_reported_at": 1784625778.4536238, + "last_changed_at": 1784609878.4986525, "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": 1784045012.1397145, - "last_reported_at": 1784045012.1397145, - "last_changed_at": 1784014713.3792517, + "last_modified_at": 1784625511.9180424, + "last_reported_at": 1784625511.9180424, + "last_changed_at": 1784444312.2796853, "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": 1784014713.3792517, + "last_modified_at": 1784609878.4986525, "last_reported_at": null, - "last_changed_at": 1784014713.3792517, + "last_changed_at": 1784609878.4986525, "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": 1784013744.0287054, + "last_modified_at": 1784609844.045453, "last_reported_at": null, - "last_changed_at": 1784013744.0287054, + "last_changed_at": 1784609844.045453, "state": true, "include_scaling": false, "tags": {}, diff --git a/client_reference/kosli_list_flows.md b/client_reference/kosli_list_flows.md index 37ca9da..e216b1c 100644 --- a/client_reference/kosli_list_flows.md +++ b/client_reference/kosli_list_flows.md @@ -114,16 +114,6 @@ kosli list flows --output=json "env": "aws-beta" } }, - { - "id": "9e752042-5c9d-4b7c-9250-403e7c5b", - "name": "differ-ci-tf", - "description": "Terraform human-readable plan and state file fingerprint", - "visibility": "private", - "org": "cyber-dojo", - "template": "version: 1\n\ntrail:\n attestations:\n - name: tf-plan\n type: generic\n artifacts:\n - name: tf-state\n", - "repo_url": "https://github.com/cyber-dojo/differ", - "tags": {} - }, { "id": "7f0ddaf2-32be-4cae-9512-161dc24c", "name": "docker-base-ci", @@ -348,6 +338,18 @@ kosli list flows --output=json "workflow_url": "https://github.com/cyber-dojo/snyk-scanning/blob/main/.github/workflows/artifact_snyk_test.yml" } }, + { + "id": "6d59cdf1-0d6b-412a-bd81-ecdc8767", + "name": "spooler-ci", + "description": "Async write spooler: durable, ordered forwarding to saver", + "visibility": "private", + "org": "cyber-dojo", + "template": "version: 1\n\ntrail:\n attestations:\n - name: pull-request\n type: pull_request\n artifacts:\n - name: spooler\n attestations:\n - name: provenance-facts\n type: custom:provenance-facts\n - name: provenance-decision\n type: decision\n\n - name: sbom-facts\n type: custom:sbom-facts\n - name: sbom-decision\n type: decision\n\n - name: snyk-container-scan\n type: decision\n\n - name: unit-test\n type: junit\n - name: unit-test-metrics\n type: custom:test-metrics\n - name: unit-test-coverage-metrics\n type: custom:coverage-metrics\n - name: integration-test\n type: junit\n - name: integration-test-metrics\n type: custom:test-metrics\n - name: integration-test-coverage-metrics\n type: custom:coverage-metrics\n", + "repo_url": "https://github.com/cyber-dojo/spooler", + "tags": { + "env": "aws-beta" + } + }, { "id": "57de7461-f687-4b93-a1d7-d4268e44", "name": "terraform-apply-beta-creator", @@ -438,6 +440,16 @@ kosli list flows --output=json "repo_url": "https://github.com/cyber-dojo/saver", "tags": {} }, + { + "id": "418dcba5-0f85-44c1-9bfa-73fe61a2", + "name": "terraform-apply-beta-spooler", + "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/spooler", + "tags": {} + }, { "id": "0408259b-db9a-47b4-bd5d-2cafb533", "name": "terraform-apply-beta-terraform-base-infra", @@ -465,7 +477,7 @@ 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", + "repo_url": "https://github.com/cyber-dojo/saver", "tags": {} }, { diff --git a/client_reference/kosli_list_snapshots.md b/client_reference/kosli_list_snapshots.md index d13ff42..6a21420 100644 --- a/client_reference/kosli_list_snapshots.md +++ b/client_reference/kosli_list_snapshots.md @@ -64,109 +64,109 @@ kosli list snapshots aws-prod --output=json ```json [ { - "index": 5007, - "from": 1784014258.5595071, + "index": 5062, + "from": 1784609878.4986525, "to": 0.0, "compliant": true, - "duration": 30843.68912911415 + "duration": 15921.893916130066 }, { - "index": 5006, - "from": 1784014198.37591, - "to": 1784014258.5595071, + "index": 5061, + "from": 1784609758.4742362, + "to": 1784609878.4986525, "compliant": true, - "duration": 60.18359708786011 + "duration": 120.02441620826721 }, { - "index": 5005, - "from": 1784003998.4861574, - "to": 1784014198.37591, + "index": 5060, + "from": 1784609698.6156423, + "to": 1784609758.4742362, "compliant": true, - "duration": 10199.889752626419 + "duration": 59.85859394073486 }, { - "index": 5004, - "from": 1784003938.5445926, - "to": 1784003998.4861574, + "index": 5059, + "from": 1784609638.5198727, + "to": 1784609698.6156423, "compliant": true, - "duration": 59.9415647983551 + "duration": 60.09576964378357 }, { - "index": 5003, - "from": 1784003878.547647, - "to": 1784003938.5445926, + "index": 5058, + "from": 1784525098.4087725, + "to": 1784609638.5198727, "compliant": true, - "duration": 59.99694561958313 + "duration": 84540.11110019684 }, { - "index": 5002, - "from": 1784003818.431919, - "to": 1784003878.547647, + "index": 5057, + "from": 1784525038.351176, + "to": 1784525098.4087725, "compliant": true, - "duration": 60.11572790145874 + "duration": 60.05759644508362 }, { - "index": 5001, - "from": 1784003758.5531633, - "to": 1784003818.431919, + "index": 5056, + "from": 1784524678.5200555, + "to": 1784525038.351176, "compliant": true, - "duration": 59.87875580787659 + "duration": 359.83112049102783 }, { - "index": 5000, - "from": 1783919458.6314104, - "to": 1784003758.5531633, + "index": 5055, + "from": 1784524558.4706209, + "to": 1784524678.5200555, "compliant": true, - "duration": 84299.92175292969 + "duration": 120.04943466186523 }, { - "index": 4999, - "from": 1783919398.441605, - "to": 1783919458.6314104, + "index": 5054, + "from": 1784524498.502314, + "to": 1784524558.4706209, "compliant": true, - "duration": 60.18980526924133 + "duration": 59.96830677986145 }, { - "index": 4998, - "from": 1783919338.4484332, - "to": 1783919398.441605, + "index": 5053, + "from": 1784524438.4976397, + "to": 1784524498.502314, "compliant": true, - "duration": 59.99317193031311 + "duration": 60.004674434661865 }, { - "index": 4997, - "from": 1783919278.5154655, - "to": 1783919338.4484332, + "index": 5052, + "from": 1784524378.4920924, + "to": 1784524438.4976397, "compliant": true, - "duration": 59.93296766281128 + "duration": 60.005547285079956 }, { - "index": 4996, - "from": 1783853098.455609, - "to": 1783919278.5154655, + "index": 5051, + "from": 1784443978.4673176, + "to": 1784524378.4920924, "compliant": true, - "duration": 66180.0598564148 + "duration": 80400.02477478981 }, { - "index": 4995, - "from": 1783853038.6230137, - "to": 1783853098.455609, + "index": 5050, + "from": 1784443918.7009392, + "to": 1784443978.4673176, "compliant": true, - "duration": 59.832595348358154 + "duration": 59.76637840270996 }, { - "index": 4994, - "from": 1783851298.54696, - "to": 1783853038.6230137, + "index": 5049, + "from": 1784437138.5022962, + "to": 1784443918.7009392, "compliant": true, - "duration": 1740.0760536193848 + "duration": 6780.1986429691315 }, { - "index": 4993, - "from": 1783851178.4482923, - "to": 1783851298.54696, + "index": 5048, + "from": 1784437018.5100105, + "to": 1784437138.5022962, "compliant": true, - "duration": 120.09866786003113 + "duration": 119.99228572845459 } ] ``` diff --git a/client_reference/kosli_log_environment.md b/client_reference/kosli_log_environment.md index 78eacad..7dd8387 100644 --- a/client_reference/kosli_log_environment.md +++ b/client_reference/kosli_log_environment.md @@ -72,22 +72,26 @@ kosli log environment aws-prod --output=json [ { "environment_name": "aws-prod", - "snapshot_index": 5007, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:8d34585@sha256:99da6bff005f90bf23d728dc2c7cfd65f0e251772b246766955fd3dc209dbb6f", - "sha256": "99da6bff005f90bf23d728dc2c7cfd65f0e251772b246766955fd3dc209dbb6f", - "description": "3 instances stopped running (from 3 to 0)", - "reported_at": 1784014258.5595071, - "pipeline": "web-ci", + "snapshot_index": 5062, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:88b7eea@sha256:cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", + "sha256": "cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", + "description": "3 instances changed", + "reported_at": 1784609878.4986525, + "pipeline": "runner-ci", "deployments": [], "flows": [ { - "flow_name": "web-ci", + "flow_name": "runner-ci", "deployments": null }, { "flow_name": "production-promotion", "deployments": null }, + { + "flow_name": "snyk-aws-beta-per-artifact", + "deployments": null + }, { "flow_name": "snyk-aws-prod-per-artifact", "deployments": null @@ -95,65 +99,73 @@ kosli log environment aws-prod --output=json ], "artifact_compliance": true, "snapshot_compliance": true, - "type": "exited", - "code_diff": "https://github.com/cyber-dojo/web/compare/97ebee56e01ca3af95bfcae0c7c328eee8c56865...8d345854efbb1063d7546ef988dd771ed5445116", + "type": "changed", + "code_diff": "https://github.com/cyber-dojo/runner/compare/627315ab66d5250fec7ec574b073f1095879a8a4...88b7eeacb488a5117ac568408363ac59a146f41a", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/web-ci/fingerprint/99da6bff005f90bf23d728dc2c7cfd65f0e251772b246766955fd3dc209dbb6f", - "html": "https://app.kosli.com/cyber-dojo/flows/web-ci/artifacts/99da6bff005f90bf23d728dc2c7cfd65f0e251772b246766955fd3dc209dbb6f?artifact_id=022a327b-df37-4f2c-94f2-2f7c3fd0" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/runner-ci/fingerprint/cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", + "html": "https://app.kosli.com/cyber-dojo/flows/runner-ci/artifacts/cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf?artifact_id=34ecf062-b48d-4c41-8714-e432768c" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5007", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5007" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5062", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5062" } } }, { "environment_name": "aws-prod", - "snapshot_index": 5006, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:5195398@sha256:f1b2a1723fee8d534e5a50f2ec83854b23e770aa57dea0479870dc308a948459", - "sha256": "f1b2a1723fee8d534e5a50f2ec83854b23e770aa57dea0479870dc308a948459", - "description": "3 instances started running (from 0 to 3)", - "reported_at": 1784014198.37591, - "pipeline": "web-ci", + "snapshot_index": 5061, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:d37aace@sha256:1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", + "sha256": "1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", + "description": "1 instance changed", + "reported_at": 1784609758.4742362, + "pipeline": "custom-start-points-ci", "deployments": [], "flows": [ { - "flow_name": "web-ci", + "flow_name": "custom-start-points-ci", "deployments": null }, { "flow_name": "production-promotion", "deployments": null + }, + { + "flow_name": "snyk-aws-beta-per-artifact", + "deployments": null + }, + { + "flow_name": "snyk-aws-prod-per-artifact", + "deployments": null } ], "artifact_compliance": true, "snapshot_compliance": true, - "type": "started-compliant", - "code_diff": "https://github.com/cyber-dojo/web/compare/8d345854efbb1063d7546ef988dd771ed5445116...51953982aab0dae2f7ff684ebb4a76e5c132e777", + "type": "changed", + "code_diff": "https://github.com/cyber-dojo/custom-start-points/compare/fc6b09be0518fbf8ab76815cb85b1745631e3659...d37aace7598ee943ba0bd5e51f224335cbdf0a3e", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/web-ci/fingerprint/f1b2a1723fee8d534e5a50f2ec83854b23e770aa57dea0479870dc308a948459", - "html": "https://app.kosli.com/cyber-dojo/flows/web-ci/artifacts/f1b2a1723fee8d534e5a50f2ec83854b23e770aa57dea0479870dc308a948459?artifact_id=231d4126-b8bb-4db6-80e9-77922477" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/custom-start-points-ci/fingerprint/1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", + "html": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci/artifacts/1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400?artifact_id=e434f9eb-be9c-4851-ab99-187f1a26" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5006", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5006" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5061", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5061" } } }, { "environment_name": "aws-prod", - "snapshot_index": 5005, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:88b7eea@sha256:cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", - "sha256": "cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", - "description": "3 instances changed", - "reported_at": 1784003998.4861574, - "pipeline": "runner-ci", + "snapshot_index": 5061, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:7ba8029@sha256:3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5", + "sha256": "3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5", + "description": "1 instance changed", + "reported_at": 1784609758.4742362, + "pipeline": "nginx-ci", "deployments": [], "flows": [ { - "flow_name": "runner-ci", + "flow_name": "nginx-ci", "deployments": null }, { @@ -171,31 +183,31 @@ kosli log environment aws-prod --output=json ], "artifact_compliance": true, "snapshot_compliance": true, - "type": "updated-provenance", - "code_diff": "https://github.com/cyber-dojo/runner/compare/627315ab66d5250fec7ec574b073f1095879a8a4...88b7eeacb488a5117ac568408363ac59a146f41a", + "type": "changed", + "code_diff": "https://github.com/cyber-dojo/nginx/compare/9b711df71c76a1f293c2525ace65778036591baf...7ba8029e0cb5d4c8fa51360f59b5cb8714a60d47", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/runner-ci/fingerprint/cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", - "html": "https://app.kosli.com/cyber-dojo/flows/runner-ci/artifacts/cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf?artifact_id=34ecf062-b48d-4c41-8714-e432768c" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/nginx-ci/fingerprint/3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5", + "html": "https://app.kosli.com/cyber-dojo/flows/nginx-ci/artifacts/3fe0f4dede834e7315a340526c9719446a7537a4e4e42c6802c3c5ac86db3ec5?artifact_id=5c293d3e-84a1-42dd-8215-6abd8d8d" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5005", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5005" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5061", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5061" } } }, { "environment_name": "aws-prod", - "snapshot_index": 5004, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:8beff99@sha256:7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", - "sha256": "7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", + "snapshot_index": 5061, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:804f248@sha256:a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "sha256": "a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", "description": "1 instance changed", - "reported_at": 1784003938.5445926, - "pipeline": "differ-ci", + "reported_at": 1784609758.4742362, + "pipeline": "exercises-start-points-ci", "deployments": [], "flows": [ { - "flow_name": "differ-ci", + "flow_name": "exercises-start-points-ci", "deployments": null }, { @@ -214,30 +226,30 @@ kosli log environment aws-prod --output=json "artifact_compliance": true, "snapshot_compliance": true, "type": "changed", - "code_diff": "https://github.com/cyber-dojo/differ/compare/26dcd06257a4bb00d594dbb5de05eefbb7b20379...8beff9901ac67acb7afcab3408106208571a1124", + "code_diff": "https://github.com/cyber-dojo/exercises-start-points/compare/80b913e9f88902428a3567f75165d8b9d73b561a...804f248d832dc34e564507b009c246dfb4f0c657", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/differ-ci/fingerprint/7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc", - "html": "https://app.kosli.com/cyber-dojo/flows/differ-ci/artifacts/7e2d411aedcf779dc4be7da47957f698696df954a7f557688d0052e9a18218fc?artifact_id=ece4f8ca-6c19-4ca5-a482-dd4af708" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/exercises-start-points-ci/fingerprint/a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "html": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci/artifacts/a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613?artifact_id=0e55e1be-fab1-475b-8aaa-b45ca6e2" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5004", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5004" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5061", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5061" } } }, { "environment_name": "aws-prod", - "snapshot_index": 5004, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/runner:88b7eea@sha256:cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", - "sha256": "cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", - "description": "3 instances changed", - "reported_at": 1784003938.5445926, - "pipeline": "runner-ci", + "snapshot_index": 5061, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:76672a8@sha256:aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", + "sha256": "aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", + "description": "1 instance changed", + "reported_at": 1784609758.4742362, + "pipeline": "creator-ci", "deployments": [], "flows": [ { - "flow_name": "runner-ci", + "flow_name": "creator-ci", "deployments": null }, { @@ -256,30 +268,30 @@ kosli log environment aws-prod --output=json "artifact_compliance": true, "snapshot_compliance": true, "type": "updated-provenance", - "code_diff": "https://github.com/cyber-dojo/runner/compare/627315ab66d5250fec7ec574b073f1095879a8a4...88b7eeacb488a5117ac568408363ac59a146f41a", + "code_diff": "https://github.com/cyber-dojo/creator/compare/7e00b70f8911edf1c480ba9a8b9c2a280260cb08...76672a8b247049c3ce8c3140852e17be8f47d995", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/runner-ci/fingerprint/cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf", - "html": "https://app.kosli.com/cyber-dojo/flows/runner-ci/artifacts/cf3f94bb0d1130ca799b94450614109a917d8c53ea99fc20bd04c51141873fcf?artifact_id=34ecf062-b48d-4c41-8714-e432768c" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/creator-ci/fingerprint/aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", + "html": "https://app.kosli.com/cyber-dojo/flows/creator-ci/artifacts/aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6?artifact_id=3cb9c270-d59b-4b28-b16a-b23d89d2" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5004", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5004" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5061", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5061" } } }, { "environment_name": "aws-prod", - "snapshot_index": 5003, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:d37aace@sha256:1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", - "sha256": "1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", + "snapshot_index": 5061, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:5407827@sha256:d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", + "sha256": "d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", "description": "1 instance changed", - "reported_at": 1784003878.547647, - "pipeline": "custom-start-points-ci", + "reported_at": 1784609758.4742362, + "pipeline": "dashboard-ci", "deployments": [], "flows": [ { - "flow_name": "custom-start-points-ci", + "flow_name": "dashboard-ci", "deployments": null }, { @@ -298,30 +310,30 @@ kosli log environment aws-prod --output=json "artifact_compliance": true, "snapshot_compliance": true, "type": "updated-provenance", - "code_diff": "https://github.com/cyber-dojo/custom-start-points/compare/fc6b09be0518fbf8ab76815cb85b1745631e3659...d37aace7598ee943ba0bd5e51f224335cbdf0a3e", + "code_diff": "https://github.com/cyber-dojo/dashboard/compare/e4757683b74df7033c95aa544a7824b395c2f8bb...5407827a19ff32c8d0e7ff2e8f18665e86e64f01", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/custom-start-points-ci/fingerprint/1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", - "html": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci/artifacts/1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400?artifact_id=e434f9eb-be9c-4851-ab99-187f1a26" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/dashboard-ci/fingerprint/d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", + "html": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci/artifacts/d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e?artifact_id=53e5b750-6f87-43db-a8a3-e1f5b1db" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5003", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5003" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5061", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5061" } } }, { "environment_name": "aws-prod", - "snapshot_index": 5003, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/exercises-start-points:804f248@sha256:a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", - "sha256": "a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", + "snapshot_index": 5061, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:f4bb341@sha256:fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", + "sha256": "fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", "description": "1 instance changed", - "reported_at": 1784003878.547647, - "pipeline": "exercises-start-points-ci", + "reported_at": 1784609758.4742362, + "pipeline": "saver-ci", "deployments": [], "flows": [ { - "flow_name": "exercises-start-points-ci", + "flow_name": "saver-ci", "deployments": null }, { @@ -329,41 +341,41 @@ kosli log environment aws-prod --output=json "deployments": null }, { - "flow_name": "snyk-aws-prod-per-artifact", + "flow_name": "snyk-aws-beta-per-artifact", "deployments": null }, { - "flow_name": "snyk-aws-beta-per-artifact", + "flow_name": "snyk-aws-prod-per-artifact", "deployments": null } ], "artifact_compliance": true, "snapshot_compliance": true, "type": "updated-provenance", - "code_diff": "https://github.com/cyber-dojo/exercises-start-points/compare/80b913e9f88902428a3567f75165d8b9d73b561a...804f248d832dc34e564507b009c246dfb4f0c657", + "code_diff": "https://github.com/cyber-dojo/saver/compare/55561dc8a8d25313f5318038f26892cdee5e90f7...f4bb3412725258648a7cf5ce1a776609b4dade72", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/exercises-start-points-ci/fingerprint/a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613", - "html": "https://app.kosli.com/cyber-dojo/flows/exercises-start-points-ci/artifacts/a07b93ce0975df90f08f0dc171105a4f6e61e5b91aaf5ca9874d372084e1b613?artifact_id=0e55e1be-fab1-475b-8aaa-b45ca6e2" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/saver-ci/fingerprint/fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", + "html": "https://app.kosli.com/cyber-dojo/flows/saver-ci/artifacts/fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97?artifact_id=e3c009b8-349c-4f4e-8730-f45dfccf" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5003", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5003" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5061", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5061" } } }, { "environment_name": "aws-prod", - "snapshot_index": 5002, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:9b711df@sha256:0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", - "sha256": "0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", + "snapshot_index": 5060, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:76672a8@sha256:aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", + "sha256": "aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", "description": "1 instance changed", - "reported_at": 1784003818.431919, - "pipeline": "nginx-ci", + "reported_at": 1784609698.6156423, + "pipeline": "creator-ci", "deployments": [], "flows": [ { - "flow_name": "nginx-ci", + "flow_name": "creator-ci", "deployments": null }, { @@ -371,41 +383,41 @@ kosli log environment aws-prod --output=json "deployments": null }, { - "flow_name": "snyk-aws-prod-per-artifact", + "flow_name": "snyk-aws-beta-per-artifact", "deployments": null }, { - "flow_name": "snyk-aws-beta-per-artifact", + "flow_name": "snyk-aws-prod-per-artifact", "deployments": null } ], "artifact_compliance": true, "snapshot_compliance": true, "type": "updated-provenance", - "code_diff": "https://github.com/cyber-dojo/nginx/compare/cbf0063e279351ffb201b39296e9bfe892dc772f...9b711df71c76a1f293c2525ace65778036591baf", + "code_diff": "https://github.com/cyber-dojo/creator/compare/7e00b70f8911edf1c480ba9a8b9c2a280260cb08...76672a8b247049c3ce8c3140852e17be8f47d995", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/nginx-ci/fingerprint/0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", - "html": "https://app.kosli.com/cyber-dojo/flows/nginx-ci/artifacts/0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7?artifact_id=0d448ff6-ac85-47bb-8d86-9dfab222" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/creator-ci/fingerprint/aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", + "html": "https://app.kosli.com/cyber-dojo/flows/creator-ci/artifacts/aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6?artifact_id=3cb9c270-d59b-4b28-b16a-b23d89d2" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5002", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5002" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5060", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5060" } } }, { "environment_name": "aws-prod", - "snapshot_index": 5002, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:e59370c@sha256:48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", - "sha256": "48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", + "snapshot_index": 5060, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:c6db342@sha256:f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", + "sha256": "f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", "description": "1 instance changed", - "reported_at": 1784003818.431919, - "pipeline": "saver-ci", + "reported_at": 1784609698.6156423, + "pipeline": "languages-start-points-ci", "deployments": [], "flows": [ { - "flow_name": "saver-ci", + "flow_name": "languages-start-points-ci", "deployments": null }, { @@ -413,41 +425,41 @@ kosli log environment aws-prod --output=json "deployments": null }, { - "flow_name": "snyk-aws-prod-per-artifact", + "flow_name": "snyk-aws-beta-per-artifact", "deployments": null }, { - "flow_name": "snyk-aws-beta-per-artifact", + "flow_name": "snyk-aws-prod-per-artifact", "deployments": null } ], "artifact_compliance": true, "snapshot_compliance": true, - "type": "updated-provenance", - "code_diff": "https://github.com/cyber-dojo/saver/compare/b8e6c03975a5701e3e8d198549f463989f1a00f4...e59370cc9a235dec909ef1f8467d4cd6fb923ae8", + "type": "changed", + "code_diff": "https://github.com/cyber-dojo/languages-start-points/compare/04e0e14bb8874ab521d35c97d6040133f0d2143a...c6db342472238a7852b6ff31b04f9a6a6099f5cf", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/saver-ci/fingerprint/48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", - "html": "https://app.kosli.com/cyber-dojo/flows/saver-ci/artifacts/48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c?artifact_id=be95fb64-f609-4b67-b5cb-e0efe36e" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/languages-start-points-ci/fingerprint/f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", + "html": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci/artifacts/f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418?artifact_id=ed104a44-8358-4883-beeb-ac3c8bb7" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5002", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5002" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5060", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5060" } } }, { "environment_name": "aws-prod", - "snapshot_index": 5002, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/languages-start-points:c6db342@sha256:f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", - "sha256": "f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", + "snapshot_index": 5060, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:f4bb341@sha256:fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", + "sha256": "fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", "description": "1 instance changed", - "reported_at": 1784003818.431919, - "pipeline": "languages-start-points-ci", + "reported_at": 1784609698.6156423, + "pipeline": "saver-ci", "deployments": [], "flows": [ { - "flow_name": "languages-start-points-ci", + "flow_name": "saver-ci", "deployments": null }, { @@ -465,39 +477,39 @@ kosli log environment aws-prod --output=json ], "artifact_compliance": true, "snapshot_compliance": true, - "type": "updated-provenance", - "code_diff": "https://github.com/cyber-dojo/languages-start-points/compare/04e0e14bb8874ab521d35c97d6040133f0d2143a...c6db342472238a7852b6ff31b04f9a6a6099f5cf", + "type": "changed", + "code_diff": "https://github.com/cyber-dojo/saver/compare/55561dc8a8d25313f5318038f26892cdee5e90f7...f4bb3412725258648a7cf5ce1a776609b4dade72", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/languages-start-points-ci/fingerprint/f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418", - "html": "https://app.kosli.com/cyber-dojo/flows/languages-start-points-ci/artifacts/f4ed92af30318fe8230648a2fc1f482970ad0ef821eeaaeac76759cd8fe03418?artifact_id=ed104a44-8358-4883-beeb-ac3c8bb7" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/saver-ci/fingerprint/fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", + "html": "https://app.kosli.com/cyber-dojo/flows/saver-ci/artifacts/fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97?artifact_id=e3c009b8-349c-4f4e-8730-f45dfccf" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5002", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5002" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5060", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5060" } } }, { "environment_name": "aws-prod", - "snapshot_index": 5001, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:7e00b70@sha256:0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", - "sha256": "0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", - "description": "1 instance changed", - "reported_at": 1784003758.5531633, - "pipeline": "creator-ci", + "snapshot_index": 5059, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/web:3f0b997@sha256:0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", + "sha256": "0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", + "description": "3 instances changed", + "reported_at": 1784609638.5198727, + "pipeline": "web-ci", "deployments": [], "flows": [ { - "flow_name": "creator-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 }, { @@ -508,30 +520,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/6ff6b4c71ab218d39065654bef32839b9226d21f...7e00b70f8911edf1c480ba9a8b9c2a280260cb08", + "code_diff": "https://github.com/cyber-dojo/web/compare/bdf01beca687a34db9689499bd805cfc752a1747...3f0b9975f96b7f4e4aae0b4409cebda3209be164", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/creator-ci/fingerprint/0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50", - "html": "https://app.kosli.com/cyber-dojo/flows/creator-ci/artifacts/0744a611723cb72a3f24b33c2d56fcbb1bfbedf0637a962f259fada8e3dbbe50?artifact_id=aeec9b85-1a23-4579-b4a8-dbc98a05" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/web-ci/fingerprint/0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972", + "html": "https://app.kosli.com/cyber-dojo/flows/web-ci/artifacts/0eaa303537220d95ba656b829c1d9c85e2865c986c4736962b85f4df5adb8972?artifact_id=0f00c8a9-1489-416c-b64f-5819890f" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5001", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5001" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5059", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5059" } } }, { "environment_name": "aws-prod", - "snapshot_index": 5001, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/nginx:9b711df@sha256:0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", - "sha256": "0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", + "snapshot_index": 5059, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/differ:335ddfa@sha256:c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", + "sha256": "c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", "description": "1 instance changed", - "reported_at": 1784003758.5531633, - "pipeline": "nginx-ci", + "reported_at": 1784609638.5198727, + "pipeline": "differ-ci", "deployments": [], "flows": [ { - "flow_name": "nginx-ci", + "flow_name": "differ-ci", "deployments": null }, { @@ -550,30 +562,30 @@ kosli log environment aws-prod --output=json "artifact_compliance": true, "snapshot_compliance": true, "type": "changed", - "code_diff": "https://github.com/cyber-dojo/nginx/compare/cbf0063e279351ffb201b39296e9bfe892dc772f...9b711df71c76a1f293c2525ace65778036591baf", + "code_diff": "https://github.com/cyber-dojo/differ/compare/8beff9901ac67acb7afcab3408106208571a1124...335ddfa139708c37908dd594a0502bc6d88f8615", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/nginx-ci/fingerprint/0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7", - "html": "https://app.kosli.com/cyber-dojo/flows/nginx-ci/artifacts/0a858af40ca7a862ac1ba6a895e75c9030097f5890e9cc37c828e4adc55940e7?artifact_id=0d448ff6-ac85-47bb-8d86-9dfab222" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/differ-ci/fingerprint/c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f", + "html": "https://app.kosli.com/cyber-dojo/flows/differ-ci/artifacts/c2a404127f3114a7b82a8c0633f85bad599dd54d9c97cf1bc872ae9eab2bbe5f?artifact_id=5f3d2a2e-acdb-4414-a1e7-ebca7c32" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5001", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5001" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5059", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5059" } } }, { "environment_name": "aws-prod", - "snapshot_index": 5001, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/custom-start-points:d37aace@sha256:1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", - "sha256": "1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", + "snapshot_index": 5059, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:5407827@sha256:d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", + "sha256": "d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", "description": "1 instance changed", - "reported_at": 1784003758.5531633, - "pipeline": "custom-start-points-ci", + "reported_at": 1784609638.5198727, + "pipeline": "dashboard-ci", "deployments": [], "flows": [ { - "flow_name": "custom-start-points-ci", + "flow_name": "dashboard-ci", "deployments": null }, { @@ -591,26 +603,26 @@ kosli log environment aws-prod --output=json ], "artifact_compliance": true, "snapshot_compliance": true, - "type": "changed", - "code_diff": "https://github.com/cyber-dojo/custom-start-points/compare/fc6b09be0518fbf8ab76815cb85b1745631e3659...d37aace7598ee943ba0bd5e51f224335cbdf0a3e", + "type": "updated-provenance", + "code_diff": "https://github.com/cyber-dojo/dashboard/compare/e4757683b74df7033c95aa544a7824b395c2f8bb...5407827a19ff32c8d0e7ff2e8f18665e86e64f01", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/custom-start-points-ci/fingerprint/1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400", - "html": "https://app.kosli.com/cyber-dojo/flows/custom-start-points-ci/artifacts/1ed61f19b66b82f7f122b7b88522360de73abb3536fab5d0f8eadb9b987f9400?artifact_id=e434f9eb-be9c-4851-ab99-187f1a26" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/dashboard-ci/fingerprint/d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e", + "html": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci/artifacts/d5e2c2da34f74c61721f620d410e6ae9299f15e1f928aeb903cefdd72a1e815e?artifact_id=53e5b750-6f87-43db-a8a3-e1f5b1db" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5001", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5001" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5059", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5059" } } }, { "environment_name": "aws-prod", - "snapshot_index": 5001, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:e59370c@sha256:48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", - "sha256": "48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", + "snapshot_index": 5058, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/saver:f4bb341@sha256:fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", + "sha256": "fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", "description": "1 instance changed", - "reported_at": 1784003758.5531633, + "reported_at": 1784525098.4087725, "pipeline": "saver-ci", "deployments": [], "flows": [ @@ -623,68 +635,68 @@ kosli log environment aws-prod --output=json "deployments": null }, { - "flow_name": "snyk-aws-beta-per-artifact", + "flow_name": "snyk-aws-prod-per-artifact", "deployments": null }, { - "flow_name": "snyk-aws-prod-per-artifact", + "flow_name": "snyk-aws-beta-per-artifact", "deployments": null } ], "artifact_compliance": true, "snapshot_compliance": true, - "type": "changed", - "code_diff": "https://github.com/cyber-dojo/saver/compare/b8e6c03975a5701e3e8d198549f463989f1a00f4...e59370cc9a235dec909ef1f8467d4cd6fb923ae8", + "type": "updated-provenance", + "code_diff": "https://github.com/cyber-dojo/saver/compare/55561dc8a8d25313f5318038f26892cdee5e90f7...f4bb3412725258648a7cf5ce1a776609b4dade72", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/saver-ci/fingerprint/48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c", - "html": "https://app.kosli.com/cyber-dojo/flows/saver-ci/artifacts/48f4e8dcbb47c68acb1ed199ab915f69fa81d8dc052b04eae26617e9a9b1599c?artifact_id=be95fb64-f609-4b67-b5cb-e0efe36e" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/saver-ci/fingerprint/fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97", + "html": "https://app.kosli.com/cyber-dojo/flows/saver-ci/artifacts/fcfc73775b49f8b8414c720e820b38258c6d18cb9d25b7ac76ff2d528a7add97?artifact_id=e3c009b8-349c-4f4e-8730-f45dfccf" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5001", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5001" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5058", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5058" } } }, { "environment_name": "aws-prod", - "snapshot_index": 5001, - "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/dashboard:e475768@sha256:54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", - "sha256": "54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", + "snapshot_index": 5057, + "artifact_name": "244531986313.dkr.ecr.eu-central-1.amazonaws.com/creator:76672a8@sha256:aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", + "sha256": "aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", "description": "1 instance changed", - "reported_at": 1784003758.5531633, - "pipeline": "dashboard-ci", + "reported_at": 1784525038.351176, + "pipeline": "creator-ci", "deployments": [], "flows": [ { - "flow_name": "dashboard-ci", + "flow_name": "creator-ci", "deployments": null }, { - "flow_name": "snyk-aws-beta-per-artifact", + "flow_name": "production-promotion", "deployments": null }, { - "flow_name": "production-promotion", + "flow_name": "snyk-aws-prod-per-artifact", "deployments": null }, { - "flow_name": "snyk-aws-prod-per-artifact", + "flow_name": "snyk-aws-beta-per-artifact", "deployments": null } ], "artifact_compliance": true, "snapshot_compliance": true, - "type": "changed", - "code_diff": "https://github.com/cyber-dojo/dashboard/compare/6d203a85ffda1513db4d86d4e48b1f969bd2f510...e4757683b74df7033c95aa544a7824b395c2f8bb", + "type": "updated-provenance", + "code_diff": "https://github.com/cyber-dojo/creator/compare/7e00b70f8911edf1c480ba9a8b9c2a280260cb08...76672a8b247049c3ce8c3140852e17be8f47d995", "_links": { "artifact": { - "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/dashboard-ci/fingerprint/54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb", - "html": "https://app.kosli.com/cyber-dojo/flows/dashboard-ci/artifacts/54f6da185cd0f0ef001a0b33c099565fa736546562e0411f706832e72dca47bb?artifact_id=cc7c618f-d22e-4d95-b6f1-cea4fded" + "self": "https://app.kosli.com/api/v2/artifacts/cyber-dojo/creator-ci/fingerprint/aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6", + "html": "https://app.kosli.com/cyber-dojo/flows/creator-ci/artifacts/aaf68b01cfe75f9012155d59cc7421dac140457ea7f5eb1e508e12b7f1e58aa6?artifact_id=3cb9c270-d59b-4b28-b16a-b23d89d2" }, "snapshot": { - "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5001", - "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5001" + "self": "https://app.kosli.com/api/v2/snapshots/cyber-dojo/aws-prod/5057", + "html": "https://app.kosli.com/cyber-dojo/environments/aws-prod/snapshots/5057" } } } diff --git a/client_reference/overview.md b/client_reference/overview.md index 21102fc..3366562 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.33.1**. + This reference was generated from Kosli CLI **v2.33.2**. The Kosli CLI allows you to interact with Kosli from your terminal and CI/CD pipelines.