1.3.2 • Published 1 year ago

@pubgcorp/semantic-release-helm v1.3.2

Weekly downloads
-
License
MIT
Repository
-
Last release
1 year ago

semantic-release-helm

Helm plugin for semantic-release

It updates Helm chart's version and appVersion in Chart.yaml

Install

npm install -D @pubgcorp/semantic-release-helm

Configuration

OptionsDescriptionsRequiredtypeDefault
chartRepositoryURI for chart repositoryyes*stringnone
ociRegistryURI for OCI regisitryyes*stringnone
chartDirectoryChart directory where Chart.yml is locatednostring.
versionUpdatePolicySet update policy for version field of Chart.yamlno"fixed" \| "sync" \| "desync""sync"
appVersionUpdatePolicySet update policy for appVersion field of Chart.yamlno"fixed" \| "sync" \| "desync""sync"

* At least one of ociRegistry or chartrepository is required.

Pass credentials through environment variable to login helm repository.

export HELM_REPOSITORY_USERNAME=<USERNAME>
export HELM_REPOSITORY_PASSWORD=<PASSWORD>

About versionUpdatePolicy & appVersionUpdatePolicy

Update policy

  • fixed: Use Fixed version. The version will not be updated
  • sync: Use nextRelease.version. New version will be set to nextRelease.version
  • desync: Version will be increased according to nextRelease.type (one of major, premajor, minor, preminor, patch, prepatch, prerelease)

Example

{
  "plugins": [
    [
      "@pubgcorp/semantic-release-helm",
      {
        "chartRepository": "https://mychart.company.org/chartrepo/myproject",
        "ociRegistry": "mychart.company.org/myproject",
        "chartDirectory": "./chart",
        "versionUpdatePolicy": "sync",
        "appVersionUpdatePolicy": "fixed"
      }
    ]
  ]
}
  • Your chart repository is https://mychart.company.org/chartrepo/myproject and OCI registry is mychart.company.org/myproject.
  • Chart.yaml is in chart sub-directory
  • version will follow next release version and appVersion will not modified

Old version

# semantic-release version: 1.2.3
version: 1.2.3
appVersion: 2.3.1

New version - Case #1 patch

# semantic-release version: 1.2.4
version: 1.2.4
appVersion: 2.3.1

New version - Case #2 minor

# semantic-release version: 1.3.0
version: 1.3.0
appVersion: 2.3.1

New version - Case #3 major

# semantic-release version: 2.0.0
version: 2.0.0
appVersion: 2.3.1
1.3.2

1 year ago

1.3.1

1 year ago

1.3.0

1 year ago

1.2.0

3 years ago

1.1.1

3 years ago

1.1.0

3 years ago

1.0.3

3 years ago

1.0.2

3 years ago

1.0.1

3 years ago