Analysis Template
Last updated
Was this helpful?
Last updated
Was this helpful?
The Analysis Template is used to trigger the analysis while deploying the application. After creating the template you have to save it in the repository. This Analysis Template name should be specified in the Rollouts.yaml manifest file to trigger the analysis. For more information about Analysis Template in Argo Rollouts, refer .
You can either or you can as instructed below.
Follow the procedure below to create an Analysis Template which can be specified in Rollouts.yaml manifest file.
User needs to create the following:
You must create OpsMx Profile as a secret in the argo-rollouts namespace as shown below. Sample “OpsMx Profile” yaml file is available .
Note that the values of the parameters in the data dictionary are expected to be in the base64 encoded format, as shown in the secret below.
In the above secret update the following parameters:
Cd-integration: It can be set to either true or false.
True indicates that the environment is integrated with argo cd.
False indicates that the environment is integrated with a standalone rollout without ArgoCD.
source-name: It is a unique identifier of the source of the analysis execution request. The value must be kept unique among installations of argo-rollouts.
Refer to the image below:
gate-url: It refers to the ISD API endpoint base URL for accessing analysis services which are responsible for performing analysis.
user: It refers to the ISD user to authorize the analysis request.
To create base64 encoded value for any parameter in the above secret, use the command below:
Apply the secret to Argo Rollouts namespace using the command below. Replace the namespace as per the environment and manifest name as per the file created.
You must create a Service Account for the job as shown below:
Update the following parameters in the above Analysis template:
backoffLimit: In case of any error the job will retry the specified number of times.
serviceAccountName: Name of the service account.
imagePullSecrets: Secrets in namespace to pull the image
Containers: Location of image.
env: Three mandatory environment variables are to be passed to the job pod. The ‘STABLE_POD_HASH’ and ‘CANARY_POD_HASH’ are derived from arguments passed to AnalysisTemplate. To make this configuration work, you need to pick values from podTemplateHashValue in rollout as shown below:
volumeMounts:
provider-config-volume at path /etc/config/provider from Config Map.
template-config-volume at path /etc/config/templates from Config Map.
secret-config-volume at path /etc/config/secrets from Secret.
After creating the Analysis template, save this template in the repository where the Rollouts.yaml manifest file is stored. Then, you can specify the newly created template name in the Rollouts.yaml manifest file to trigger the analysis.
You can use an existing Analysis template to trigger the Analysis. The existing Analysis template will be available in the repository where the Rollouts.yaml manifest file is stored. If you want to modify the existing Analysis template, you can do the necessary changes in the existing template.
After modifying the Analysis template, save it in the repository where the Rollouts.yaml manifest file is stored.Then, specify it in the Rollouts.yaml manifest file to trigger the analysis.
For example, to create base64 encoded value for gate URL parameter “”, use the command below.
You must create the “OpsMx Provider Configmap” before creating an Analysis template. To create “OpsMx Provider Configmap”, refer .
For publishing the result score and report link, the job requires a basic set of permissions over Kubernetes resources in the namespace. The required structure is as follows. Sample “Service Account” yaml file is available .
Create the Analysis template as shown below. Specify the “OpsMx Provider Configmap” under the job section in the Analysis template. Sample “Analysis Template” is available .