Skip to content

Commit

Permalink
feat(contrib): helm push plugin (#6826)
Browse files Browse the repository at this point in the history
* feat(contrib): helm push plugin

Signed-off-by: francois.samin <francois.samin@corp.ovh.com>
  • Loading branch information
fsamin authored Feb 14, 2024
1 parent 79cfb6d commit bed62bd
Show file tree
Hide file tree
Showing 35 changed files with 2,130 additions and 1,552 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ test_results.xml
.tmp
contrib/**/dist
config.*.toml
.paas-sdev.yaml

# TEST
tests/fixtures/ITSCWRKFLW1/output
Expand Down
18 changes: 18 additions & 0 deletions contrib/grpcplugins/action/helm-push/Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
PLUGIN_NAME = helm-push
TARGET_NAME = helm-push

##### ^^^^^^ EDIT ABOVE ^^^^^^ #####

include ../../../../.build/core.mk
include ../../../../.build/go.mk
include ../../../../.build/plugin.mk

build: mk_go_build_plugin ## build action plugin and prepare configuration for publish

clean: mk_go_clean ## clean binary and tests results

test: mk_go_test ## run unit tests

publish: mk_v2_plugin_publish ## publish the plugin on CDS. This use your cdsctl default context and commands cdsctl admin plugins import / binary-add.

package: mk_plugin_package ## prepare the tar.gz file, with all binaries / conf files
21 changes: 21 additions & 0 deletions contrib/grpcplugins/action/helm-push/fixtures/chart/Chart.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
apiVersion: v2
name: buildachart
description: A Helm chart for Kubernetes

# A chart can be either an 'application' or a 'library' chart.
#
# Application charts are a collection of templates that can be packaged into versioned archives
# to be deployed.
#
# Library charts provide useful utilities or functions for the chart developer. They're included as
# a dependency of application charts to inject those utilities and functions into the rendering
# pipeline. Library charts do not define any templates and therefore cannot be deployed.
type: application

# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
version: 0.1.0

# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application.
appVersion: 1.16.0
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
some: value
61 changes: 61 additions & 0 deletions contrib/grpcplugins/action/helm-push/helm-push.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
name: helm-push
type: action
author: "François SAMIN <francois.samin@corp.ovh.com>"
description: |
This push Helm chart on Chart Museum or Artifactory.
inputs:
chartFolder:
value: .chart/
type: string
description: Relative path to chart folder to be published
required: true
chartVersion:
value: ${{git.semver.current}}
type: string
description: |-
(Optional) Override the chart version before push to registry.
required: true
appVersion:
type: string
description: |-
(Optional) Override the app version before push to registry.
required: true
updateDependencies:
type: boolean
description: Update dependencies from the chart before packaging
required: false
registryURL:
type: string
description: |-
Registry URL
This parameter can be empty when an Artifactory integration is set up.
required: false
registryUsername:
type: string
description: |-
Registry Username
This parameter can be empty when an Artifactory integration is set up.
required: false
registryPassword:
type: string
description: |-
Registry Password
This parameter can be empty when an Artifactory integration is set up.
required: false
registryAuthHeader:
type: string
description: |-
Alternative header to use for token auth
This parameter can be empty when an Artifactory integration is set up.
required: false
registryAccessToken:
type: string
description: |-
Send token in Authorization header
This parameter can be empty when an Artifactory integration is set up.
required: false
Loading

0 comments on commit bed62bd

Please sign in to comment.