Bundle Lifecycle
A bundle is an internal resource used for the orchestration of resources from git. When a GitRepo is scanned it will produce one or more bundles.
To demonstrate the life cycle of a SUSE® Rancher Prime Continuous Delivery bundle, we will use multi-cluster/helm as a case study.
-
User will create a GitRepo that points to the multi-cluster/helm repository.
-
The
gitjob-controller
will sync changes from the GitRepo and detect changes from the polling or webhook event. With every commit change, thegitjob-controller
will create a job that clones the git repository, reads content from the repo such asfleet.yaml
and other manifests, and creates the SUSE® Rancher Prime Continuous Delivery bundle.
The job pod with the image name rancher/tekton-utils will be under the same namespace as the GitRepo.
|
-
The
fleet-controller
then syncs changes from the bundle. According to the targets, thefleet-controller
will createBundleDeployment
resources, which are a combination of a bundle and a target cluster. -
The
fleet-agent
will then pull theBundleDeployment
from the SUSE® Rancher Prime Continuous Delivery controlplane. The agent deploys bundle manifests as a Helm chart from theBundleDeployment
into the downstream clusters. -
The
fleet-agent
will continue to monitor the application bundle and report statuses back in the following order: bundledeployment > bundle > GitRepo > cluster.
This diagram shows the different rendering stages a bundle goes through until deployment.