{"id":28420694,"url":"https://github.com/redhat-developer/oc-helm","last_synced_at":"2025-06-26T17:32:12.320Z","repository":{"id":51918048,"uuid":"361337153","full_name":"redhat-developer/oc-helm","owner":"redhat-developer","description":"oc CLI plugin to interact with Helm features provided by the OpenShift Console","archived":false,"fork":false,"pushed_at":"2023-02-17T09:24:05.000Z","size":102,"stargazers_count":20,"open_issues_count":2,"forks_count":5,"subscribers_count":6,"default_branch":"main","last_synced_at":"2025-06-05T05:29:40.458Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/redhat-developer.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-04-25T05:15:41.000Z","updated_at":"2025-03-16T18:13:59.000Z","dependencies_parsed_at":"2024-06-19T01:41:54.279Z","dependency_job_id":"1efab4f3-d094-4843-9106-d7c9445f8ce8","html_url":"https://github.com/redhat-developer/oc-helm","commit_stats":{"total_commits":16,"total_committers":2,"mean_commits":8.0,"dds":0.4375,"last_synced_commit":"92658296fd388369e2882a1eb775b51a35a3e408"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/redhat-developer/oc-helm","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/redhat-developer%2Foc-helm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/redhat-developer%2Foc-helm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/redhat-developer%2Foc-helm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/redhat-developer%2Foc-helm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/redhat-developer","download_url":"https://codeload.github.com/redhat-developer/oc-helm/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/redhat-developer%2Foc-helm/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262113356,"owners_count":23261009,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-06-05T03:49:15.197Z","updated_at":"2025-06-26T17:32:12.302Z","avatar_url":"https://github.com/redhat-developer.png","language":"Go","readme":"# oc helm\n\nOpenShift CLI plugin to integrate with platform capabilities supporting [Helm](https://helm.sh/).\n\n## Overview\n\nOpenShift provides support for managing the lifecycle of Helm charts. This capability is limited primarily to the [Web Console](https://docs.openshift.com/container-platform/4.7/applications/application_life_cycle_management/odc-working-with-helm-charts-using-developer-perspective.html). This plugin enables the management of Helm charts similar to using the standalone Helm CLI while offloading much of the work to OpenShift.\n\n## Capabilities\n\nThe following capabilities are provides by this plugin\n\n* Discovering Helm Charts and Repositories registered on the platform\n* Chart lifecycle\n  * Show\n  * Install\n  * Upgrade\n  * Rollback\n  * History\n  * List\n  * Uninstall\n  * Verify\n\n## Prerequisites\n\nThe following prerequisites must be met prior to using the plugin:\n\n1. OpenShift CLI\n2. OpenShift environment\n    1. You must be logged in using the OpenShift CLI or have a valid environment and OAuth token\n\n## Installing\n\nPerform the following steps to setup and configure the plugin on your machine:\n\n1. Download the latest release for your operating system from the [Release Page](https://github.com/sabre1041/oc-helm/releases)\n\n2. Extract the compressed archive and move the resulting binary to your path\n\n## Walkthrough\n\nThe following provides an example of some of the features provided by the plugin.\n\nAssuming all prerequisites have been met, first list all repositories and their associated charts using the `oc helm index` command:\n\n```shell\noc helm index\n\nREPOSITORY              NAME                            LATEST VERSION\nredhat-helm-repo        ibm-b2bi-prod                   2.0.0\nredhat-helm-repo        ibm-cpq-prod                    4.0.1\nredhat-helm-repo        ibm-mongodb-enterprise-helm     0.1.0\nredhat-helm-repo        ibm-object-storage-plugin       2.0.7\nredhat-helm-repo        ibm-oms-ent-prod                6.0.0\nredhat-helm-repo        ibm-oms-pro-prod                6.0.0\nredhat-helm-repo        ibm-operator-catalog-enablement 1.1.0\nredhat-helm-repo        ibm-sfg-prod                    2.0.0\nredhat-helm-repo        nodejs                          0.0.1\nredhat-helm-repo        nodejs-ex-k                     0.2.1\nredhat-helm-repo        quarkus                         0.0.3\n```\n\nNext, create a new project for this walkthrough called `oc-helm-test`\n\n```shell\noc new-project oc-helm-test\n```\n\nNext, install the `quarkus` chart from the `redhat-helm` repository and provide `quarkus` as the release name:\n\n```shell\noc helm install quarkus redhat-helm-repo/quarkus\n\nNAME: quarkus\nNAMESPACE: oc-helm-test\nLAST DEPLOYED: Mon Apr 26 05:35:55 2021\nSTATUS: deployed\nREVISION: 1\n```\n\nA new build will be started and in a few moments, the resulting container will be deployed.\n\nBy default, the Build will make use of the _jvm_ mode of Quarkus. Native compilation can be enabled by setting the `build.mode` value to `native`. Upgrade the chart to modify the build mode:\n\n```shell\noc helm upgrade quarkus redhat-helm-repo/quarkus --set build.mode=native\n\nNAME: quarkus\nNAMESPACE: oc-helm-test\nLAST DEPLOYED: Mon Apr 26 05:44:50 2021\nSTATUS: deployed\nREVISION: 2\n```\n\nThe _quarkus_ BuildConfig will now be updated with _native_ compilation enabled.\n\nRevert the changes by rolling back to the prior revision\n\n```shell\noc helm rollback quarkus\n\nRollback was a success! Happy Helming!\n```\n\nReview the history of the release\n\n```shell\noc helm history quarkus\n\nREVISION        UPDATED                         STATUS          CHART           APP VERSION     DESCRIPTION\n1               Mon Apr 26 05:35:55 2021        superseded      quarkus-0.0.3                   Install complete\n2               Mon Apr 26 05:44:50 2021        superseded      quarkus-0.0.3                   Upgrade complete\n3               Mon Apr 26 05:48:40 2021        deployed        quarkus-0.0.3                   Rollback to 1\n```\n\nFinally, uninstall the chart\n\n```shell\noc helm uninstall quarkus\n\nrelease \"quarkus\" uninstalled\n```\n\nYou can also veify a chart. This allows users to validate a Helm chart URL and provides a report summary with the number of checks passed or failed.\nYou need to specify the profile which chart verifier will use to run the test. If no profile is provided default is used. With respect to console we recommend using `developer-console` profile. The following checks are enabled in `developer-console` profile:\n\n| Checks | Description |\n|---|---|\n| IsHelmV3 | Checks that the given `uri` points to a Helm v3 chart. |\n| HasReadme | Checks that the Helm chart contains the `README.md` file. |\n| HasKubeVersion | Checks that the `Chart.yaml` file of the Helm chart includes the `kubeVersion` field (v1.0) and is a valid semantic version (v1.1). |\n| ContainsValuesSchema | Checks that the Helm chart contains a JSON schema file (`values.schema.json`) to validate the `values.yaml` file in the chart. |\n|  HelmLint | Checks that the chart is well formed by running the `helm lint` command. |\n| ContainsValues | Checks that the Helm chart contains the `values`[¹](https://github.com/redhat-certification/chart-verifier/blob/main/docs/helm-chart-checks.md#-for-more-information-on-the-values-file-see-values-and-best-practices-for-using-values) file. |\n\nexample:\n\n```shell\noc helm verify --chart-url https://github.com/openshift-helm-charts/charts/releases/download/redhat-mysql-sed-0.1.0/redhat-mysql-sed-0.1.0.tgz  --values provider=developer-console\nNUMBER OF CHECKS PASSED: 6\nNUMBER OF CHECKS FAILED: 0\n```\n\n## Development\n\n1. Clone the repository and navigate to the project directory:\n\n```shell\ngit clone https://github.com/sabre1041/oc-helm\ncd oc-helm\n```\n\n2. Build the plugin\n\n```shell\nmake build\n```\n\nThe binary will be placed in the `bin` folder\n\n3. Install the binary to your path\n\n```shell\nmake install\n```\n\n4. Confirm the installation of the plugin\n\n```shell\noc helm\n\nOpenShift Command Line tool to interact with Helm capabilities.\n\nUsage:\n  oc-helm [command]\n...\n\n```","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fredhat-developer%2Foc-helm","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fredhat-developer%2Foc-helm","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fredhat-developer%2Foc-helm/lists"}