Skip to content

Latest commit

 

History

History
75 lines (50 loc) · 4.61 KB

gitops-workflow.mdx

File metadata and controls

75 lines (50 loc) · 4.61 KB

import GitOpsLimitation from "../partials/helm/_gitops-limitation.mdx" import GitOpsNotRecommended from "../partials/gitops/_gitops-not-recommended.mdx"

KOTS Auto-GitOps Workflow

Overview of the Auto-GitOps Workflow

The Replicated KOTS Admin Console default workflow is configured to receive updates, show the changes, and deploy the updates to the cluster. You can enable the KOTS Auto-GitOps workflow instead. When using the Auto-GitOps workflow, changes from the Admin Console are pushed to a private Git repository, where an existing CI/CD process can execute the delivery of manifests to the cluster. Changes can include local configuration changes and upstream updates from your vendor (such as application and license updates).

If you have more than one application installed, you can selectively enable Auto-GitOps for each application.

After enabling the Auto-GitOps workflow for an application, the Admin Console makes your first commit with the latest available version in the Admin Console. The latest available version is often the current version that is deployed. Subsequently, the Admin Console makes separate commits with any available updates.

If you configure automatic updates for the application, any updates from your vendor are automatically committed to your Git repository. For more information about configuring automatic updates, see Configuring Automatic Updates.

You can change your GitOps settings or disable Auto-GitOps at any time from the GitOps tab in the Admin Console.

Limitations

  • To enable pushing updates through the Auto-GitOps workflow, you must first follow the installation workflow for the application using the Admin Console or the Replicated KOTS CLI. If the preflight checks pass during installation, then the application is deployed.

  • After you have completed the installation workflow, you can enable Auto-GitOps for all subsequent application updates. It is not required that the application deploy successfully to enable Auto-GitOps. For example, if the preflight checks fail during the installation workflow and the application is not deployed, you can still enable Auto-GitOps for subsequent application updates.

  • When you enable Auto-GitOps, the Admin Console sends all application updates, including the version that you initially installed before Auto-GitOps was enabled, to the repository that you specify.

  • If your organization has security requirements that prevent you from completing the installation workflow for the application first with the Admin Console or KOTS CLI, you cannot enable Auto-GitOps.

Prerequisites

  • A Git repository that you have read/write access to.
  • If the repository does not have files or folders committed yet, you must make at least one commit with any content so that the connection attempt succeeds with the SSH key when you perform the following task.

Enable Auto-GitOps

To enable pushing updates to the Auto-GitOps workflow:

  1. Click the GitOps tab at the top of the Admin Console.

  2. On the GitOps Configuration page:

    1. If you have more than one application, select the application where you want to enable Auto-GitOps.

    2. Select the Git provider.

    3. Enter the repository details:

      Field Name Description
      Owner & Repository Enter the owner and repository name where the commit will be made.
      Branch Enter the branch name or leave the field blank to use the default branch.
      Path Enter the folder name in the repository where the application deployment file will be committed. If you leave this field blank, the Replicated KOTS creates a folder for you. However, the best practice is to manually create a folder in the repository labeled with the application name and dedicated for the deployment file only.
    4. Click Generate SSH Key, and then Copy key.

    5. Go to your Git repository and open the settings page. On the settings page:

      1. Add the SSH public key that you copied in the previous step.
      2. Enable write access for the key. This allows the Admin Console to push commits to the repository.
  3. On the GitOps Configuration page, click Test connection to repository to verify that the Admin Console can connect.

    When the Admin Console establishes a connection to the repository, a dialog displays that says GitOps is enabled.