From 68bdf949e74adc55b063e067ba4f4d0f67505f90 Mon Sep 17 00:00:00 2001 From: devantler Date: Sat, 20 Jun 2026 21:22:44 +0200 Subject: [PATCH 1/2] feat(deploy): manage .github issue labels declaratively Adds deploy/labels/ with an authoritative IssueLabels resource declaring the canonical triage/roadmap taxonomy for the .github repo, wired into the root kustomization and documented in deploy/README.md. Fixes #51. --- deploy/README.md | 4 ++ deploy/kustomization.yaml | 1 + deploy/labels/dot-github.yaml | 87 ++++++++++++++++++++++++++++++++ deploy/labels/kustomization.yaml | 10 ++++ 4 files changed, 102 insertions(+) create mode 100644 deploy/labels/dot-github.yaml create mode 100644 deploy/labels/kustomization.yaml diff --git a/deploy/README.md b/deploy/README.md index 10eb80b..fb1c679 100644 --- a/deploy/README.md +++ b/deploy/README.md @@ -14,6 +14,10 @@ reconcile the live GitHub org to match these manifests — including reverting out-of-band changes made in the GitHub UI. - `repositories/` — one `Repository` per managed repo. +- `teams/` — the `maintainers` team, its membership, and team → repo access. +- `labels/` — one `IssueLabels` per managed repo declaring its canonical + triage/roadmap label taxonomy (authoritative: out-of-band label drift is + reverted). See the platform repo's [`docs/github-management.md`](https://github.com/devantler-tech/platform/blob/main/docs/github-management.md) diff --git a/deploy/kustomization.yaml b/deploy/kustomization.yaml index 3519037..9ffadb7 100644 --- a/deploy/kustomization.yaml +++ b/deploy/kustomization.yaml @@ -9,3 +9,4 @@ kind: Kustomization resources: - repositories/ - teams/ + - labels/ diff --git a/deploy/labels/dot-github.yaml b/deploy/labels/dot-github.yaml new file mode 100644 index 0000000..2a354a9 --- /dev/null +++ b/deploy/labels/dot-github.yaml @@ -0,0 +1,87 @@ +# Issue labels for devantler-tech/.github — the org's declarative source-of-truth +# repo. `IssueLabels` (provider-upjet-github, terraform github_issue_labels) is +# AUTHORITATIVE: it manages the repo's COMPLETE label set, so any label not listed +# here is removed on reconcile (this is the point — it reverts out-of-band label +# drift, exactly like the rest of deploy/). `.github` currently has only `blocked` +# (kept below), so first reconcile is purely additive. +# +# managementPolicies omit Delete: Crossplane can create/update the label set but +# can never delete the IssueLabels resource's managed labels wholesale. The label +# kind `issuelabels.repo.github.m.upbound.io` is already activated in the platform +# ManagedResourceActivationPolicy and covered by the github-config tenant Role, so +# no platform-side change is needed. +# +# This `label` list is the org's CANONICAL triage/roadmap taxonomy. Bring another +# repo under management by adding `deploy/labels/.yaml` with the same +# taxonomy — but first enumerate that repo's existing labels (incl. any in use on +# open issues/PRs, and the `dependencies`/ecosystem labels Dependabot/Renovate +# apply) so the authoritative set doesn't strip a label that's actively used. +apiVersion: repo.github.m.upbound.io/v1alpha1 +kind: IssueLabels +metadata: + name: dot-github + annotations: + # Binds to the existing devantler-tech/.github repository (owner comes from + # the ProviderConfig credentials); import id for github_issue_labels is the + # repository name. + crossplane.io/external-name: .github +spec: + managementPolicies: + - Observe + - Create + - Update + - LateInitialize + forProvider: + repository: .github + label: + # --- triage / roadmap taxonomy (the portfolio-wide convention) --- + - name: roadmap + color: "0e8a16" + description: Epic / theme-level roadmap item + - name: enhancement + color: "a2eeef" + description: New feature or improvement + - name: bug + color: "d73a4a" + description: Something isn't working + - name: documentation + color: "0075ca" + description: Improvements or additions to documentation + - name: refactor + color: "fbca04" + description: Behaviour-preserving code-quality change + - name: security + color: "d93f0b" + description: Security hardening or vulnerability fix + - name: performance + color: "c5def5" + description: Performance improvement or optimisation + # --- workflow / external state --- + - name: blocked + color: "b60205" + description: An issue that is blocked by external circumstances + - name: dependencies + color: "0366d6" + description: Dependency updates (Dependabot / Renovate) + # --- standard GitHub triage helpers (kept org-wide for consistency) --- + - name: duplicate + color: "cfd3d7" + description: This issue or pull request already exists + - name: good first issue + color: "7057ff" + description: Good for newcomers + - name: help wanted + color: "008672" + description: Extra attention is needed + - name: question + color: "d876e3" + description: Further information is requested + - name: invalid + color: "e4e669" + description: This doesn't seem right + - name: wontfix + color: "ffffff" + description: This will not be worked on + providerConfigRef: + kind: ProviderConfig + name: default diff --git a/deploy/labels/kustomization.yaml b/deploy/labels/kustomization.yaml new file mode 100644 index 0000000..5b04b08 --- /dev/null +++ b/deploy/labels/kustomization.yaml @@ -0,0 +1,10 @@ +# One file per managed repository's issue-label set. `IssueLabels` is the +# AUTHORITATIVE label manager (the full set is declared per repo and drift is +# reverted). Extend by adding `.yaml` — after enumerating that repo's +# existing labels so the authoritative set doesn't strip one that's in use +# (notably the `dependencies`/ecosystem labels Dependabot/Renovate apply). See +# ../README.md and the platform repo's docs/github-management.md. +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization +resources: + - dot-github.yaml From 4834d32b518309d791eb4a8fb95198383807d565 Mon Sep 17 00:00:00 2001 From: devantler Date: Sat, 20 Jun 2026 21:43:44 +0200 Subject: [PATCH 2/2] feat(deploy): extend declarative labels to all managed repos Replaces the EndBug/label-sync mechanism with authoritative IssueLabels for every repo in repositories/ + .github. Canonical 22-label taxonomy centralized in a shared patch (was actions/.github/labels.yaml); per-repo files carry only each repo's live Dependabot/Renovate ecosystem extras so the cutover is a no-op with no bot churn. --- deploy/README.md | 8 +- deploy/labels/agent-plugins.yaml | 25 +++++ deploy/labels/agent-skills.yaml | 24 +++++ deploy/labels/ascoachingogvaner.yaml | 31 ++++++ deploy/labels/dot-github.yaml | 77 ++------------- deploy/labels/dotnet-template.yaml | 27 +++++ deploy/labels/fleet-gitops.yaml | 24 +++++ deploy/labels/gitops-tenant-template.yaml | 27 +++++ deploy/labels/go-template.yaml | 27 +++++ deploy/labels/homebrew-tap.yaml | 27 +++++ deploy/labels/ksail.yaml | 35 +++++++ deploy/labels/kustomization.yaml | 115 ++++++++++++++++++++-- deploy/labels/maintenance.yaml | 29 ++++++ deploy/labels/platform-template.yaml | 27 +++++ deploy/labels/platform.yaml | 33 +++++++ deploy/labels/unifi.yaml | 24 +++++ deploy/labels/wedding-app.yaml | 31 ++++++ 17 files changed, 512 insertions(+), 79 deletions(-) create mode 100644 deploy/labels/agent-plugins.yaml create mode 100644 deploy/labels/agent-skills.yaml create mode 100644 deploy/labels/ascoachingogvaner.yaml create mode 100644 deploy/labels/dotnet-template.yaml create mode 100644 deploy/labels/fleet-gitops.yaml create mode 100644 deploy/labels/gitops-tenant-template.yaml create mode 100644 deploy/labels/go-template.yaml create mode 100644 deploy/labels/homebrew-tap.yaml create mode 100644 deploy/labels/ksail.yaml create mode 100644 deploy/labels/maintenance.yaml create mode 100644 deploy/labels/platform-template.yaml create mode 100644 deploy/labels/platform.yaml create mode 100644 deploy/labels/unifi.yaml create mode 100644 deploy/labels/wedding-app.yaml diff --git a/deploy/README.md b/deploy/README.md index fb1c679..bfa9433 100644 --- a/deploy/README.md +++ b/deploy/README.md @@ -15,9 +15,11 @@ out-of-band changes made in the GitHub UI. - `repositories/` — one `Repository` per managed repo. - `teams/` — the `maintainers` team, its membership, and team → repo access. -- `labels/` — one `IssueLabels` per managed repo declaring its canonical - triage/roadmap label taxonomy (authoritative: out-of-band label drift is - reverted). +- `labels/` — one `IssueLabels` per managed repo. The canonical org label + taxonomy lives once in `labels/kustomization.yaml` (a shared patch appended to + every repo); each `.yaml` adds only that repo's Dependabot/Renovate + ecosystem extras. Authoritative — out-of-band label drift is reverted. This is + the Crossplane replacement for the old EndBug/label-sync workflow. See the platform repo's [`docs/github-management.md`](https://github.com/devantler-tech/platform/blob/main/docs/github-management.md) diff --git a/deploy/labels/agent-plugins.yaml b/deploy/labels/agent-plugins.yaml new file mode 100644 index 0000000..6b6877e --- /dev/null +++ b/deploy/labels/agent-plugins.yaml @@ -0,0 +1,25 @@ +# Issue labels for devantler-tech/agent-plugins. The canonical org taxonomy (22 labels) +# is appended to every IssueLabels by the shared patch in kustomization.yaml; this +# file adds only agent-plugins's repo-specific extras (the dependency/ecosystem labels +# Dependabot/Renovate apply), declared so the authoritative set doesn't churn +# against the bots. See ../README.md. +apiVersion: repo.github.m.upbound.io/v1alpha1 +kind: IssueLabels +metadata: + name: agent-plugins + annotations: + crossplane.io/external-name: agent-plugins +spec: + managementPolicies: + - Observe + - Create + - Update + - LateInitialize + forProvider: + repository: agent-plugins + label: + - name: "dependencies" + color: "ededed" + providerConfigRef: + kind: ProviderConfig + name: default diff --git a/deploy/labels/agent-skills.yaml b/deploy/labels/agent-skills.yaml new file mode 100644 index 0000000..e2c5bc0 --- /dev/null +++ b/deploy/labels/agent-skills.yaml @@ -0,0 +1,24 @@ +# Issue labels for devantler-tech/agent-skills. The canonical org taxonomy (22 labels) +# is appended to every IssueLabels by the shared patch in kustomization.yaml; this +# file adds only agent-skills's repo-specific extras (the dependency/ecosystem labels +# Dependabot/Renovate apply), declared so the authoritative set doesn't churn +# against the bots. See ../README.md. +apiVersion: repo.github.m.upbound.io/v1alpha1 +kind: IssueLabels +metadata: + name: agent-skills + annotations: + crossplane.io/external-name: agent-skills +spec: + managementPolicies: + - Observe + - Create + - Update + - LateInitialize + forProvider: + repository: agent-skills + # No repo-specific extras; the shared patch supplies the full canonical set. + label: [] + providerConfigRef: + kind: ProviderConfig + name: default diff --git a/deploy/labels/ascoachingogvaner.yaml b/deploy/labels/ascoachingogvaner.yaml new file mode 100644 index 0000000..8ab2881 --- /dev/null +++ b/deploy/labels/ascoachingogvaner.yaml @@ -0,0 +1,31 @@ +# Issue labels for devantler-tech/ascoachingogvaner. The canonical org taxonomy (22 labels) +# is appended to every IssueLabels by the shared patch in kustomization.yaml; this +# file adds only ascoachingogvaner's repo-specific extras (the dependency/ecosystem labels +# Dependabot/Renovate apply), declared so the authoritative set doesn't churn +# against the bots. See ../README.md. +apiVersion: repo.github.m.upbound.io/v1alpha1 +kind: IssueLabels +metadata: + name: ascoachingogvaner + annotations: + crossplane.io/external-name: ascoachingogvaner +spec: + managementPolicies: + - Observe + - Create + - Update + - LateInitialize + forProvider: + repository: ascoachingogvaner + label: + - name: "dependencies" + color: "0366d6" + - name: "docker" + color: "21ceff" + - name: "javascript" + color: "168700" + - name: "github_actions" + color: "000000" + providerConfigRef: + kind: ProviderConfig + name: default diff --git a/deploy/labels/dot-github.yaml b/deploy/labels/dot-github.yaml index 2a354a9..2f26d1c 100644 --- a/deploy/labels/dot-github.yaml +++ b/deploy/labels/dot-github.yaml @@ -1,29 +1,13 @@ -# Issue labels for devantler-tech/.github — the org's declarative source-of-truth -# repo. `IssueLabels` (provider-upjet-github, terraform github_issue_labels) is -# AUTHORITATIVE: it manages the repo's COMPLETE label set, so any label not listed -# here is removed on reconcile (this is the point — it reverts out-of-band label -# drift, exactly like the rest of deploy/). `.github` currently has only `blocked` -# (kept below), so first reconcile is purely additive. -# -# managementPolicies omit Delete: Crossplane can create/update the label set but -# can never delete the IssueLabels resource's managed labels wholesale. The label -# kind `issuelabels.repo.github.m.upbound.io` is already activated in the platform -# ManagedResourceActivationPolicy and covered by the github-config tenant Role, so -# no platform-side change is needed. -# -# This `label` list is the org's CANONICAL triage/roadmap taxonomy. Bring another -# repo under management by adding `deploy/labels/.yaml` with the same -# taxonomy — but first enumerate that repo's existing labels (incl. any in use on -# open issues/PRs, and the `dependencies`/ecosystem labels Dependabot/Renovate -# apply) so the authoritative set doesn't strip a label that's actively used. +# Issue labels for devantler-tech/.github. The canonical org taxonomy (22 labels) +# is appended to every IssueLabels by the shared patch in kustomization.yaml; this +# file adds only .github's repo-specific extras (the dependency/ecosystem labels +# Dependabot/Renovate apply), declared so the authoritative set doesn't churn +# against the bots. See ../README.md. apiVersion: repo.github.m.upbound.io/v1alpha1 kind: IssueLabels metadata: name: dot-github annotations: - # Binds to the existing devantler-tech/.github repository (owner comes from - # the ProviderConfig credentials); import id for github_issue_labels is the - # repository name. crossplane.io/external-name: .github spec: managementPolicies: @@ -33,55 +17,8 @@ spec: - LateInitialize forProvider: repository: .github - label: - # --- triage / roadmap taxonomy (the portfolio-wide convention) --- - - name: roadmap - color: "0e8a16" - description: Epic / theme-level roadmap item - - name: enhancement - color: "a2eeef" - description: New feature or improvement - - name: bug - color: "d73a4a" - description: Something isn't working - - name: documentation - color: "0075ca" - description: Improvements or additions to documentation - - name: refactor - color: "fbca04" - description: Behaviour-preserving code-quality change - - name: security - color: "d93f0b" - description: Security hardening or vulnerability fix - - name: performance - color: "c5def5" - description: Performance improvement or optimisation - # --- workflow / external state --- - - name: blocked - color: "b60205" - description: An issue that is blocked by external circumstances - - name: dependencies - color: "0366d6" - description: Dependency updates (Dependabot / Renovate) - # --- standard GitHub triage helpers (kept org-wide for consistency) --- - - name: duplicate - color: "cfd3d7" - description: This issue or pull request already exists - - name: good first issue - color: "7057ff" - description: Good for newcomers - - name: help wanted - color: "008672" - description: Extra attention is needed - - name: question - color: "d876e3" - description: Further information is requested - - name: invalid - color: "e4e669" - description: This doesn't seem right - - name: wontfix - color: "ffffff" - description: This will not be worked on + # No repo-specific extras; the shared patch supplies the full canonical set. + label: [] providerConfigRef: kind: ProviderConfig name: default diff --git a/deploy/labels/dotnet-template.yaml b/deploy/labels/dotnet-template.yaml new file mode 100644 index 0000000..baa5a37 --- /dev/null +++ b/deploy/labels/dotnet-template.yaml @@ -0,0 +1,27 @@ +# Issue labels for devantler-tech/dotnet-template. The canonical org taxonomy (22 labels) +# is appended to every IssueLabels by the shared patch in kustomization.yaml; this +# file adds only dotnet-template's repo-specific extras (the dependency/ecosystem labels +# Dependabot/Renovate apply), declared so the authoritative set doesn't churn +# against the bots. See ../README.md. +apiVersion: repo.github.m.upbound.io/v1alpha1 +kind: IssueLabels +metadata: + name: dotnet-template + annotations: + crossplane.io/external-name: dotnet-template +spec: + managementPolicies: + - Observe + - Create + - Update + - LateInitialize + forProvider: + repository: dotnet-template + label: + - name: "dependencies" + color: "0366d6" + - name: "github_actions" + color: "000000" + providerConfigRef: + kind: ProviderConfig + name: default diff --git a/deploy/labels/fleet-gitops.yaml b/deploy/labels/fleet-gitops.yaml new file mode 100644 index 0000000..a8f5d1e --- /dev/null +++ b/deploy/labels/fleet-gitops.yaml @@ -0,0 +1,24 @@ +# Issue labels for devantler-tech/fleet-gitops. The canonical org taxonomy (22 labels) +# is appended to every IssueLabels by the shared patch in kustomization.yaml; this +# file adds only fleet-gitops's repo-specific extras (the dependency/ecosystem labels +# Dependabot/Renovate apply), declared so the authoritative set doesn't churn +# against the bots. See ../README.md. +apiVersion: repo.github.m.upbound.io/v1alpha1 +kind: IssueLabels +metadata: + name: fleet-gitops + annotations: + crossplane.io/external-name: fleet-gitops +spec: + managementPolicies: + - Observe + - Create + - Update + - LateInitialize + forProvider: + repository: fleet-gitops + # No repo-specific extras; the shared patch supplies the full canonical set. + label: [] + providerConfigRef: + kind: ProviderConfig + name: default diff --git a/deploy/labels/gitops-tenant-template.yaml b/deploy/labels/gitops-tenant-template.yaml new file mode 100644 index 0000000..967a917 --- /dev/null +++ b/deploy/labels/gitops-tenant-template.yaml @@ -0,0 +1,27 @@ +# Issue labels for devantler-tech/gitops-tenant-template. The canonical org taxonomy (22 labels) +# is appended to every IssueLabels by the shared patch in kustomization.yaml; this +# file adds only gitops-tenant-template's repo-specific extras (the dependency/ecosystem labels +# Dependabot/Renovate apply), declared so the authoritative set doesn't churn +# against the bots. See ../README.md. +apiVersion: repo.github.m.upbound.io/v1alpha1 +kind: IssueLabels +metadata: + name: gitops-tenant-template + annotations: + crossplane.io/external-name: gitops-tenant-template +spec: + managementPolicies: + - Observe + - Create + - Update + - LateInitialize + forProvider: + repository: gitops-tenant-template + label: + - name: "dependencies" + color: "0366d6" + - name: "github_actions" + color: "000000" + providerConfigRef: + kind: ProviderConfig + name: default diff --git a/deploy/labels/go-template.yaml b/deploy/labels/go-template.yaml new file mode 100644 index 0000000..a96a06a --- /dev/null +++ b/deploy/labels/go-template.yaml @@ -0,0 +1,27 @@ +# Issue labels for devantler-tech/go-template. The canonical org taxonomy (22 labels) +# is appended to every IssueLabels by the shared patch in kustomization.yaml; this +# file adds only go-template's repo-specific extras (the dependency/ecosystem labels +# Dependabot/Renovate apply), declared so the authoritative set doesn't churn +# against the bots. See ../README.md. +apiVersion: repo.github.m.upbound.io/v1alpha1 +kind: IssueLabels +metadata: + name: go-template + annotations: + crossplane.io/external-name: go-template +spec: + managementPolicies: + - Observe + - Create + - Update + - LateInitialize + forProvider: + repository: go-template + label: + - name: "dependencies" + color: "0366d6" + - name: "github_actions" + color: "000000" + providerConfigRef: + kind: ProviderConfig + name: default diff --git a/deploy/labels/homebrew-tap.yaml b/deploy/labels/homebrew-tap.yaml new file mode 100644 index 0000000..01ab683 --- /dev/null +++ b/deploy/labels/homebrew-tap.yaml @@ -0,0 +1,27 @@ +# Issue labels for devantler-tech/homebrew-tap. The canonical org taxonomy (22 labels) +# is appended to every IssueLabels by the shared patch in kustomization.yaml; this +# file adds only homebrew-tap's repo-specific extras (the dependency/ecosystem labels +# Dependabot/Renovate apply), declared so the authoritative set doesn't churn +# against the bots. See ../README.md. +apiVersion: repo.github.m.upbound.io/v1alpha1 +kind: IssueLabels +metadata: + name: homebrew-tap + annotations: + crossplane.io/external-name: homebrew-tap +spec: + managementPolicies: + - Observe + - Create + - Update + - LateInitialize + forProvider: + repository: homebrew-tap + label: + - name: "dependencies" + color: "0366d6" + - name: "github_actions" + color: "000000" + providerConfigRef: + kind: ProviderConfig + name: default diff --git a/deploy/labels/ksail.yaml b/deploy/labels/ksail.yaml new file mode 100644 index 0000000..f30c96d --- /dev/null +++ b/deploy/labels/ksail.yaml @@ -0,0 +1,35 @@ +# Issue labels for devantler-tech/ksail. The canonical org taxonomy (22 labels) +# is appended to every IssueLabels by the shared patch in kustomization.yaml; this +# file adds only ksail's repo-specific extras (the dependency/ecosystem labels +# Dependabot/Renovate apply), declared so the authoritative set doesn't churn +# against the bots. See ../README.md. +apiVersion: repo.github.m.upbound.io/v1alpha1 +kind: IssueLabels +metadata: + name: ksail + annotations: + crossplane.io/external-name: ksail +spec: + managementPolicies: + - Observe + - Create + - Update + - LateInitialize + forProvider: + repository: ksail + label: + - name: "dependencies" + color: "0366d6" + - name: "docker" + color: "21ceff" + - name: "github_actions" + color: "000000" + - name: "go" + color: "16e2e2" + - name: "helm" + color: "E5F2FC" + - name: "javascript" + color: "168700" + providerConfigRef: + kind: ProviderConfig + name: default diff --git a/deploy/labels/kustomization.yaml b/deploy/labels/kustomization.yaml index 5b04b08..7483a85 100644 --- a/deploy/labels/kustomization.yaml +++ b/deploy/labels/kustomization.yaml @@ -1,10 +1,113 @@ -# One file per managed repository's issue-label set. `IssueLabels` is the -# AUTHORITATIVE label manager (the full set is declared per repo and drift is -# reverted). Extend by adding `.yaml` — after enumerating that repo's -# existing labels so the authoritative set doesn't strip one that's in use -# (notably the `dependencies`/ecosystem labels Dependabot/Renovate apply). See -# ../README.md and the platform repo's docs/github-management.md. +# Declarative issue-label management for the devantler-tech org — the Crossplane +# replacement for the old EndBug/label-sync mechanism (the `sync-github-labels` +# action + the daily `.sync-labels.yaml` template-synced workflow + the central +# `actions/.github/labels.yaml` config). `IssueLabels` (provider-upjet-github, +# terraform github_issue_labels) is authoritative — it manages each repo's COMPLETE +# label set and reverts drift — exactly like the old action's `delete-other-labels: +# true`, so the cutover is behaviour-preserving. +# +# One file per managed repo declares only that repo's repo-specific EXTRAS (the +# Dependabot/Renovate ecosystem labels — `dependencies`, `go`, `docker`, … — +# declared so the authoritative set doesn't churn against the bots that recreate +# them). The shared patch below appends the CANONICAL org taxonomy (the 22 labels +# previously in `actions/.github/labels.yaml`) to every IssueLabels — this patch is +# now the single source of truth for that taxonomy. Mirrors the org-wide settings +# patch in ../repositories/kustomization.yaml. +# +# Scope = the repos managed in ../repositories/ + this repo (.github). Bring a new +# repo under management by adding `.yaml` with its live extras (enumerate +# them first so the authoritative set doesn't strip a label in use). apiVersion: kustomize.config.k8s.io/v1beta1 kind: Kustomization resources: - dot-github.yaml + - platform.yaml + - ksail.yaml + - maintenance.yaml + - agent-skills.yaml + - agent-plugins.yaml + - unifi.yaml + - gitops-tenant-template.yaml + - platform-template.yaml + - go-template.yaml + - dotnet-template.yaml + - homebrew-tap.yaml + # Private repos. + - ascoachingogvaner.yaml + - wedding-app.yaml + - fleet-gitops.yaml +# Canonical org-wide label taxonomy, appended to EVERY IssueLabels (single source +# of truth — was actions/.github/labels.yaml). Verbatim names + colours from that +# file so the switch from label-sync to Crossplane changes no labels. +patches: + - target: + group: repo.github.m.upbound.io + version: v1alpha1 + kind: IssueLabels + patch: |- + - op: add + path: /spec/forProvider/label/- + value: {name: blocked, color: "d93f0b"} + - op: add + path: /spec/forProvider/label/- + value: {name: released, color: "ededed"} + - op: add + path: /spec/forProvider/label/- + value: {name: next, color: "5d3fd3"} + - op: add + path: /spec/forProvider/label/- + value: {name: roadmap, color: "0e8a16"} + - op: add + path: /spec/forProvider/label/- + value: {name: bug, color: "d73a4a"} + - op: add + path: /spec/forProvider/label/- + value: {name: enhancement, color: "a2eeef"} + - op: add + path: /spec/forProvider/label/- + value: {name: help wanted, color: "008672"} + - op: add + path: /spec/forProvider/label/- + value: {name: good first issue, color: "7057ff"} + - op: add + path: /spec/forProvider/label/- + value: {name: documentation, color: "0075ca"} + - op: add + path: /spec/forProvider/label/- + value: {name: question, color: "d876e3"} + - op: add + path: /spec/forProvider/label/- + value: {name: duplicate, color: "cfd3d7"} + - op: add + path: /spec/forProvider/label/- + value: {name: wontfix, color: "ffffff"} + - op: add + path: /spec/forProvider/label/- + value: {name: spam, color: "e4e669"} + - op: add + path: /spec/forProvider/label/- + value: {name: off topic, color: "e4e669"} + - op: add + path: /spec/forProvider/label/- + value: {name: needs triage, color: "fbca04"} + - op: add + path: /spec/forProvider/label/- + value: {name: needs investigation, color: "fbca04"} + - op: add + path: /spec/forProvider/label/- + value: {name: breaking change, color: "b60205"} + - op: add + path: /spec/forProvider/label/- + value: {name: performance, color: "f9d0c4"} + - op: add + path: /spec/forProvider/label/- + value: {name: security, color: "b60205"} + - op: add + path: /spec/forProvider/label/- + value: {name: refactor, color: "c5def5"} + - op: add + path: /spec/forProvider/label/- + value: {name: automation, color: "bfdadc"} + - op: add + path: /spec/forProvider/label/- + value: {name: repo-assist, color: "bfdadc"} diff --git a/deploy/labels/maintenance.yaml b/deploy/labels/maintenance.yaml new file mode 100644 index 0000000..4a1a0ab --- /dev/null +++ b/deploy/labels/maintenance.yaml @@ -0,0 +1,29 @@ +# Issue labels for devantler-tech/maintenance. The canonical org taxonomy (22 labels) +# is appended to every IssueLabels by the shared patch in kustomization.yaml; this +# file adds only maintenance's repo-specific extras (the dependency/ecosystem labels +# Dependabot/Renovate apply), declared so the authoritative set doesn't churn +# against the bots. See ../README.md. +apiVersion: repo.github.m.upbound.io/v1alpha1 +kind: IssueLabels +metadata: + name: maintenance + annotations: + crossplane.io/external-name: maintenance +spec: + managementPolicies: + - Observe + - Create + - Update + - LateInitialize + forProvider: + repository: maintenance + label: + - name: "dependencies" + color: "0366d6" + - name: "github_actions" + color: "000000" + - name: "javascript" + color: "168700" + providerConfigRef: + kind: ProviderConfig + name: default diff --git a/deploy/labels/platform-template.yaml b/deploy/labels/platform-template.yaml new file mode 100644 index 0000000..99b7909 --- /dev/null +++ b/deploy/labels/platform-template.yaml @@ -0,0 +1,27 @@ +# Issue labels for devantler-tech/platform-template. The canonical org taxonomy (22 labels) +# is appended to every IssueLabels by the shared patch in kustomization.yaml; this +# file adds only platform-template's repo-specific extras (the dependency/ecosystem labels +# Dependabot/Renovate apply), declared so the authoritative set doesn't churn +# against the bots. See ../README.md. +apiVersion: repo.github.m.upbound.io/v1alpha1 +kind: IssueLabels +metadata: + name: platform-template + annotations: + crossplane.io/external-name: platform-template +spec: + managementPolicies: + - Observe + - Create + - Update + - LateInitialize + forProvider: + repository: platform-template + label: + - name: "dependencies" + color: "0366d6" + - name: "github_actions" + color: "000000" + providerConfigRef: + kind: ProviderConfig + name: default diff --git a/deploy/labels/platform.yaml b/deploy/labels/platform.yaml new file mode 100644 index 0000000..d65595a --- /dev/null +++ b/deploy/labels/platform.yaml @@ -0,0 +1,33 @@ +# Issue labels for devantler-tech/platform. The canonical org taxonomy (22 labels) +# is appended to every IssueLabels by the shared patch in kustomization.yaml; this +# file adds only platform's repo-specific extras (the dependency/ecosystem labels +# Dependabot/Renovate apply), declared so the authoritative set doesn't churn +# against the bots. See ../README.md. +apiVersion: repo.github.m.upbound.io/v1alpha1 +kind: IssueLabels +metadata: + name: platform + annotations: + crossplane.io/external-name: platform +spec: + managementPolicies: + - Observe + - Create + - Update + - LateInitialize + forProvider: + repository: platform + label: + - name: "dependencies" + color: "ededed" + - name: "github_actions" + color: "000000" + - name: "kubernetes" + color: "ededed" + - name: "talos" + color: "ededed" + - name: "security/review-required" + color: "ededed" + providerConfigRef: + kind: ProviderConfig + name: default diff --git a/deploy/labels/unifi.yaml b/deploy/labels/unifi.yaml new file mode 100644 index 0000000..779b283 --- /dev/null +++ b/deploy/labels/unifi.yaml @@ -0,0 +1,24 @@ +# Issue labels for devantler-tech/unifi. The canonical org taxonomy (22 labels) +# is appended to every IssueLabels by the shared patch in kustomization.yaml; this +# file adds only unifi's repo-specific extras (the dependency/ecosystem labels +# Dependabot/Renovate apply), declared so the authoritative set doesn't churn +# against the bots. See ../README.md. +apiVersion: repo.github.m.upbound.io/v1alpha1 +kind: IssueLabels +metadata: + name: unifi + annotations: + crossplane.io/external-name: unifi +spec: + managementPolicies: + - Observe + - Create + - Update + - LateInitialize + forProvider: + repository: unifi + # No repo-specific extras; the shared patch supplies the full canonical set. + label: [] + providerConfigRef: + kind: ProviderConfig + name: default diff --git a/deploy/labels/wedding-app.yaml b/deploy/labels/wedding-app.yaml new file mode 100644 index 0000000..85eca7d --- /dev/null +++ b/deploy/labels/wedding-app.yaml @@ -0,0 +1,31 @@ +# Issue labels for devantler-tech/wedding-app. The canonical org taxonomy (22 labels) +# is appended to every IssueLabels by the shared patch in kustomization.yaml; this +# file adds only wedding-app's repo-specific extras (the dependency/ecosystem labels +# Dependabot/Renovate apply), declared so the authoritative set doesn't churn +# against the bots. See ../README.md. +apiVersion: repo.github.m.upbound.io/v1alpha1 +kind: IssueLabels +metadata: + name: wedding-app + annotations: + crossplane.io/external-name: wedding-app +spec: + managementPolicies: + - Observe + - Create + - Update + - LateInitialize + forProvider: + repository: wedding-app + label: + - name: "dependencies" + color: "0366d6" + - name: "docker" + color: "21ceff" + - name: "javascript" + color: "168700" + - name: "github_actions" + color: "000000" + providerConfigRef: + kind: ProviderConfig + name: default