Skip to content

Feat: Adds DCR Provider resource support#795

Merged
rspurgeon merged 10 commits intomainfrom
gh-32-app-auth-dcr
Apr 15, 2026
Merged

Feat: Adds DCR Provider resource support#795
rspurgeon merged 10 commits intomainfrom
gh-32-app-auth-dcr

Conversation

@rspurgeon
Copy link
Copy Markdown
Collaborator

@rspurgeon rspurgeon commented Apr 10, 2026

Summary

Add first-class DCR provider support across kongctl.

What changed

  • added declarative dcr_providers resource support in the loader, planner, executor, state client, and protection lookup paths
  • added imperative get and list support for DCR providers with Konnect-first aliases:
    • kongctl get dcr-providers
    • kongctl get dcr-provider <id|name>
    • kongctl list dcr-providers
  • added adopt dcr-provider support
  • added declarative dump support for --resources=dcr_providers
  • added standalone declarative DCR provider examples under docs/examples/declarative/dcr-providers
  • added focused unit coverage for DCR planner/resource/executor behavior
  • added an end-to-end DCR provider workflow scenario covering:
    • plan
    • apply
    • sync
    • delete
    • dump
    • adopt
    • get
    • list

Implementation notes

  • DCR provider CRUD/listing uses the existing sdk-konnect-go client configuration, with a raw HTTP helper path where the generated SDK response union decoding is not reliable for Konnect DCR responses.
  • DCR issuer values are normalized on write/comparison to avoid trailing-slash plan noise.
  • DCR update execution now constructs typed SDK config unions explicitly so provider-specific config updates are applied correctly.
  • Azure DCR examples document the issuer nuance observed during testing.

Validation

  • not run in this publish step

Closes #32

