This topic describes how Helm chart deployment packages work and how to create and use a Helm chart deployment package.
Scenarios
If you want to keep your Helm charts confidential when you use Helm charts to deploy services, we recommend that you use the Helm chart deployment packages of Compute Nest. These deployment packages are stored in an Alibaba Cloud Container Registry repository of Compute Nest. They are securely pulled by using temporary keys.
ImportantIf a Helm chart can be publicly accessed, directly specify the public URL of the Helm chart in a Resource Orchestration Service (ROS) template. No additional configurations are required.
Generally, Helm charts are suitable for services with a complex structure and a large number of YAML files for resource deployment. Helm charts facilitate structured management of these YAML files. Helm chart deployment packages are managed in the Container Registry repository of Compute Nest. For more information about how to upload and pull Helm chart deployment packages, see Container image deployment packages.
How it works
You can define the following two identifiers in a service template to use a Helm chart deployment package:
{{computenest::helmchart::test}}: the deployment package identifier to be replaced with the full address of a Helm chart, such asoci://compute-nest-chart-registry.cn-hangzhou.cr.aliyuncs.com/${aliUid}/wordpress:15.4.1.{{computenest::helm::dockerconfigjson}}: the key that is used to pull a Helm chart deployment package from the Container Registry repository of Compute Nest.
Helm charts are deployed by using the public module MODULE::ACS::ComputeNest::FluxOciHelmDeploy defined by Compute Nest. This public module uses the open source component FluxCD, which supports only charts in the Open Container Initiative (OCI) format. Therefore, the Helm chart deployment packages of Compute Nest must be in the OCI format. The following sample code shows how to use MODULE::ACS::ComputeNest::FluxOciHelmDeploy to deploy a Helm chart deployment package:
Resources:
FluxHelmDeploy:
Type: MODULE::ACS::ComputeNest::FluxOciHelmDeploy
Version: v1
Properties:
ClusterId:
Ref: ClusterId
ReleaseName: wordpress
Namespace: wordpress
HelmChartUrl: '{{ computenest::helmchart::test }}'
DockerConfigJson: '{{ computenest::helm::dockerconfigjson }}'
ChartValues:
mariadb:
primary:
persistence:
enabled: true
storageClass: alicloud-disk-essd
size: 20Gi
persistence:
enabled: false
...Create and use a Helm chart deployment package
Prerequisites
A Helm client is installed, and a Helm chart is prepared. For more information, see Push and pull Helm charts.
Create a Helm chart deployment package
Configure the basic information about the deployment package.
Log on to the Compute Nest console. In the left-side navigation pane, click Service Deployment Package. In the Deployment Package section of the Service Deployment Package page, click Create Deployment Package.
In the Deployment Package Information section, configure the parameters described in the following table.
Parameter
Description
Deployment Package Name
The name of the deployment package. The name must be 3 to 128 characters in length, and can contain letters, digits, and underscores (_). The name cannot be changed after the deployment package is created.
Version Name
The name of the deployment package version. The name must be 3 to 50 characters in length, and can contain letters, digits, and underscores (_).
Description
The description of the deployment package. The description must be 10 to 500 characters in length.
Resource Group
The name of the resource group to which the deployment package belongs.
Resource groups are used to group your resources by usage, permission, and region. You can use resource groups to organize your resources in a hierarchical manner and group resources based on users and projects. For more information, see Manage resource groups.
Tag Settings
The tags that you want to add to the deployment package. Select or enter complete tag keys and tag values. You can add up to 20 tags to a deployment package. If no tag key or tag value are available, you can create a custom tag. For more information, see Add a custom tag.
Configure the Helm chart deployment package.
In the Deployment Package Content section, select Helm Chart for the Deployment Package Type parameter.
Click Obtain Access Credential to obtain a temporary key for the namespace. Then, run the obtained commands in sequence in the CLI.

After the Helm chart is uploaded to the Container Registry repository of Compute Nest, select the chart for the Select Product parameter and click Publish Deployment Package.

View the deployment package.
Return to the Service Deployment Package page. Find the deployment package that you want to view and click its name. On the Deployment Package Details page, you can view the details of the deployment package.
If the status of the Helm chart deployment package is Available, the Helm chart deployment package is created.
Use a Helm chart deployment package
In this example, a private service is created to describe how to use a Helm chart deployment package.
Log on to the Compute Nest console.
In the left-side navigation pane, click My Services. On the Created Services tab of the My Services page, click Create Service.
On the Create Service page, set Select Service Creation Method to Custom Launch, Select Service Type to Private Service, and then click Next: Configure Settings.

Enter the basic service information as prompted. Select a template type and template creation method, select ROS for the Deployment Method parameter, and then enter the template content.
Specify
{{ computenest::helmchart::test}}and{{ computenest::helm::dockerconfigjson}}in the ROS template.Configure a Helm chart association in the Deployment Package Association section. Click Deployment Package Association. In the Select Deployment Package dialog box, select a deployment package and a version and click OK to associate the Helm chart deployment package with the deployment package identifier.

Save and test the service. After the service passes the test, check whether the service meets the review criteria of Compute Nest and submit the service for review. For more information, see Review criteria.
After the service is created, view the associations with deployment packages on the service details page.

References
For more information about how to create a service in Compute Nest, see Create a service.
If you no longer need a deployment package or deployment package version, you can delete it. For more information, see Delete a deployment package.
If you need to modify a deployment package such as the content, you can create a new version. For more information, see Create a version.
For more information about how to configure the update settings of a deployment package, see Configure service update settings.