I followed https://marketplace.upbound.io/providers/upbound/provider-family-aws/v1.10.0 but they were too lazy to actually update their documentation for the version but why not let's see what happens
cat <<EOF | kubectl apply -f -
apiVersion: pkg.crossplane.io/v1
kind: Provider
metadata:
name: provider-aws-s3
spec:
package: xpkg.upbound.io/upbound/provider-aws-s3:<version>
EOF
It did something, but obviously didn't install
kubectl get providers
NAME INSTALLED HEALTHY PACKAGE AGE
provider-aws-s3 False xpkg.upbound.io/upbound/provider-aws-s3:<version> 101s
Let's dig in
kubectl get providers -o yaml
apiVersion: v1
items:
- apiVersion: pkg.crossplane.io/v1
kind: Provider
metadata:
annotations:
kubectl.kubernetes.io/last-applied-configuration: |
{"apiVersion":"pkg.crossplane.io/v1","kind":"Provider","metadata":{"annotations":{},"name":"provider-aws-s3"},"spec":{"package":"xpkg.upbound.io/upbound/provider-aws-s3:\u003cversion\u003e"}}
creationTimestamp: "2024-08-04T21:08:21Z"
generation: 1
name: provider-aws-s3
resourceVersion: "14269"
uid: 8b3d4d50-c010-4fdd-a78c-9f579b80c187
spec:
ignoreCrossplaneConstraints: false
package: xpkg.upbound.io/upbound/provider-aws-s3:<version>
packagePullPolicy: IfNotPresent
revisionActivationPolicy: Automatic
revisionHistoryLimit: 1
runtimeConfigRef:
apiVersion: pkg.crossplane.io/v1beta1
kind: DeploymentRuntimeConfig
name: default
skipDependencyResolution: false
status:
conditions:
- lastTransitionTime: "2024-08-04T21:08:21Z"
message: 'cannot unpack package: package tag is not a valid reference: could
not parse reference: xpkg.upbound.io/upbound/provider-aws-s3:<version>'
reason: UnpackingPackage
status: "False"
type: Installed
kind: List
metadata:
resourceVersion: ""
And it is still trying to install
kubectl get events -Aw
NAMESPACE LAST SEEN TYPE REASON OBJECT MESSAGE
default 9s Warning UnpackPackage provider/provider-aws-s3 cannot unpack package: package tag is not a valid reference: could not parse reference: xpkg.upbound.io/upbound/provider-aws-s3:<version>
default 0s Warning UnpackPackage provider/provider-aws-s3 cannot unpack package: package tag is not a valid reference: could not parse reference: xpkg.upbound.io/upbound/provider-aws-s3:<version>
default 0s Warning UnpackPackage provider/provider-aws-s3 cannot unpack package: package tag is not a valid reference: could not parse reference: xpkg.upbound.io/upbound/provider-aws-s3:<version>
default 0s Warning UnpackPackage provider/provider-aws-s3 cannot unpack package: package tag is not a valid reference: could not parse reference: xpkg.upbound.io/upbound/provider-aws-s3:<version>
default 0s Warning UnpackPackage provider/provider-aws-s3 cannot unpack package: package tag is not a valid reference: could not parse reference: xpkg.upbound.io/upbound/provider-aws-s3:<version>
default 0s Warning UnpackPackage provider/provider-aws-s3 cannot unpack package: package tag is not a valid reference: could not parse reference: xpkg.upbound.io/upbound/provider-aws-s3:<version>
default 0s Warning UnpackPackage provider/provider-aws-s3 cannot unpack package: package tag is not a valid reference: could not parse reference: xpkg.upbound.io/upbound/provider-aws-s3:<version>
default 0s Warning UnpackPackage provider/provider-aws-s3 cannot unpack package: package tag is not a valid reference: could not parse reference: xpkg.upbound.io/upbound/provider-aws-s3:<version>
default 0s Warning UnpackPackage provider/provider-aws-s3 cannot unpack package: package tag is not a valid reference: could not parse reference: xpkg.upbound.io/upbound/provider-aws-s3:<version>
cat <<EOF | kubectl apply -f -
apiVersion: pkg.crossplane.io/v1
kind: Provider
metadata:
name: provider-aws-s3
spec:
package: xpkg.upbound.io/upbound/provider-aws-s3:1.10.0
EOF
OK maybe it requires v
cat <<EOF | kubectl apply -f -
apiVersion: pkg.crossplane.io/v1 kind: Provider
metadata: name: provider-aws-s3 spec: package: xpkg.upbound.io/upbound/provider-aws-s3:v1.9.1 EOF
provider.pkg.crossplane.io/provider-aws-s3 configured
Ok this seems to work
kubectl get events -Aw
NAMESPACE LAST SEEN TYPE REASON OBJECT MESSAGE
default 2s Normal BindClusterRole providerrevision/provider-aws-s3-0ce51c83305d Bound system ClusterRole "crossplane:provider:provider-aws-s3-0ce51c83305d:system" to provider ServiceAccount(s):
default 2m17s Warning UnpackPackage provider/provider-aws-s3 cannot unpack package: package tag is not a valid reference: could not parse reference: xpkg.upbound.io/upbound/provider-aws-s3:<version>
default 15s Warning UnpackPackage provider/provider-aws-s3 cannot unpack package: failed to fetch package digest from remote: failed to fetch package descriptor with a GET request after a previous HEAD request failure: HEAD https://xpkg.upbound.io/v2/upbound/provider-aws-s3/manifests/1.10.0: unexpected status code 404 Not Found (HEAD responses have no body, use GET for details): GET https://xpkg.upbound.io/v2/upbound/provider-aws-s3/manifests/1.10.0: MANIFEST_UNKNOWN: manifest unknown; map[Tag:1.10.0]
default 1s Warning InstallPackageRevision provider/provider-aws-s3 current package revision health is unknown
default 0s Warning InstallPackageRevision provider/provider-aws-s3 current package revision health is unknown
default 0s Normal BindClusterRole providerrevision/provider-aws-s3-0ce51c83305d Bound system ClusterRole "crossplane:provider:provider-aws-s3-0ce51c83305d:system" to provider ServiceAccount(s):
default 0s Warning InstallPackageRevision provider/provider-aws-s3 current package revision health is unknown
default 0s Normal BindClusterRole providerrevision/provider-aws-s3-0ce51c83305d Bound system ClusterRole "crossplane:provider:provider-aws-s3-0ce51c83305d:system" to provider ServiceAccount(s):
default 0s Warning ResolveDependencies providerrevision/provider-aws-s3-0ce51c83305d cannot resolve package dependencies: missing dependencies: [xpkg.upbound.io/upbound/provider-family-aws]
default 0s Warning ResolveDependencies providerrevision/provider-aws-s3-0ce51c83305d cannot resolve package dependencies: missing dependencies: [xpkg.upbound.io/upbound/provider-family-aws]
default 0s Warning InstallPackageRevision provider/upbound-provider-family-aws current package revision health is unknown
default 0s Normal BindClusterRole providerrevision/upbound-provider-family-aws-0a77b2cfee07 Bound system ClusterRole "crossplane:provider:upbound-provider-family-aws-0a77b2cfee07:system" to provider ServiceAccount(s):
default 0s Normal BindClusterRole providerrevision/upbound-provider-family-aws-0a77b2cfee07 Bound system ClusterRole "crossplane:provider:upbound-provider-family-aws-0a77b2cfee07:system" to provider ServiceAccount(s):
default 0s Normal BindClusterRole providerrevision/upbound-provider-family-aws-0a77b2cfee07 Bound system ClusterRole "crossplane:provider:upbound-provider-family-aws-0a77b2cfee07:system" to provider ServiceAccount(s):
default 0s Warning ResolveDependencies providerrevision/provider-aws-s3-0ce51c83305d cannot resolve package dependencies: missing dependencies: [xpkg.upbound.io/upbound/provider-family-aws]
default 0s Warning InstallPackageRevision provider/upbound-provider-family-aws current package revision health is unknown
default 0s Warning InstallPackageRevision provider/upbound-provider-family-aws current package revision health is unknown
default 0s Warning InstallPackageRevision provider/upbound-provider-family-aws current package revision health is unknown
default 0s Normal BindClusterRole providerrevision/upbound-provider-family-aws-0a77b2cfee07 Bound system ClusterRole "crossplane:provider:upbound-provider-family-aws-0a77b2cfee07:system" to provider ServiceAccount(s):
default 0s Warning InstallPackageRevision provider/upbound-provider-family-aws current package revision health is unknown
default 0s Normal BindClusterRole providerrevision/upbound-provider-family-aws-0a77b2cfee07 Bound system ClusterRole "crossplane:provider:upbound-provider-family-aws-0a77b2cfee07:system" to provider ServiceAccount(s): upbound-system/upbound-provider-family-aws-0a77b2cfee07
default 0s Warning SyncPackage providerrevision/upbound-provider-family-aws-0a77b2cfee07 post establish runtime hook failed for package: provider package deployment has no condition of type "Available" yet
default 0s Warning InstallPackageRevision provider/upbound-provider-family-aws current package revision is unhealthy
upbound-system 0s Normal ScalingReplicaSet deployment/upbound-provider-family-aws-0a77b2cfee07 Scaled up replica set upbound-provider-family-aws-0a77b2cfee07-77c5747bbc to 1
default 0s Warning InstallPackageRevision provider/upbound-provider-family-aws current package revision is unhealthy
upbound-system 0s Normal SuccessfulCreate replicaset/upbound-provider-family-aws-0a77b2cfee07-77c5747bbc Created pod: upbound-provider-family-aws-0a77b2cfee07-77c5747bbc-26lxp
upbound-system 0s Normal Scheduled pod/upbound-provider-family-aws-0a77b2cfee07-77c5747bbc-26lxp Successfully assigned upbound-system/upbound-provider-family-aws-0a77b2cfee07-77c5747bbc-26lxp to crossplane-inspiron15
default 0s Warning SyncPackage providerrevision/upbound-provider-family-aws-0a77b2cfee07 post establish runtime hook failed for package: provider package deployment is unavailable with message: Deployment does not have minimum availability.
default 0s Normal ApplyClusterRoles providerrevision/provider-aws-s3-0ce51c83305d Applied RBAC ClusterRoles: crossplane:provider:provider-aws-s3-0ce51c83305d:aggregate-to-edit, crossplane:provider:provider-aws-s3-0ce51c83305d:aggregate-to-view, and crossplane:provider:provider-aws-s3-0ce51c83305d:system
default 0s Warning InstallPackageRevision provider/upbound-provider-family-aws current package revision is unhealthy
default 0s Normal ApplyClusterRoles providerrevision/upbound-provider-family-aws-0a77b2cfee07 Applied RBAC ClusterRoles: crossplane:provider:upbound-provider-family-aws-0a77b2cfee07:aggregate-to-edit, crossplane:provider:upbound-provider-family-aws-0a77b2cfee07:aggregate-to-view, and crossplane:provider:upbound-provider-family-aws-0a77b2cfee07:system
default 0s Warning InstallPackageRevision provider/upbound-provider-family-aws current package revision is unhealthy
default 0s Warning ApplyClusterRoles providerrevision/provider-aws-s3-0ce51c83305d cannot apply ClusterRole: cannot create object: clusterroles.rbac.authorization.k8s.io "crossplane:provider:provider-aws-s3-0ce51c83305d:system" already exists
default 0s Warning ApplyClusterRoles providerrevision/upbound-provider-family-aws-0a77b2cfee07 cannot apply ClusterRole: cannot create object: clusterroles.rbac.authorization.k8s.io "crossplane:provider:upbound-provider-family-aws-0a77b2cfee07:system" already exists
default 0s Warning SyncPackage providerrevision/upbound-provider-family-aws-0a77b2cfee07 post establish runtime hook failed for package: provider package deployment is unavailable with message: Deployment does not have minimum availability.
upbound-system 0s Normal Pulling pod/upbound-provider-family-aws-0a77b2cfee07-77c5747bbc-26lxp Pulling image "xpkg.upbound.io/upbound/provider-family-aws:v1.10.0"
default 0s Warning SyncPackage providerrevision/upbound-provider-family-aws-0a77b2cfee07 post establish runtime hook failed for package: provider package deployment is unavailable with message: Deployment does not have minimum availability.
default 0s Normal BindClusterRole providerrevision/provider-aws-s3-0ce51c83305d Bound system ClusterRole "crossplane:provider:provider-aws-s3-0ce51c83305d:system" to provider ServiceAccount(s): upbound-system/provider-aws-s3-0ce51c83305d
upbound-system 0s Normal ScalingReplicaSet deployment/provider-aws-s3-0ce51c83305d Scaled up replica set provider-aws-s3-0ce51c83305d-5c6f99f65c to 1
default 0s Warning SyncPackage providerrevision/provider-aws-s3-0ce51c83305d post establish runtime hook failed for package: provider package deployment has no condition of type "Available" yet
upbound-system 0s Normal SuccessfulCreate replicaset/provider-aws-s3-0ce51c83305d-5c6f99f65c Created pod: provider-aws-s3-0ce51c83305d-5c6f99f65c-7nrlc
upbound-system 0s Normal Scheduled pod/provider-aws-s3-0ce51c83305d-5c6f99f65c-7nrlc Successfully assigned upbound-system/provider-aws-s3-0ce51c83305d-5c6f99f65c-7nrlc to crossplane-inspiron15
upbound-system 0s Warning FailedMount pod/provider-aws-s3-0ce51c83305d-5c6f99f65c-7nrlc MountVolume.SetUp failed for volume "tls-client-certs" : failed to sync secret cache: timed out waiting for the condition
upbound-system 0s Normal Pulling pod/provider-aws-s3-0ce51c83305d-5c6f99f65c-7nrlc Pulling image "xpkg.upbound.io/upbound/provider-aws-s3:v1.9.1"
default 0s Warning SyncPackage providerrevision/provider-aws-s3-0ce51c83305d post establish runtime hook failed for package: provider package deployment is unavailable with message: Deployment does not have minimum availability.
default 0s Normal ApplyClusterRoles providerrevision/upbound-provider-family-aws-0a77b2cfee07 Applied RBAC ClusterRoles: crossplane:provider:upbound-provider-family-aws-0a77b2cfee07:aggregate-to-edit, crossplane:provider:upbound-provider-family-aws-0a77b2cfee07:aggregate-to-view, and crossplane:provider:upbound-provider-family-aws-0a77b2cfee07:system
default 0s Normal ApplyClusterRoles providerrevision/provider-aws-s3-0ce51c83305d Applied RBAC ClusterRoles: crossplane:provider:provider-aws-s3-0ce51c83305d:aggregate-to-edit, crossplane:provider:provider-aws-s3-0ce51c83305d:aggregate-to-view, and crossplane:provider:provider-aws-s3-0ce51c83305d:system
default 0s Warning SyncPackage providerrevision/provider-aws-s3-0ce51c83305d post establish runtime hook failed for package: provider package deployment is unavailable with message: Deployment does not have minimum availability.
default 0s Warning SyncPackage providerrevision/provider-aws-s3-0ce51c83305d post establish runtime hook failed for package: provider package deployment is unavailable with message: Deployment does not have minimum availability.
default 0s Warning SyncPackage providerrevision/upbound-provider-family-aws-0a77b2cfee07 post establish runtime hook failed for package: provider package deployment is unavailable with message: Deployment does not have minimum availability.
upbound-system 0s Normal Pulled pod/provider-aws-s3-0ce51c83305d-5c6f99f65c-7nrlc Successfully pulled image "xpkg.upbound.io/upbound/provider-aws-s3:v1.9.1" in 41.167s (41.167s including waiting). Image size: 181366182 bytes.
upbound-system 0s Normal Created pod/provider-aws-s3-0ce51c83305d-5c6f99f65c-7nrlc Created container package-runtime
upbound-system 0s Normal Started pod/provider-aws-s3-0ce51c83305d-5c6f99f65c-7nrlc Started container package-runtime
default 0s Normal SyncPackage providerrevision/provider-aws-s3-0ce51c83305d Successfully configured package revision
upbound-system 0s Normal Pulled pod/upbound-provider-family-aws-0a77b2cfee07-77c5747bbc-26lxp Successfully pulled image "xpkg.upbound.io/upbound/provider-family-aws:v1.10.0" in 1m15.836s (1m15.836s including waiting). Image size: 191820574 bytes.
upbound-system 0s Normal Created pod/upbound-provider-family-aws-0a77b2cfee07-77c5747bbc-26lxp Created container package-runtime
upbound-system 0s Normal Started pod/upbound-provider-family-aws-0a77b2cfee07-77c5747bbc-26lxp Started container package-runtime
default 0s Normal SyncPackage providerrevision/upbound-provider-family-aws-0a77b2cfee07 Successfully configured package revision
default 0s Normal InstallPackageRevision provider/upbound-provider-family-aws Successfully installed package revision
Ok let's see what is installed
kubectl get providers
NAME INSTALLED HEALTHY PACKAGE AGE
provider-aws-s3 True True xpkg.upbound.io/upbound/provider-aws-s3:v1.9.1 17m
upbound-provider-family-aws True True xpkg.upbound.io/upbound/provider-family-aws:v1.10.0 4m43s
Ok it pulled in ubound-provider-family-aws which I was wondering what would happen, but pulled in the v1.10.0 version.
So let's upgrade
cat <<EOF | kubectl apply -f -
apiVersion: pkg.crossplane.io/v1
kind: Provider
metadata:
name: provider-aws-s3
spec:
package: xpkg.upbound.io/upbound/provider-aws-s3:v1.10.0
EOF
Let's look at the events
default 0s Normal BindClusterRole providerrevision/provider-aws-s3-dfa082e4bbc4 Bound system ClusterRole "crossplane:provider:provider-aws-s3-dfa082e4bbc4:system" to provider ServiceAccount(s): upbound-system/provider-aws-s3-dfa082e4bbc4
upbound-system 0s Normal ScalingReplicaSet deployment/provider-aws-s3-dfa082e4bbc4 Scaled up replica set provider-aws-s3-dfa082e4bbc4-bd8854dcf to 1
default 0s Warning SyncPackage providerrevision/provider-aws-s3-dfa082e4bbc4 post establish runtime hook failed for package: provider package deployment has no condition of type "Available" yet
upbound-system 0s Normal SuccessfulCreate replicaset/provider-aws-s3-dfa082e4bbc4-bd8854dcf Created pod: provider-aws-s3-dfa082e4bbc4-bd8854dcf-ckn4j
upbound-system 0s Normal Scheduled pod/provider-aws-s3-dfa082e4bbc4-bd8854dcf-ckn4j Successfully assigned upbound-system/provider-aws-s3-dfa082e4bbc4-bd8854dcf-ckn4j to crossplane-inspiron15
default 0s Normal ApplyClusterRoles providerrevision/provider-aws-s3-0ce51c83305d Applied RBAC ClusterRoles: crossplane:provider:provider-aws-s3-0ce51c83305d:aggregate-to-edit, crossplane:provider:provider-aws-s3-0ce51c83305d:aggregate-to-view, and crossplane:provider:provider-aws-s3-0ce51c83305d:system
default 0s Normal ApplyClusterRoles providerrevision/provider-aws-s3-dfa082e4bbc4 Applied RBAC ClusterRoles: crossplane:provider:provider-aws-s3-dfa082e4bbc4:aggregate-to-edit, crossplane:provider:provider-aws-s3-dfa082e4bbc4:aggregate-to-view, and crossplane:provider:provider-aws-s3-dfa082e4bbc4:system
default 0s Normal ApplyClusterRoles providerrevision/upbound-provider-family-aws-0a77b2cfee07 Applied RBAC ClusterRoles: crossplane:provider:upbound-provider-family-aws-0a77b2cfee07:aggregate-to-edit, crossplane:provider:upbound-provider-family-aws-0a77b2cfee07:aggregate-to-view, and crossplane:provider:upbound-provider-family-aws-0a77b2cfee07:system
upbound-system 0s Normal Pulling pod/provider-aws-s3-dfa082e4bbc4-bd8854dcf-ckn4j Pulling image "xpkg.upbound.io/upbound/provider-aws-s3:v1.10.0"
default 0s Warning SyncPackage providerrevision/provider-aws-s3-dfa082e4bbc4 post establish runtime hook failed for package: provider package deployment is unavailable with message: Deployment does not have minimum availability.
default 0s Warning SyncPackage providerrevision/provider-aws-s3-dfa082e4bbc4 post establish runtime hook failed for package: provider package deployment is unavailable with message: Deployment does not have minimum availability.
default 0s Warning SyncPackage providerrevision/provider-aws-s3-dfa082e4bbc4 post establish runtime hook failed for package: provider package deployment is unavailable with message: Deployment does not have minimum availability.
default 0s Warning SyncPackage providerrevision/provider-aws-s3-dfa082e4bbc4 post establish runtime hook failed for package: provider package deployment is unavailable with message: Deployment does not have minimum availability.
upbound-system 0s Normal Pulled pod/provider-aws-s3-dfa082e4bbc4-bd8854dcf-ckn4j Successfully pulled image "xpkg.upbound.io/upbound/provider-aws-s3:v1.10.0" in 38.231s (38.231s including waiting). Image size: 192368893 bytes.
upbound-system 0s Normal Created pod/provider-aws-s3-dfa082e4bbc4-bd8854dcf-ckn4j Created container package-runtime
upbound-system 0s Normal Started pod/provider-aws-s3-dfa082e4bbc4-bd8854dcf-ckn4j Started container package-runtime
default 0s Normal SyncPackage providerrevision/provider-aws-s3-dfa082e4bbc4 Successfully configured package revision
default 0s Normal InstallPackageRevision provider/provider-aws-s3 Successfully installed package revision
Ok now we are back
kubectl get providers
NAME INSTALLED HEALTHY PACKAGE AGE
provider-aws-s3 True True xpkg.upbound.io/upbound/provider-aws-s3:v1.10.0 21m
upbound-provider-family-aws True True xpkg.upbound.io/upbound/provider-family-aws:v1.10.0 9m25s
And let's seen what else was installed in the namespace
kubectl get all -n upbound-system
NAME READY STATUS RESTARTS AGE
pod/crossplane-5847544c65-98bc8 1/1 Running 0 3h16m
pod/crossplane-rbac-manager-847ccb96dc-h66nm 1/1 Running 0 3h16m
pod/provider-aws-s3-dfa082e4bbc4-bd8854dcf-ckn4j 1/1 Running 0 2m44s
pod/upbound-provider-family-aws-0a77b2cfee07-77c5747bbc-26lxp 1/1 Running 0 10m
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
service/crossplane-webhooks ClusterIP 10.43.65.39 <none> 9443/TCP 3h16m
service/provider-aws-s3 ClusterIP 10.43.9.20 <none> 9443/TCP 10m
service/upbound-provider-family-aws ClusterIP 10.43.188.226 <none> 9443/TCP 10m
NAME READY UP-TO-DATE AVAILABLE AGE
deployment.apps/crossplane 1/1 1 1 3h16m
deployment.apps/crossplane-rbac-manager 1/1 1 1 3h16m
deployment.apps/provider-aws-s3-dfa082e4bbc4 1/1 1 1 2m44s
deployment.apps/upbound-provider-family-aws-0a77b2cfee07 1/1 1 1 10m
NAME DESIRED CURRENT READY AGE
replicaset.apps/crossplane-5847544c65 1 1 1 3h16m
replicaset.apps/crossplane-rbac-manager-847ccb96dc 1 1 1 3h16m
replicaset.apps/provider-aws-s3-dfa082e4bbc4-bd8854dcf 1 1 1 2m44s
replicaset.apps/upbound-provider-family-aws-0a77b2cfee07-77c5747bbc 1 1 1 10m