Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: add helm chart #379

Merged
merged 6 commits into from
Jul 21, 2023
Merged

feat: add helm chart #379

merged 6 commits into from
Jul 21, 2023

Conversation

dirien
Copy link
Contributor

@dirien dirien commented Dec 2, 2022

Proposed changes

Hi,

this PR adds the creation of Helm chart for the Pulumi operator.

The helm chart can be deployed in two ways:

  • Via Helm Repo (gh-page in this repo)
  • or signed OCI artefact (pushed to ghcr in this Organisation)

It uses:

  • Trivy to test for misconfiguration
  • chart-testing to lint the chart
  • chart-releaser to release the chart
  • cosign to sign the OCI helm chart

Related issues (optional)

@dirien dirien force-pushed the helm branch 6 times, most recently from 31c20e0 to aeccd81 Compare December 2, 2022 15:06
Copy link
Contributor

@viveklak viveklak left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall this looks great! Most things are not blocking but finding a streamlined way to make things consistent between chart and no-chart would help. Maybe we just need to set expectations to transition quickly to chart-first. I will let @squaremo share his thoughts.

@dirien
Copy link
Contributor Author

dirien commented Dec 12, 2022

I will schedule a call with @squaremo, to get this feedback. Thanks @viveklak!

@squaremo
Copy link
Contributor

For the record, my feedback was

  • this makes installing the operator more accessible for a lot of people and orgs 🎉
  • can we have commits that do one thing, please
  • the changelog change is incongruent here, and might even break things, so elide that please
  • a follow-up would be to rewrite the deployment programs to use this Helm chart. This trades away the pulumi-kubernetes selling point of having types for Kubernetes objects -- but in the programs in question these are impenetrable struct literals, so that was a dubious benefit anyway.

@stevesloka
Copy link
Contributor

Is this a dupe of #261?

@dirien
Copy link
Contributor Author

dirien commented Feb 28, 2023

hi @squaremo,

I think I close this one and make one Chart in my own orga? Wdyt?

AaronFriel
AaronFriel previously approved these changes May 4, 2023
.github/workflows/chart-publish.yaml Outdated Show resolved Hide resolved
deploy/helm/pulumi-operator/README.md Outdated Show resolved Hide resolved
deploy/helm/pulumi-operator/README.md.gotmpl Outdated Show resolved Hide resolved
@AaronFriel AaronFriel dismissed their stale review May 4, 2023 19:54

Meant to comment, not approve, this isn't a repository I own

@github-advanced-security
Copy link

This pull request sets up GitHub code scanning for this repository. Once the scans have completed and the checks have passed, the analysis results for this pull request branch will appear on this overview. Once you merge this pull request, the 'Security' tab will show more code scanning analysis results (for example, for the default branch). Depending on your configuration and choice of analysis tool, future pull requests will be annotated with code scanning analysis results. For more information about GitHub code scanning, check out the documentation.

@dirien dirien requested review from AaronFriel and viveklak and removed request for squaremo and viveklak June 14, 2023 20:20
@AaronFriel AaronFriel requested review from viveklak and removed request for viveklak June 14, 2023 21:21
Engin Diri and others added 6 commits July 21, 2023 18:33
This commit includes a new directory, helm, which contains the necessary files for deploying the application to Kubernetes clusters using the Helm package manager.

The chart includes:

- Deployment
- Role and role binding
- Service account
- CRD definition

Resources for the Pulumi Kubernetes Operator, as well as the configurable values file (values.yaml) for specifying the deployment of the Operator.

This change will allow our customers to more easily manage and deploy the Operator on various Kubernetes environments, streamlining the process and reducing the potential for errors.

Signed-off-by: Engin Diri <engin.diri@ediri.de>
This commit introduces a series of GitHub workflows to the codebase, which will be used to automate various tasks related to continuous integration and deployment. These workflows are defined in the `.github/workflows` directory, and include the following:

- `ct-linting-and-testing.yaml`: This workflow is triggered on pull requests, and is responsible for linting and testing the chart to ensure that it is in a releasable state.

- `chart-publish.yaml`: This workflow is triggered on the main branch only when changes are detected in the chart directory, and is responsible for releasing the chart as traditional bundle and OCI artefact.

- Diverse linter configuration files to tune the linting process to our needs.

Overall, these workflows will help to streamline the development process of the Helm charts and ensure that templating code is always in a deployable state.

Signed-off-by: Engin Diri <engin.diri@ediri.de>
Signed-off-by: Engin Diri <engin.diri@ediri.de>
Signed-off-by: Engin Diri <engin.diri@ediri.de>
Signed-off-by: Engin Diri <engin.diri@ediri.de>
@rquitales rquitales merged commit 4c7dc31 into master Jul 21, 2023
6 checks passed
@rquitales rquitales deleted the helm branch July 21, 2023 06:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants