Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Comprehensive Managed Resource Checks #175

Open
humoflife opened this issue Jan 11, 2024 · 0 comments
Open

Comprehensive Managed Resource Checks #175

humoflife opened this issue Jan 11, 2024 · 0 comments
Labels
enhancement New feature or request needs:triage
Milestone

Comments

@humoflife
Copy link

What problem are you facing?

Uptest validates creation of managed resources that are part of compositions by checking the managed resource status, e.g. to make sure they reach the ready status, but Uptest does not validate the created MRs against any expected values.

How could Uptest help solve your problem?

Have Uptest either directly or through an externally specify-able step validate managed resources against the outcome of composition patches to catch bugs in scenarios like below. Perhaps Crossplane Beta Render or similar could be integrated into or called by Uptest?

  1. A field that should be patched to MR is missing. For example, in XRD, contains spec.tags but the composition does not patch a value to it. This scenario is similar to a go compiler noticing that a variable is declared but not used or assigned to.
  • fromFieldPath: spec.tags
    toFieldPath: spec.forProvider.tags
    type: FromCompositeFieldPath
  1. A non-existing field from a claim gets patched into an MR. For example,

apiVersion: s3.aws.upbound.io/v1beta1
kind: Bucket
...
patches:

  • fromFieldPath: spec.databaseName # wrong! This should be spec.bucketName
    toFieldPath: spec.forProvider.tags
    type: FromCompositeFieldPath

LEt Uptest or an integrated external check iterate over MRs, for each MR, iterate over patches, for each patch, verify source and destination field paths and type compatibility.

@humoflife humoflife added enhancement New feature or request needs:triage labels Jan 11, 2024
@jeanduplessis jeanduplessis added this to the 1.0 milestone Feb 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request needs:triage
Projects
None yet
Development

No branches or pull requests

2 participants