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

Avoid explicit pin of the family provider azure #43

Merged
merged 1 commit into from
Apr 4, 2024

Conversation

ytsarev
Copy link
Member

@ytsarev ytsarev commented Apr 4, 2024

Description of your changes

  • This is to avoid dependency conflict situation in the higher level Configurations like platform-ref-azure

  • Before the change currently it ends up in degraded state

k get configurations
NAME                                      INSTALLED   HEALTHY   PACKAGE                                                          AGE
platform-ref-azure                        True        True      platform-ref-azure-v0.5.0-rc.0.126.g48f317c.gz                   31m
upbound-configuration-app                 True        True      xpkg.upbound.io/upbound/configuration-app:v0.4.0                 31m
upbound-configuration-azure-aks           True        True      xpkg.upbound.io/upbound/configuration-azure-aks:v0.6.0           31m
upbound-configuration-azure-database      True        Unknown   xpkg.upbound.io/upbound/configuration-azure-database:v0.10.0     31m
upbound-configuration-azure-network       True        True      xpkg.upbound.io/upbound/configuration-azure-network:v0.7.0       31m
upbound-configuration-gitops-flux         True        True      xpkg.upbound.io/upbound/configuration-gitops-flux:v0.4.0         30m
upbound-configuration-observability-oss   True        True      xpkg.upbound.io/upbound/configuration-observability-oss:v0.4.0   30m
k describe configurationrevisions.pkg.crossplane.io upbound-configuration-azure-database-820ed7390759
...
Status:
  Conditions:
    Last Transition Time:  2024-04-04T10:54:18Z
    Message:               cannot resolve package dependencies: incompatible dependencies: [xpkg.upbound.io/upbound/provider-family-azure]
    Reason:                UnknownPackageRevisionHealth
    Status:                Unknown
    Type:                  Healthy
...
  Warning  ResolveDependencies  25s (x32 over 30m)  packages/configurationrevision.pkg.crossplane.io  cannot resolve package dependencies: incompatible dependencies: [xpkg.upbound.io/upbound/provider-family-azure]

Some other configurations pulled in the higher version of the family provider with its implicit pulling mechanism of latest

 k get providers
NAME                                      INSTALLED   HEALTHY   PACKAGE                                                           AGE
crossplane-contrib-provider-helm          True        True      xpkg.upbound.io/crossplane-contrib/provider-helm:v0.16.0          31m
crossplane-contrib-provider-kubernetes    True        True      xpkg.upbound.io/crossplane-contrib/provider-kubernetes:v0.11.4    31m
grafana-provider-grafana                  True        True      xpkg.upbound.io/grafana/provider-grafana:v0.8.0                   31m
upbound-provider-azure-containerservice   True        True      xpkg.upbound.io/upbound/provider-azure-containerservice:v0.42.1   32m
upbound-provider-azure-dbformariadb       True        True      xpkg.upbound.io/upbound/provider-azure-dbformariadb:v0.42.1       31m
upbound-provider-azure-dbforpostgresql    True        True      xpkg.upbound.io/upbound/provider-azure-dbforpostgresql:v0.42.1    31m
upbound-provider-azure-network            True        True      xpkg.upbound.io/upbound/provider-azure-network:v0.42.1            31m
upbound-provider-family-azure             True        True      xpkg.upbound.io/upbound/provider-family-azure:v1.0.0              31m

and it broke the dependency resolution.

Removing explicit pin should mitigate the issue.

Fixes #

I have:

  • Read and followed Upbound's contribution process.
  • Run make reviewable to ensure this PR is ready for review.
  • Added backport release-x.y labels to auto-backport this PR, as appropriate.

How has this code been tested

* This is to avoid dependency conflict situation in the higher level
  Configurations like platform-ref-azure

* Before the change currently it ends up in degraded state

```
k get configurations
NAME                                      INSTALLED   HEALTHY   PACKAGE                                                          AGE
platform-ref-azure                        True        True      platform-ref-azure-v0.5.0-rc.0.126.g48f317c.gz                   31m
upbound-configuration-app                 True        True      xpkg.upbound.io/upbound/configuration-app:v0.4.0                 31m
upbound-configuration-azure-aks           True        True      xpkg.upbound.io/upbound/configuration-azure-aks:v0.6.0           31m
upbound-configuration-azure-database      True        Unknown   xpkg.upbound.io/upbound/configuration-azure-database:v0.10.0     31m
upbound-configuration-azure-network       True        True      xpkg.upbound.io/upbound/configuration-azure-network:v0.7.0       31m
upbound-configuration-gitops-flux         True        True      xpkg.upbound.io/upbound/configuration-gitops-flux:v0.4.0         30m
upbound-configuration-observability-oss   True        True      xpkg.upbound.io/upbound/configuration-observability-oss:v0.4.0   30m
```

```
k describe configurationrevisions.pkg.crossplane.io upbound-configuration-azure-database-820ed7390759
...
Status:
  Conditions:
    Last Transition Time:  2024-04-04T10:54:18Z
    Message:               cannot resolve package dependencies: incompatible dependencies: [xpkg.upbound.io/upbound/provider-family-azure]
    Reason:                UnknownPackageRevisionHealth
    Status:                Unknown
    Type:                  Healthy
...
  Warning  ResolveDependencies  25s (x32 over 30m)  packages/configurationrevision.pkg.crossplane.io  cannot resolve package dependencies: incompatible dependencies: [xpkg.upbound.io/upbound/provider-family-azure]
```

Some other configurations pulled in the higher version of the family
provider with its implicit pulling mechanism of latest

```
 k get providers
NAME                                      INSTALLED   HEALTHY   PACKAGE                                                           AGE
crossplane-contrib-provider-helm          True        True      xpkg.upbound.io/crossplane-contrib/provider-helm:v0.16.0          31m
crossplane-contrib-provider-kubernetes    True        True      xpkg.upbound.io/crossplane-contrib/provider-kubernetes:v0.11.4    31m
grafana-provider-grafana                  True        True      xpkg.upbound.io/grafana/provider-grafana:v0.8.0                   31m
upbound-provider-azure-containerservice   True        True      xpkg.upbound.io/upbound/provider-azure-containerservice:v0.42.1   32m
upbound-provider-azure-dbformariadb       True        True      xpkg.upbound.io/upbound/provider-azure-dbformariadb:v0.42.1       31m
upbound-provider-azure-dbforpostgresql    True        True      xpkg.upbound.io/upbound/provider-azure-dbforpostgresql:v0.42.1    31m
upbound-provider-azure-network            True        True      xpkg.upbound.io/upbound/provider-azure-network:v0.42.1            31m
upbound-provider-family-azure             True        True      xpkg.upbound.io/upbound/provider-family-azure:v1.0.0              31m
```

and it broke the dependency resolution.

Removing explicit pin should mitigate the issue.

Signed-off-by: Yury Tsarev <yury@upbound.io>
@ytsarev ytsarev requested a review from haarchri April 4, 2024 11:27
@ytsarev ytsarev merged commit d17736b into upbound:main Apr 4, 2024
1 check passed
@ytsarev ytsarev deleted the do-not-pin-family branch April 4, 2024 15:56
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.

2 participants