@rspurgeon rspurgeon changed the title Gh 32 app auth dcr Feat: Adds DCR Provider resource support Apr 10, 2026
@rspurgeon rspurgeon temporarily deployed to kongctl-acceptance-2 April 10, 2026 17:46 — with GitHub Actions Inactive
@rspurgeon rspurgeon temporarily deployed to kongctl-acceptance-4 April 10, 2026 17:46 — with GitHub Actions Inactive
@rspurgeon rspurgeon temporarily deployed to kongctl-acceptance April 10, 2026 17:46 — with GitHub Actions Inactive
@rspurgeon rspurgeon temporarily deployed to kongctl-acceptance-5 April 10, 2026 17:46 — with GitHub Actions Inactive
@rspurgeon rspurgeon temporarily deployed to kongctl-acceptance-3 April 10, 2026 17:46 — with GitHub Actions Inactive
@rspurgeon rspurgeon temporarily deployed to kongctl-acceptance-5 April 13, 2026 22:09 — with GitHub Actions Inactive
@rspurgeon rspurgeon temporarily deployed to kongctl-acceptance-3 April 13, 2026 22:09 — with GitHub Actions Inactive
@rspurgeon rspurgeon temporarily deployed to kongctl-acceptance-2 April 13, 2026 22:09 — with GitHub Actions Inactive
@rspurgeon rspurgeon temporarily deployed to kongctl-acceptance April 13, 2026 22:09 — with GitHub Actions Inactive
@rspurgeon rspurgeon temporarily deployed to kongctl-acceptance-4 April 13, 2026 22:09 — with GitHub Actions Inactive
@rspurgeon rspurgeon temporarily deployed to kongctl-acceptance-5 April 14, 2026 15:23 — with GitHub Actions Inactive
@rspurgeon rspurgeon temporarily deployed to kongctl-acceptance April 14, 2026 15:23 — with GitHub Actions Inactive
@rspurgeon rspurgeon temporarily deployed to kongctl-acceptance-3 April 14, 2026 15:23 — with GitHub Actions Inactive
@rspurgeon rspurgeon temporarily deployed to kongctl-acceptance-2 April 14, 2026 15:23 — with GitHub Actions Inactive
@rspurgeon rspurgeon temporarily deployed to kongctl-acceptance-4 April 14, 2026 15:23 — with GitHub Actions Inactive
@rspurgeon rspurgeon temporarily deployed to kongctl-acceptance-3 April 14, 2026 15:31 — with GitHub Actions Inactive
@rspurgeon rspurgeon temporarily deployed to kongctl-acceptance April 14, 2026 15:31 — with GitHub Actions Inactive
@rspurgeon rspurgeon temporarily deployed to kongctl-acceptance-5 April 14, 2026 15:31 — with GitHub Actions Inactive
@rspurgeon rspurgeon temporarily deployed to kongctl-acceptance-4 April 14, 2026 15:31 — with GitHub Actions Inactive
@rspurgeon rspurgeon temporarily deployed to kongctl-acceptance-2 April 14, 2026 15:31 — with GitHub Actions Inactive
@rspurgeon rspurgeon marked this pull request as ready for review April 14, 2026 15:47
@rspurgeon rspurgeon requested review from a team as code owners April 14, 2026 15:47
Copilot AI review requested due to automatic review settings April 14, 2026 15:47
@rspurgeon rspurgeon temporarily deployed to kongctl-acceptance-5 April 14, 2026 19:31 — with GitHub Actions Inactive
@rspurgeon rspurgeon temporarily deployed to kongctl-acceptance-4 April 14, 2026 19:31 — with GitHub Actions Inactive
@rspurgeon rspurgeon temporarily deployed to kongctl-acceptance-2 April 14, 2026 19:31 — with GitHub Actions Inactive
@rspurgeon rspurgeon temporarily deployed to kongctl-acceptance April 14, 2026 19:31 — with GitHub Actions Inactive
@rspurgeon rspurgeon marked this pull request as draft April 14, 2026 22:00
@rspurgeon rspurgeon had a problem deploying to kongctl-acceptance-2 April 15, 2026 00:14 — with GitHub Actions Failure
@rspurgeon rspurgeon temporarily deployed to kongctl-acceptance-3 April 15, 2026 00:14 — with GitHub Actions Inactive
@rspurgeon rspurgeon had a problem deploying to kongctl-acceptance April 15, 2026 00:14 — with GitHub Actions Failure
@rspurgeon rspurgeon temporarily deployed to kongctl-acceptance-4 April 15, 2026 00:14 — with GitHub Actions Inactive
@rspurgeon rspurgeon temporarily deployed to kongctl-acceptance-5 April 15, 2026 00:14 — with GitHub Actions Inactive
@rspurgeon rspurgeon temporarily deployed to kongctl-acceptance-3 April 15, 2026 00:56 — with GitHub Actions Inactive
@rspurgeon rspurgeon temporarily deployed to kongctl-acceptance-2 April 15, 2026 00:56 — with GitHub Actions Inactive
@rspurgeon rspurgeon temporarily deployed to kongctl-acceptance-5 April 15, 2026 00:56 — with GitHub Actions Inactive
@rspurgeon rspurgeon had a problem deploying to kongctl-acceptance April 15, 2026 00:56 — with GitHub Actions Failure
@rspurgeon rspurgeon temporarily deployed to kongctl-acceptance-4 April 15, 2026 00:56 — with GitHub Actions Inactive
@rspurgeon rspurgeon temporarily deployed to kongctl-acceptance April 15, 2026 01:00 — with GitHub Actions Inactive
@rspurgeon rspurgeon marked this pull request as ready for review April 15, 2026 01:09
@rspurgeon rspurgeon requested a review from Copilot April 15, 2026 01:09
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 57 out of 57 changed files in this pull request and generated 3 comments.

Comment thread internal/cmd/root/verbs/dump/declarative.go Outdated
Comment thread internal/declarative/resources/auth_strategy.go
Comment thread internal/declarative/resources/auth_strategy.go Outdated
@rspurgeon rspurgeon temporarily deployed to kongctl-acceptance April 15, 2026 01:21 — with GitHub Actions Inactive
@rspurgeon rspurgeon temporarily deployed to kongctl-acceptance-4 April 15, 2026 01:21 — with GitHub Actions Inactive
@rspurgeon rspurgeon temporarily deployed to kongctl-acceptance-5 April 15, 2026 01:21 — with GitHub Actions Inactive
@rspurgeon rspurgeon temporarily deployed to kongctl-acceptance-3 April 15, 2026 01:21 — with GitHub Actions Inactive
@rspurgeon rspurgeon temporarily deployed to kongctl-acceptance-2 April 15, 2026 01:21 — with GitHub Actions Inactive
@rspurgeon rspurgeon merged commit 973245f into main Apr 15, 2026
23 checks passed
@rspurgeon rspurgeon deleted the gh-32-app-auth-dcr branch April 15, 2026 13:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Feat: DCR support in application auth strategy resources

2 participants