From 45a84a23dbbeda943e078bcb177dfee9c17f7fe8 Mon Sep 17 00:00:00 2001 From: Jamon Camisso Date: Sun, 31 Mar 2024 08:57:50 -0400 Subject: [PATCH] Attempt 2 at octo-sts for platform docs PRs Signed-off-by: Jamon Camisso --- .github/chainguard/edu.sts.yaml | 8 ++ ...cs-enforce.yaml => autodocs-platform.yaml} | 24 ++-- .../integrate-enforce-docs/action.yaml | 10 +- .../cloudevents/events-reference.md | 125 +++++++++--------- 4 files changed, 90 insertions(+), 77 deletions(-) create mode 100644 .github/chainguard/edu.sts.yaml rename .github/workflows/{autodocs-enforce.yaml => autodocs-platform.yaml} (88%) diff --git a/.github/chainguard/edu.sts.yaml b/.github/chainguard/edu.sts.yaml new file mode 100644 index 0000000000..6edbfb9fdb --- /dev/null +++ b/.github/chainguard/edu.sts.yaml @@ -0,0 +1,8 @@ +issuer: https://token.actions.githubusercontent.com +subject: repo:chainguard-dev/edu:ref:refs/heads/platform-docs +claim_pattern: + job_workflow_ref: chainguard-dev/edu/.github/workflows/autodocs-platform.yaml@refs/heads/platform-docs + +permissions: + contents: write + pull_requests: write diff --git a/.github/workflows/autodocs-enforce.yaml b/.github/workflows/autodocs-platform.yaml similarity index 88% rename from .github/workflows/autodocs-enforce.yaml rename to .github/workflows/autodocs-platform.yaml index b21803830e..43ced77025 100644 --- a/.github/workflows/autodocs-enforce.yaml +++ b/.github/workflows/autodocs-platform.yaml @@ -1,12 +1,12 @@ -name: Build Enforce Docs +name: Build Platform Docs on: schedule: - cron: "0 * * * *" workflow_dispatch: push: - branches: - - "update-enforce-workflow" + branches: + - platform-docs jobs: check-new-docs: @@ -51,7 +51,7 @@ jobs: echo "latest=$latest" >> $GITHUB_OUTPUT fi - integrate-enforce-docs: + integrate-platform-docs: runs-on: ubuntu-latest permissions: @@ -83,7 +83,7 @@ jobs: workload_identity_provider: "${{ secrets.GCP_WORKLOAD_IDENTITY_PROVIDER }}" service_account: "${{ secrets.GCP_SERVICE_ACCOUNT }}" - - uses: ./.github/workflows/integrate-enforce-docs + - uses: ./.github/workflows/integrate-platform-docs with: project_id: "${{ secrets.PROJECT_ID }}" workload_identity_provider: "${{ secrets.GCP_WORKLOAD_IDENTITY_PROVIDER }}" @@ -103,6 +103,13 @@ jobs: - name: npm run build run: npm run build + - name: Set up Octo-STS + uses: chainguard-dev/octo-sts-action@6177b4481c00308b3839969c3eca88c96a91775f # v1.0.0 + id: octo-sts + with: + scope: chainguard-dev/edu + identity: edu + - name: Commit to autodocs branch env: GH_TOKEN: ${{ github.token }} @@ -121,11 +128,10 @@ jobs: PR=$(gh pr list --json title,headRefName,url |jq '.[] | select(.headRefName=="autodocs")') if [ -z "${PR}" ]; then gh pr create \ - --assignee jamonation \ --base main --head autodocs \ - --title "Enforce docs ${{needs.check-new-docs.outputs.latest}} autocommit" \ - --body "Enforce docs ${{needs.check-new-docs.outputs.latest}} autocommit" \ - --no-maintainer-edit --label automated,documentation,enforce + --title "Platform docs ${{needs.check-new-docs.outputs.latest}} autocommit" \ + --body "Platform docs ${{needs.check-new-docs.outputs.latest}} autocommit" \ + --no-maintainer-edit --label automated,documentation,platform else echo "PR exists, see ${PR}" fi diff --git a/.github/workflows/integrate-enforce-docs/action.yaml b/.github/workflows/integrate-enforce-docs/action.yaml index 04485ccd0d..94dd96913b 100644 --- a/.github/workflows/integrate-enforce-docs/action.yaml +++ b/.github/workflows/integrate-enforce-docs/action.yaml @@ -20,19 +20,19 @@ inputs: runs: using: composite steps: - - name: download enforce changelog.md from cloud storage + - name: download changelog.md from cloud storage shell: bash run: | gcloud --quiet storage cp --project="${{ inputs.project_id }}" \ "${{ inputs.storage_bucket }}/enforce-changelog/changelog.md" content/chainguard/chainguard-enforce/ - - name: download enforce openapi api.json spec from cloud storage + - name: download openapi api.json spec from cloud storage shell: bash run: | gcloud --quiet storage cp --project="${{ inputs.project_id }}" \ "${{ inputs.storage_bucket }}/enforce-openapi/api.json" static/ - - name: download enforce events.md from cloud storage + - name: download events.md from cloud storage shell: bash run: | gcloud --quiet storage cp --project="${{ inputs.project_id }}" \ @@ -59,13 +59,13 @@ runs: - name: add tags to changelog by inserting line with sed shell: bash run: | - sed '/draft: false/a tags: ["Enforce", "Reference", "Product"]' \ + sed '/draft: false/a tags: ["Platform", "Reference", "Product"]' \ -i content/chainguard/chainguard-enforce/changelog.md - name: add tags to cloudevents by inserting line with sed shell: bash run: | - sed '/draft: false/a tags: ["Enforce", "Reference", "Product"]' \ + sed '/draft: false/a tags: ["Platform", "Reference", "Product"]' \ -i content/chainguard/administration/cloudevents/events-reference.md - name: download domains.md from cloud storage diff --git a/content/chainguard/administration/cloudevents/events-reference.md b/content/chainguard/administration/cloudevents/events-reference.md index 569998dbf7..f3d95ef2dd 100644 --- a/content/chainguard/administration/cloudevents/events-reference.md +++ b/content/chainguard/administration/cloudevents/events-reference.md @@ -4,16 +4,15 @@ lead: "" description: "Chainguard Events" type: "article" date: 2022-11-15T12:05:04 -lastmod: 2024-03-20T19:45:27 +lastmod: 2024-03-31T08:43:43 draft: false -tags: ["Enforce", "Reference", "Product"] images: [] weight: 780 --- Chainguard generates and emits [CloudEvents](https://cloudevents.io/) based on actions that occur within a Chainguard account, such as registering a Kubernetes cluster or creating an IAM invitation. Chainguard also emits events when workloads or policies are changed in a cluster. -Check out [this GitHub repository](https://github.com/chainguard-dev/enforce-events) for some sample applications that demonstrate how to use events to create Slack notifications, open GitHub issues, and mirror images. +Check out [this GitHub repository](https://github.com/chainguard-dev/platform-examples) for some sample applications that demonstrate how to use events to create Slack notifications, open GitHub issues, and mirror images. To subscribe to Chainguard events for your account, use the `chainctl` command like this: @@ -38,7 +37,7 @@ Since Chainguard groups can contain child groups, events in a child group will p * An account UID of `0475f6baca584a8964a6bce6b74dbe78dd8805b6` * A group SUID of `b74ce966caf448d1` * A child of group `b74ce966caf448d1` with its own SUID of `dda9aab2d2d90f9e` -* A Chainguard Enforce namespace admission event of type `Ce-Type: dev.chainguard.admission.namespace.v1` with an SUID `1a4b29ca6df80013` +* A namespace admission event of type `Ce-Type: dev.chainguard.admission.namespace.v1` with an SUID `1a4b29ca6df80013` The complete UIDP in the event's `Ce-Subject` header would be: @@ -56,7 +55,7 @@ An event like a policy validation with SUID of `bcb18b9a6f9f62b6` occurring in t Every Chainguard event has a JWT formatted [OIDC ID token](https://openid.net/specs/openid-connect-basic-1_0.html#IDToken) in its `Authorization` header. For authorization purposes, there are two important fields to validate: -1. Use the `iss` field to ensure that the issuer is Chainguard, specifically `https://issuer.enforce.dev`. +1. Use the `iss` field to ensure that the issuer is Chainguard, specifically `https://issuer.chainguard.dev`. 2. Use the `sub` field to check that the event matches your configured Chainguard identity. For example, assuming a UIDP ID of `0475f6baca584a8964a6bce6b74dbe78dd8805b6`, the value will resemble the following: `webhook:0475f6baca584a8964a6bce6b74dbe78dd8805b6`. If the subscription is in a sub-group, then the value will have the corresponding group SUID appended to the path. Validating these fields before processing the JWT token using a verification library can save resources, as well as alert about suspicious traffic, or misconfigured Chainguard group settings. @@ -81,7 +80,7 @@ Ce-Id: cloudevent generated UUID Ce-Source: k8s://namespace-UID Ce-Specversion: 1.0 Ce-Subject: UIDP of the namespace -Ce-Time: 2024-03-20T19:45:27.024327412Z +Ce-Time: 2024-03-31T12:43:43.986681Z Ce-Type: dev.chainguard.admission.namespace.v1 Content-Length: 282 Content-Type: application/json @@ -119,7 +118,7 @@ Ce-Id: cloudevent generated UUID Ce-Source: k8s://namespace-UID Ce-Specversion: 1.0 Ce-Subject: UIDP of the namespace -Ce-Time: 2024-03-20T19:45:27.025120072Z +Ce-Time: 2024-03-31T12:43:43.986847Z Ce-Type: dev.chainguard.admission.namespace.v1 Content-Length: 282 Content-Type: application/json @@ -158,7 +157,7 @@ Ce-Id: cloudevent generated UUID Ce-Source: k8s://cluster-id Ce-Specversion: 1.0 Ce-Subject: UIDP of cluster -Ce-Time: 2024-03-20T19:45:27.023668362Z +Ce-Time: 2024-03-31T12:43:43.986441Z Ce-Type: dev.chainguard.admission.v1 Content-Length: 220 Content-Type: application/json @@ -195,9 +194,9 @@ Ce-Id: cloudevent generated UUID Ce-Source: k8s://cluster-id Ce-Specversion: 1.0 Ce-Subject: image ID e.g. us.gcr.io/prod-enforce-fabc/chainctl@sha256:123abc... -Ce-Time: 2024-03-20T19:45:27.022790296Z +Ce-Time: 2024-03-31T12:43:43.984722Z Ce-Type: dev.chainguard.policy.validation.changed.v1 -Content-Length: 476 +Content-Length: 470 Content-Type: application/json User-Agent: Chainguard Enforce @@ -213,12 +212,12 @@ User-Agent: Chainguard Enforce "body": { "cluster_id": "cluster identifier", "image_id": "image ID e.g. us.gcr.io/prod-enforce-fabc/chainctl@sha256:123abc...", - "last_seen": "2024-03-20T19:45:27.022557878Z", + "last_seen": "2024-03-31T12:43:43.984365Z", "policies": { "name of the evaluated policy": { "change": "Can be [Empty, \"new\", \"degraded\", \"improved\"]", "diagnostic": "holds any diagnostic messages surfaced during policy evaluation", - "last_checked": "2024-03-20T19:45:27.022780095Z", + "last_checked": "2024-03-31T12:43:43.984671Z", "valid": false } } @@ -241,7 +240,7 @@ Ce-Id: cloudevent generated UUID Ce-Source: cgr.dev Ce-Specversion: 1.0 Ce-Subject: The identifier of the repository being pulled from -Ce-Time: 2024-03-20T19:45:27.02667559Z +Ce-Time: 2024-03-31T12:43:43.987125Z Ce-Type: dev.chainguard.registry.pull.v1 Content-Length: 757 Content-Type: application/json @@ -270,7 +269,7 @@ User-Agent: Chainguard Enforce "tag": "The tag of the image being pulled", "type": "Type determines whether the object being pulled is a manifest or blob", "user_agent": "The user-agent of the client who pulled", - "when": "2024-03-20T19:45:27.022583" + "when": "2024-03-31T08:43:43.984433" } } ``` @@ -290,7 +289,7 @@ Ce-Id: cloudevent generated UUID Ce-Source: cgr.dev Ce-Specversion: 1.0 Ce-Subject: The identifier of the repository being pushed to -Ce-Time: 2024-03-20T19:45:27.025387392Z +Ce-Time: 2024-03-31T12:43:43.986963Z Ce-Type: dev.chainguard.registry.push.v1 Content-Length: 687 Content-Type: application/json @@ -318,7 +317,7 @@ User-Agent: Chainguard Enforce "tag": "The tag of the image being pushed", "type": "Type determines whether the object being pushed is a manifest or blob", "user_agent": "The user-agent of the client who pushed", - "when": "2024-03-20T19:45:27.022558" + "when": "2024-03-31T08:43:43.984365" } } ``` @@ -338,7 +337,7 @@ Ce-Id: cloudevent generated UUID Ce-Source: https://console-api.enforce.dev/auth/v1/register Ce-Specversion: 1.0 Ce-Subject: Chainguard UIDP -Ce-Time: 2024-03-20T19:45:27.034293267Z +Ce-Time: 2024-03-31T12:43:43.990993Z Ce-Type: dev.chainguard.api.auth.registered.v1 Content-Length: 154 Content-Type: application/json @@ -375,7 +374,7 @@ Ce-Id: cloudevent generated UUID Ce-Source: https://console-api.enforce.dev/events/v1/subscriptions Ce-Specversion: 1.0 Ce-Subject: UIDP identifier of the subscription -Ce-Time: 2024-03-20T19:45:27.035178234Z +Ce-Time: 2024-03-31T12:43:43.991208Z Ce-Type: dev.chainguard.api.events.subscription.created.v1 Content-Length: 152 Content-Type: application/json @@ -411,7 +410,7 @@ Ce-Id: cloudevent generated UUID Ce-Source: https://console-api.enforce.dev/events/v1/subscriptions Ce-Specversion: 1.0 Ce-Subject: UIDP identifier of the subscription to delete -Ce-Time: 2024-03-20T19:45:27.035360548Z +Ce-Time: 2024-03-31T12:43:43.991313Z Ce-Type: dev.chainguard.api.events.subscription.deleted.v1 Content-Length: 119 Content-Type: application/json @@ -447,7 +446,7 @@ Ce-Id: cloudevent generated UUID Ce-Source: https://console-api.enforce.dev/iam/v1/account_associations Ce-Specversion: 1.0 Ce-Subject: UIDP with which this account information is associated -Ce-Time: 2024-03-20T19:45:27.034543486Z +Ce-Time: 2024-03-31T12:43:43.987439Z Ce-Type: dev.chainguard.api.iam.account_associations.created.v1 Content-Length: 385 Content-Type: application/json @@ -491,7 +490,7 @@ Ce-Id: cloudevent generated UUID Ce-Source: https://console-api.enforce.dev/iam/v1/account_associations Ce-Specversion: 1.0 Ce-Subject: UIDP with which this account information is associated -Ce-Time: 2024-03-20T19:45:27.034786205Z +Ce-Time: 2024-03-31T12:43:43.987604Z Ce-Type: dev.chainguard.api.iam.account_associations.updated.v1 Content-Length: 336 Content-Type: application/json @@ -535,7 +534,7 @@ Ce-Id: cloudevent generated UUID Ce-Source: https://console-api.enforce.dev/iam/v1/account_associations Ce-Specversion: 1.0 Ce-Subject: UIDP of the group whose associations will be deleted -Ce-Time: 2024-03-20T19:45:27.034969719Z +Ce-Time: 2024-03-31T12:43:43.987764Z Ce-Type: dev.chainguard.api.iam.account_associations.deleted.v1 Content-Length: 129 Content-Type: application/json @@ -571,7 +570,7 @@ Ce-Id: cloudevent generated UUID Ce-Source: https://console-api.enforce.dev/iam/v1/group_invites Ce-Specversion: 1.0 Ce-Subject: group UIDP under which this invite resides -Ce-Time: 2024-03-20T19:45:27.032935964Z +Ce-Time: 2024-03-31T12:43:43.98873Z Ce-Type: dev.chainguard.api.iam.group_invite.created.v1 Content-Length: 145 Content-Type: application/json @@ -609,7 +608,7 @@ Ce-Id: cloudevent generated UUID Ce-Source: https://console-api.enforce.dev/iam/v1/group_invites Ce-Specversion: 1.0 Ce-Subject: UIDP of the record -Ce-Time: 2024-03-20T19:45:27.033178183Z +Ce-Time: 2024-03-31T12:43:43.98886Z Ce-Type: dev.chainguard.api.iam.group_invite.deleted.v1 Content-Length: 92 Content-Type: application/json @@ -645,7 +644,7 @@ Ce-Id: cloudevent generated UUID Ce-Source: https://console-api.enforce.dev/iam/v1/groups Ce-Specversion: 1.0 Ce-Subject: group UIDP under which this group resides -Ce-Time: 2024-03-20T19:45:27.02891116Z +Ce-Time: 2024-03-31T12:43:43.987918Z Ce-Type: dev.chainguard.api.iam.group.created.v1 Content-Length: 169 Content-Type: application/json @@ -682,7 +681,7 @@ Ce-Id: cloudevent generated UUID Ce-Source: https://console-api.enforce.dev/iam/v1/groups Ce-Specversion: 1.0 Ce-Subject: group UIDP under which this group resides -Ce-Time: 2024-03-20T19:45:27.029121575Z +Ce-Time: 2024-03-31T12:43:43.988045Z Ce-Type: dev.chainguard.api.iam.group.updated.v1 Content-Length: 169 Content-Type: application/json @@ -719,7 +718,7 @@ Ce-Id: cloudevent generated UUID Ce-Source: https://console-api.enforce.dev/iam/v1/groups Ce-Specversion: 1.0 Ce-Subject: UIDP of the record -Ce-Time: 2024-03-20T19:45:27.029398096Z +Ce-Time: 2024-03-31T12:43:43.988158Z Ce-Type: dev.chainguard.api.iam.group.deleted.v1 Content-Length: 92 Content-Type: application/json @@ -755,7 +754,7 @@ Ce-Id: cloudevent generated UUID Ce-Source: https://console-api.enforce.dev/iam/v1/identities Ce-Specversion: 1.0 Ce-Subject: UIDP of identity -Ce-Time: 2024-03-20T19:45:27.033519909Z +Ce-Time: 2024-03-31T12:43:43.991427Z Ce-Type: dev.chainguard.api.iam.identity.created.v1 Content-Length: 329 Content-Type: application/json @@ -796,7 +795,7 @@ Ce-Id: cloudevent generated UUID Ce-Source: https://console-api.enforce.dev/iam/v1/identities Ce-Specversion: 1.0 Ce-Subject: The unique identifier of this specific identity -Ce-Time: 2024-03-20T19:45:27.033751126Z +Ce-Time: 2024-03-31T12:43:43.991545Z Ce-Type: dev.chainguard.api.iam.identity.updated.v1 Content-Length: 245 Content-Type: application/json @@ -834,7 +833,7 @@ Ce-Id: cloudevent generated UUID Ce-Source: https://console-api.enforce.dev/iam/v1/identities Ce-Specversion: 1.0 Ce-Subject: UIDP of the record -Ce-Time: 2024-03-20T19:45:27.033957842Z +Ce-Time: 2024-03-31T12:43:43.991689Z Ce-Type: dev.chainguard.api.iam.identity.deleted.v1 Content-Length: 92 Content-Type: application/json @@ -870,7 +869,7 @@ Ce-Id: cloudevent generated UUID Ce-Source: https://console-api.enforce.dev/iam/v1/identityProviders Ce-Specversion: 1.0 Ce-Subject: UIDP of identity provider -Ce-Time: 2024-03-20T19:45:27.030277663Z +Ce-Time: 2024-03-31T12:43:43.98831Z Ce-Type: dev.chainguard.api.iam.identity_providers.created.v1 Content-Length: 378 Content-Type: application/json @@ -911,7 +910,7 @@ Ce-Id: cloudevent generated UUID Ce-Source: https://console-api.enforce.dev/iam/v1/identityProviders Ce-Specversion: 1.0 Ce-Subject: The UIDP of the IAM group to nest this identity provider under -Ce-Time: 2024-03-20T19:45:27.030542083Z +Ce-Time: 2024-03-31T12:43:43.988436Z Ce-Type: dev.chainguard.api.iam.identity_providers.updated.v1 Content-Length: 279 Content-Type: application/json @@ -949,7 +948,7 @@ Ce-Id: cloudevent generated UUID Ce-Source: https://console-api.enforce.dev/iam/v1/identityProviders Ce-Specversion: 1.0 Ce-Subject: UIDP of the IdP -Ce-Time: 2024-03-20T19:45:27.030778801Z +Ce-Time: 2024-03-31T12:43:43.988541Z Ce-Type: dev.chainguard.api.iam.identity_providers.deleted.v1 Content-Length: 89 Content-Type: application/json @@ -985,7 +984,7 @@ Ce-Id: cloudevent generated UUID Ce-Source: https://console-api.enforce.dev/iam/v1/policies Ce-Specversion: 1.0 Ce-Subject: UIDP of policy -Ce-Time: 2024-03-20T19:45:27.035558963Z +Ce-Time: 2024-03-31T12:43:43.991831Z Ce-Type: dev.chainguard.api.iam.policy.created.v1 Content-Length: 286 Content-Type: application/json @@ -1026,7 +1025,7 @@ Ce-Id: cloudevent generated UUID Ce-Source: https://console-api.enforce.dev/iam/v1/policies Ce-Specversion: 1.0 Ce-Subject: UIDP of the policy -Ce-Time: 2024-03-20T19:45:27.036495134Z +Ce-Time: 2024-03-31T12:43:43.992028Z Ce-Type: dev.chainguard.api.iam.policy.deleted.v1 Content-Length: 92 Content-Type: application/json @@ -1061,7 +1060,7 @@ Ce-Id: cloudevent generated UUID Ce-Source: https://console-api.enforce.dev/iam/v1/policies Ce-Specversion: 1.0 Ce-Subject: UIDP of the policy -Ce-Time: 2024-03-20T19:45:27.036741653Z +Ce-Time: 2024-03-31T12:43:43.992151Z Ce-Type: dev.chainguard.api.iam.policy.updated.v1 Content-Length: 204 Content-Type: application/json @@ -1099,7 +1098,7 @@ Ce-Id: cloudevent generated UUID Ce-Source: https://console-api.enforce.dev/iam/v1/policyVersions Ce-Specversion: 1.0 Ce-Subject: UIDP of the policy version -Ce-Time: 2024-03-20T19:45:27.03709578Z +Ce-Time: 2024-03-31T12:43:43.992266Z Ce-Type: dev.chainguard.api.iam.policy.version.activated.v1 Content-Length: 108 Content-Type: application/json @@ -1135,7 +1134,7 @@ Ce-Id: cloudevent generated UUID Ce-Source: https://console-api.enforce.dev/iam/v1/rolebindings Ce-Specversion: 1.0 Ce-Subject: UIDP of the Role to bind -Ce-Time: 2024-03-20T19:45:27.032177407Z +Ce-Time: 2024-03-31T12:43:43.988975Z Ce-Type: dev.chainguard.api.iam.rolebindings.created.v1 Content-Length: 261 Content-Type: application/json @@ -1175,7 +1174,7 @@ Ce-Id: cloudevent generated UUID Ce-Source: https://console-api.enforce.dev/iam/v1/rolebindings Ce-Specversion: 1.0 Ce-Subject: UID of this role binding -Ce-Time: 2024-03-20T19:45:27.032415025Z +Ce-Time: 2024-03-31T12:43:43.989086Z Ce-Type: dev.chainguard.api.iam.rolebindings.updated.v1 Content-Length: 173 Content-Type: application/json @@ -1212,7 +1211,7 @@ Ce-Id: cloudevent generated UUID Ce-Source: https://console-api.enforce.dev/iam/v1/rolebindings Ce-Specversion: 1.0 Ce-Subject: UID of the record -Ce-Time: 2024-03-20T19:45:27.032621641Z +Ce-Time: 2024-03-31T12:43:43.989181Z Ce-Type: dev.chainguard.api.iam.rolebindings.deleted.v1 Content-Length: 91 Content-Type: application/json @@ -1248,7 +1247,7 @@ Ce-Id: cloudevent generated UUID Ce-Source: https://console-api.enforce.dev/registry/v1/repos Ce-Specversion: 1.0 Ce-Subject: The identifier of this specific repository -Ce-Time: 2024-03-20T19:45:27.027489452Z +Ce-Time: 2024-03-31T12:43:43.990352Z Ce-Type: dev.chainguard.api.platform.registry.repo.created.v1 Content-Length: 179 Content-Type: application/json @@ -1284,7 +1283,7 @@ Ce-Id: cloudevent generated UUID Ce-Source: https://console-api.enforce.dev/registry/v1/repos Ce-Specversion: 1.0 Ce-Subject: The identifier of this specific repository -Ce-Time: 2024-03-20T19:45:27.027765473Z +Ce-Time: 2024-03-31T12:43:43.990466Z Ce-Type: dev.chainguard.api.platform.registry.repo.updated.v1 Content-Length: 179 Content-Type: application/json @@ -1320,7 +1319,7 @@ Ce-Id: cloudevent generated UUID Ce-Source: https://console-api.enforce.dev/registry/v1/repos Ce-Specversion: 1.0 Ce-Subject: The identifier of this specific repository -Ce-Time: 2024-03-20T19:45:27.028024492Z +Ce-Time: 2024-03-31T12:43:43.990563Z Ce-Type: dev.chainguard.api.platform.registry.repo.deleted.v1 Content-Length: 116 Content-Type: application/json @@ -1355,7 +1354,7 @@ Ce-Id: cloudevent generated UUID Ce-Source: https://console-api.enforce.dev/registry/v1/tags Ce-Specversion: 1.0 Ce-Subject: The identifier of this specific tag -Ce-Time: 2024-03-20T19:45:27.028227308Z +Ce-Time: 2024-03-31T12:43:43.990658Z Ce-Type: dev.chainguard.api.platform.registry.tag.created.v1 Content-Length: 197 Content-Type: application/json @@ -1392,7 +1391,7 @@ Ce-Id: cloudevent generated UUID Ce-Source: https://console-api.enforce.dev/registry/v1/tags Ce-Specversion: 1.0 Ce-Subject: The identifier of this specific tag -Ce-Time: 2024-03-20T19:45:27.028444024Z +Ce-Time: 2024-03-31T12:43:43.990763Z Ce-Type: dev.chainguard.api.platform.registry.tag.updated.v1 Content-Length: 197 Content-Type: application/json @@ -1429,7 +1428,7 @@ Ce-Id: cloudevent generated UUID Ce-Source: https://console-api.enforce.dev/registry/v1/tags Ce-Specversion: 1.0 Ce-Subject: The identifier of this specific tag -Ce-Time: 2024-03-20T19:45:27.028636439Z +Ce-Time: 2024-03-31T12:43:43.990854Z Ce-Type: dev.chainguard.api.platform.registry.tag.deleted.v1 Content-Length: 109 Content-Type: application/json @@ -1465,9 +1464,9 @@ Ce-Id: cloudevent generated UUID Ce-Source: https://console-api.enforce.dev/tenant/v1/clusters Ce-Specversion: 1.0 Ce-Subject: Cluster UIDP under which this cluster resides -Ce-Time: 2024-03-20T19:45:27.031088725Z +Ce-Time: 2024-03-31T12:43:43.989366Z Ce-Type: dev.chainguard.api.tenant.cluster.created.v1 -Content-Length: 1732 +Content-Length: 1735 Content-Type: application/json User-Agent: Chainguard Enforce @@ -1486,8 +1485,8 @@ User-Agent: Chainguard Enforce "example activity": { "controller_name": "the name of the Controller CRD which was the source of this activity on the tenant cluster", "last_seen": { - "nanos": 22556378, - "seconds": 1710963927 + "nanos": 984364000, + "seconds": 1711889023 }, "namespace": "the namespace in which the source of this cluster activity lives", "spec_hash": "the hash of the Controller or Webhook CRD's spec", @@ -1512,14 +1511,14 @@ User-Agent: Chainguard Enforce }, "issuer": "the identity issuer tied to this cluster", "last_seen": { - "nanos": 22556078, - "seconds": 1710963927 + "nanos": 984364000, + "seconds": 1711889023 }, "managed_name": "unique name assigned to this cluster's managed agent", "name": "name of the cluster", "registered": { - "nanos": 22555678, - "seconds": 1710963927 + "nanos": 984364000, + "seconds": 1711889023 }, "remote_id": "the remote ID of this cluster", "status": { @@ -1547,7 +1546,7 @@ Ce-Id: cloudevent generated UUID Ce-Source: https://console-api.enforce.dev/tenant/v1/clusters Ce-Specversion: 1.0 Ce-Subject: UIDP of the record -Ce-Time: 2024-03-20T19:45:27.031570261Z +Ce-Time: 2024-03-31T12:43:43.990063Z Ce-Type: dev.chainguard.api.tenant.cluster.deleted.v1 Content-Length: 92 Content-Type: application/json @@ -1582,9 +1581,9 @@ Ce-Id: cloudevent generated UUID Ce-Source: https://console-api.enforce.dev/tenant/v1/clusters Ce-Specversion: 1.0 Ce-Subject: Cluster UIDP under which this cluster resides -Ce-Time: 2024-03-20T19:45:27.031772376Z +Ce-Time: 2024-03-31T12:43:43.990167Z Ce-Type: dev.chainguard.api.tenant.cluster.updated.v1 -Content-Length: 1660 +Content-Length: 1663 Content-Type: application/json User-Agent: Chainguard Enforce @@ -1602,8 +1601,8 @@ User-Agent: Chainguard Enforce "example activity": { "controller_name": "the name of the Controller CRD which was the source of this activity on the tenant cluster", "last_seen": { - "nanos": 22557378, - "seconds": 1710963927 + "nanos": 984365000, + "seconds": 1711889023 }, "namespace": "the namespace in which the source of this cluster activity lives", "spec_hash": "the hash of the Controller or Webhook CRD's spec", @@ -1628,14 +1627,14 @@ User-Agent: Chainguard Enforce }, "issuer": "the identity issuer tied to this cluster", "last_seen": { - "nanos": 22557178, - "seconds": 1710963927 + "nanos": 984365000, + "seconds": 1711889023 }, "managed_name": "unique name assigned to this cluster's managed agent", "name": "name of the cluster", "registered": { - "nanos": 22556978, - "seconds": 1710963927 + "nanos": 984364000, + "seconds": 1711889023 }, "remote_id": "the remote ID of this cluster", "status": {