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

rds.aws.crossplane.io/v1alpha1 - missing parameter AllowMajorVersionUpgrade - cannot upgrade #1330

Closed
afirth opened this issue May 27, 2022 · 2 comments · Fixed by #1598
Closed
Labels
bug Something isn't working

Comments

@afirth
Copy link

afirth commented May 27, 2022

What happened?

When trying to upgrade an RDS instance, receive error that AllowMajorVersionUpgrade must be set. However, this option is not present on dbinstance.rds.aws.crossplane.io, although it is on rdsinstance.database.aws.crossplane.io. Furthermore, the tests for clients/rds are missing it too.

How can we reproduce it?

change engineVersion to a new major

apiVersion: rds.aws.crossplane.io/v1alpha1
kind: DBInstance
metadata:
  name: redacted
spec:
  deletionPolicy: Orphan
  forProvider:
    engineVersion: "13.4" # <<< CHANGED to 14.2 to trigger error
    applyImmediately: true
    autoMinorVersionUpgrade: true
    autogeneratePassword: false
    availabilityZone: eu-west-1b
    dbInstanceClass: db.t4g.micro
    dbName: redacted
    engine: postgres
    multiAZ: false
    region: eu-west-1
    vpcSecurityGroupIDs:
    - redacted
  providerConfigRef:
    name: aws-provider
  writeConnectionSecretToRef:
    name: db-connection
    namespace: redacted
status:
  atProvider:
    redacted
  conditions:
  - lastTransitionTime: "2022-05-27T18:41:37Z"
    message: "update failed: cannot update DBInstance in AWS: InvalidParameterCombination:
      The AllowMajorVersionUpgrade flag must be present when upgrading to a new major
      version.\n\tstatus code: 400, request id: "
    reason: ReconcileError
    status: "False"
    type: Synced
  - lastTransitionTime: "2022-05-27T18:30:38Z"
    reason: Available
    status: "True"
    type: Ready

try to edit or deploy

set

spec:
  forProvider:
    allowMajorVersionUpgrade: true
    engineVersion: "14.2"

UPDATE ERROR:

# * <nil>: Invalid value:
"The edited file failed validation": ValidationError(DBInstance.spec.forProvider):
 unknown field "allowMajorVersionUpgrade" in io.crossplane.aws.rds.v1alpha1.DBInstance.spec.forProvider

RECONCILER ERROR

"update failed: cannot update DBInstance in AWS: InvalidParameterCombination:
      The AllowMajorVersionUpgrade flag must be present when upgrading to a new major
      version

What environment did it happen in?

Crossplane version: 1.8.1
provider aws 0.26
AWS
K8s 1.21

@afirth afirth added the bug Something isn't working label May 27, 2022
@afirth
Copy link
Author

afirth commented May 27, 2022

workaround: upgrade manually in rds console :/

@petteja
Copy link
Contributor

petteja commented Jun 25, 2022

Yeah, because we have both DBInstance and RDSInstance all features have to be implemented twice. There's an issue to try to resolve it, which I hope gets some attention soon. #498

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants