Skip to main content
Version: 3.4.x

Importing and Configuring Extensions Repositories

This topic describes two main jobs of the Extensions framework in CloudOps for Kubernetes.

Importing an Extensions Repository

The import-or-delete-extensions-repository Jenkins job is focused on importing the configuration of an Extensions repository that is not already configured, or deleting the configuration of an Extensions repository that has already been imported.

Parameters for the import-or-delete-extensions-repository Jenkins Job

deleteExtensionsRepository

When this parameter is selected, the Extensions repository will be removed from this Jenkins instance. This option deletes any Jenkins jobs and views created by the Extensions repository. It will also delete the Kubernetes ConfigMap entry that contains the extensions repository configuration.

plan_mode

If plan_mode is selected, the Jenkins build triggered will plan the Terraform changes. Make sure that you confirm the changes to start the triggered build.

extensionsBootstrapGroovyFilePath

Use the path to the bootstrap.groovy file for the Extensions Git repository when importing the Extensions repository. Typically, the path will be jenkins/jobs/bootstrap/bootstrap.groovy, and the file will define Jenkins jobs or views to import as part of the Extensions repository. View and browse the Extensions Git repository to verify the correct path.

extensionsRepositoryURL

The URL to your Extensions Git repository.

extensionsBranch

Use this branch of the Extensions Git repository when different jobs included in the repository run. If you want to change the branch, this can be configured to a different branch after the ConfigMap is initially imported.

extensionsGitCredential

Use the Jenkins credential to clone the Extensions repository code. It must be an existing SSH private key stored in this Jenkins instance. The key has read access to the Extensions repository that you are importing.

cloudOpsForKubernetesRepoURL

The URL to your hosted copy of the cloudops-for-kubernetes Git repository.

cloudOpsForKubernetesBranch

Use the branch of the cloudops-for-kubernetes Git repository during the deployment.

Errors when importing the same Extensions repository twice

You cannot import an Extensions repository that has already been configured. If you import, you will receive the following error in Jenkins:

An extensions repository named monitoring-extras has already been imported. Please use the configure-monitoring-extras job to change it's configuration. You can see all of the jobs related to monitoring-extras in the monitoring-extras view.

Configuring an Extensions Repository

The configure-${extensionsName} Jenkins job is focused on modifying the configuration of an Extensions repository that has already been imported. Once the configuration has been changed through the configure-${extensionsName} Jenkins job, it will be applied by running the code stored in the specified extensionsBootstrapGroovyFilePath Jenkins job parameter.

Parameters for the configure-${extensionsName} Jenkins Job

plan_mode

If plan_mode is selected, the Jenkins build triggered will plan the Terraform changes. Make sure to confirm the changes to start the triggered build.

updateExtensionsJobConfig

This parameter is used to optionally modify the extensions-config ConfigMap section called jobs-config.json. If your Extensions repository does not contain the more advanced manage-jobs-${extensionsName} Jenkins job to enable or disable jobs from your Extensions Git repository, this parameter can be ignored. If your Extensions repository contains the manage-jobs-${extensionsName} Jenkins job, and you have ran that job to enable or disable specific jobs from your Extensions Git repository, set updateExtensionsJobConfig to true if you want to store which jobs are enabled or disabled in order for the configuration to be properly applied to your Extensions Jenkins view.

extensionsBootstrapGroovyFilePath

Use the path to the bootstrap.groovy file for the Extensions Git repository when importing the Extensions repository. Typically, the path will be jenkins/jobs/bootstrap/bootstrap.groovy, and the file will define Jenkins jobs or views to import as part of the Extensions repository. View and browse the Extensions Git repository to verify the correct path.

extensionsRepositoryURL

The URL to your Extensions Git repository.

extensionsBranch

Use the branch of the Extensions Git repository when different jobs included in the repository run. This can be configured to a different branch after the ConfigMap is initially imported, if want to change the branch.

extensionsGitCredential

Use the name of the Jenkins credential to clone the Extensions repository code. It must be an existing SSH private key stored in this Jenkins instance. The key has read access to the Extensions repository that you are importing.

cloudOpsForKubernetesRepoURL

The URL to your hosted copy of the cloudops-for-kubernetes Git repository.

cloudOpsForKubernetesBranch

Use the branch of the cloudops-for-kubernetes Git repository during the deployment.

Bootstrapping an Extensions Repository

The setup-${extensionsName} Jenkins job is focused on applying the configuration of an Extensions repository that has already been imported.