drone-helm-push
Synopsis
This plugin is designed to streamline the packaging and distribution of Helm charts to a Container registry.
Currently, it supports pushing Helm charts to Docker Hub and Google Artifact Registry.
To learn how to utilize Drone plugins in Harness CI, please consult the provided documentation.
Parameters
Parameter |
Choices/Defaults |
Comments |
registry_url
string required |
|
Docker registry where the packaged chart will be published |
chart_path
string required |
|
Directory containing the helm chart |
registry_username
string required |
|
Username to login to the above registry. |
registry_password
string required |
|
PAT / access token to authenticate |
registry_namespace
string required |
|
Namespace under which the chart will be published |
gcloud_project_id
string |
|
Google Artifact Repository project ID |
Notes
If you aim to push Helm Charts to Google Artifact Registry (GAR):
- Set the registry URL to
LOCATION-docker.pkg.dev
- use
oauth2accesstoken
as username and access-token
as token. Refer to this documentation for generating an access token.
- use
REPO_ID
as registry_namespace
and PROJECT_ID
as gcloud_project_id
In case of Docker Hub:
- Set the registry URL to registry.hub.docker.com
Review the "plugin image" section to identify the available tags for supported architectures, and then use these tags in the Docker Image during the plugin step.
For more details check the examples section.
Plugin Image
The plugin plugins/helm-push
is available for the following architectures:
OS |
Tag |
latest |
linux arm64/amd64, windows |
linux/amd64 |
linux-amd64 |
linux/arm64 |
linux-arm64 |
windows/amd64 |
windows-amd64 |
Examples
# Plugin YAML
# DockerHub Example
- step:
type: Plugin
name: Push Helm Chart to DockerHub
identifier: helm_chart_docker
spec:
connectorRef: harness-docker-connector
image: plugins/helm-push
settings:
registry_url: registry.hub.docker.com
registry_username: <+variable.docker_username>
registry_password: <+secrets.getValue("docker_pat")>
chart_path: chart
registry_namespace: <+variable.namespace>
- step:
type: Plugin
name: Push Helm Chart to GAR
identifier: helm_chart_gar
spec:
connectorRef: harness-docker-connector
image: plugins/helm-push
settings:
registry_url: LOCATION-docker.pkg.dev
registry_username: oauth2accesstoken
registry_password: <+secrets.getValue("access_token")>
chart_path: chart
gcloud_project_id: PROJECT_ID
registry_namespace: REPO_ID
ℹ️ If you notice any issues in this documentation, you can edit this document to improve it.