Skip to main content
Version: 0.3.1

Upgrading

How to: Upgrade to Weave Gitops Enterprise#

Upgrading requires we:

  1. Already have Weave GitOps installed on the cluster
  2. Install Profiles onto the cluster
  3. Install the mccp cli tool
  4. Apply the entitlements secret
  5. Create a secret for docker repository
  6. Create a secret for creating pull requests on your git provider
  7. Upgrade
  8. Configure
  9. Check that Weave Gitops Enterprise has been installed

2. Install profiles#

This step will be removed

This step will be removed when Profiles are included in Weave Gitops

Download the latest pctl release and install the Profile custom resources:

pctl install --flux-namespace wego-system

3. Install the MCCP CLI#

This step will be removed

This step will be removed when the upgrade command moves into the gitops binary

The MCCP CLI allows you to upgrade to Weave Gitops Enterprise. You can also use mccp to manage the lifecycle of your infrastructure declaratively using GitOps. The latest version of the MCCP CLI is available in the following links:

4. Apply the entitlements secret#

Contact sales@weave.works for a valid entitlements secret. Then apply it to the cluster:

kubectl apply -f entitlements.yaml

5. Creating a secret for docker repository#

This step will be removed

This step will be removed when the Docker Image repositories become public

Create a secret that contains your docker repository credentials. This secret will be used by Kubernetes during deployment in order to pull down the WGE images. You can find instructions on how to generate this secret here.

$ kubectl create secret docker-registry \  --namespace wego-system docker-io-pull-secret \  --docker-username=<your-docker-username> \  --docker-password=<your-docker-password>

If you use a secrets management solution such as Sealed Secrets follow their instructions on how to create a new secret.

6. Create a secret for creating pull requests on your git provider#

A Personal Access Token is required for the WGE to create pull requests for new clusters. These tokens need certain permissions (scopes) set. For

  • GitHub: repo
  • GitLab: api

Save the token in secret called git-provider-credentials.

kubectl create secret generic git-provider-credentials \  --namespace=wego-system  --from-literal="GIT_PROVIDER_TOKEN=$GITHUB_TOKEN"

7. Upgrade#

This step will change

This will change when the upgrade command moves into the gitops binary

Run the upgrade command from a local copy of git repo that is sync'd to the cluster:

cd my-cluster-repomccp upgrade

A Pull Request will be created against your cluster repository. Review and merge this pull request to upgrade to Weave Gitops Enterprise.

8. Configure Weave Gitops Enterprise#

Weave Gitops Enterprise has a number of configration options but two importants aspect to configure are:

8.1. Ingress#

An Ingress address is necessary in order to establish connectivity between agents and your WGE instance. The way to determine this depends on your cluster type and provisioning method.

Update the agentTemplate.natsURL value in the Weave Gitops Enterprise ConfigMap in your config repo.

8.2. Git repository configuration#

WGE will make pull requests against your git config repo when creating new CAPI clusters etc. The GIT_PROVIDER_TOKEN in the git-provider-credentials secret specified above will be used to authenticate.

Update the capi.config.repositoryURL with the correct url to your git config repository in the Weave Gitops Enterprise ConfigMap in git config repository itself.

Restart capi-service

After configuring values in the ConfigMap you may have to delete the cluster-service pod for the changes to take effect.

9. Checking that WGE is installed#

You should now be able to load the WGE UI by running the following command:

$ kubectl port-forward --namespace wego-system deployments.apps/mccp-nginx-ingress-controller 8000:80

The WGE UI should now be accessible at http://localhost:8000.