Code Monkey home page Code Monkey logo

sysdiglabs-charts's Introduction

Sysdig Helm Charts

This GitHub repository is the official source for Sysdig's Helm charts.

For instructions about how to install charts from this repository, visit the public website at https://charts.sysdig.com



Contribute

contribute

Development

- Make changes to an existing chart without publishing

If you make changes to an existing chart, but do not change its version, nothing new will be published to the charts repository.

Pull Requests

Checklist to comply-with when doing the PR

  • Title of the PR starts with type and scope, for more details check Commit and PR tile guidelines
  • Chart Version bumped
  • Variables are documented in the README.md (or README.tpl in some charts)
  • Check GithubAction checks (like lint) to avoid merge-check stoppers
  • Changelogs and Release Notes are automated based on the commit messages using git-chglog

Commit and PR tile guidelines

In order to automatically generate a meaningful changelog PR titles must respect the following rules (the same title must be used when merging it)

A Type must be specified, avalilable types are:

  • feat
  • fix
  • refactor
  • chore
  • docs

A Scope should be always present, a few examples:

  • (agent)
  • (sysdig-deploy)
  • (agent,node-analyzer,sysdig-deploy)

Full PR title example feat(agent,node-analyzer,sysdig-deploy): add automated changelogs

Extended Changelog

If necessary it is possible to add extended details to a changelog entry by adding a special section in the commit body.

The custom section must start with Extended Changelog:, in order to instruct the rendering engine to stop and avoid capturing things like Signed-off-by: it is possible to add @@__CHGLOG_DELIMITER__@@ at the end of the section.

Example with Signed-off-by

Extended Changelog: Fixed 21 CVEs in total, the ones with high or critical severity are:
            * CVE-2022-1941
            * CVE-2022-1996
@@__CHGLOG_DELIMITER__@@

Signed-off-by: [email protected]

NOTE: Do not add the delimiter @@__CHGLOG_DELIMITER__@@ at the end of the commit body as it will cause an error.

Example without Signed-off-by

Extended Changelog: Fixed 21 CVEs in total, the ones with high or critical severity are:
            * CVE-2022-1941
            * CVE-2022-1996

NOTE: While merging a PR with squash&merge the Extended Changelog section must be manually added to the body or the workflow won't be able to process it.

Manual Changelog

Although not usually recommended it is possible to manually add a changelog entry, the ci does a simple grep in the CHANGELOG.md file and if the version being released is already present it will skip adding a new entry.

- GithubAction Checks

Make sure to comply with

  • lint checks, running

    $ make lint

  • docs autogeneration, based on values.yaml. this does only apply to charts with README.tpl templates (ex.: admission-controller)

    $ make docs

To do this automatically, you can install pre-commit plugin, configured in /.pre-commit-config.yaml, to automate this step, and validate/detect the issues when committing from your local.

GithubPages / Documentation

https://charts.sysdig.com is managed through GithubPages action. .github/workflows/release.yml will merge each charts/*/README.md into the gh-pages branch.

- Add a new chart

To add a new chart, create a directory inside charts with it contents at master branch.

When you commit it, it will be picked up by the GitHub action, and if it contains a chart and version that doesn't already exist in the charts repository, a new release with the package for the chart will be published on the GitHub repository, and the list of all charts at index.yaml on gh-pages branch will be updated on the charts repository.

Release

- Publishing a new version of a chart

TL;DR
When a commit to master includes a new version of a chart, a GitHub action will make it available on the charts repository.

With each commit to master, a GitHub action will compare all charts versions at the charts folder on master branch with published versions at the index.yaml chart list on gh-pages branch.

When it detects that the version in the folder doesn't exist in index.yaml, it will create a release with the packaged chart content on the GitHub repository, and update index.yaml to include it on the charts repository.

index.yaml is accesible from https://sysdiglabs.github.io/charts/index.yaml and is the list of all charts and their versions available when you interact with the charts repository using Helm.

The packaged referenced in index.yaml, when it's updated using the GitHub action, will link for download to the URL provided by the GitHub repository release files.

More information

You can find more information at:

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.