Skip to content

Latest commit

 

History

History
61 lines (34 loc) · 1.67 KB

CONTRIBUTING.md

File metadata and controls

61 lines (34 loc) · 1.67 KB

Contributing

Thanks for your interest in contributing! We welcome ideas, code, docs, etc -- just open an issue or MR.

Setup

This project uses flakes so a development environment can be created with

nix develop

NOTE: there's also support for direnv to automate the dev shell process

Commits

There's no formal commit process at this time.

Do try to format the repo with treefmt before submission, however.

nix fmt

Releases

User-facing changes should be reflected in CHANGELOG.md. When a new entry is added to the default branch, a new release will automatically be tagged.

Kubernetes versions

To support a new Kubernetes version:

  • Edit ./versions.nix and add a new attribute for the version; for example:

    {
      "1.23.0" = "sha256:0jivg8nlxka1y7gzqpcxkmbvhcbxynyrxmjn0blky30q5064wx2a";
    }
  • Build the updated specs to modules/generated/ with

    nix run '.#generate'
    

Tests

Tests are executed through GitHub actions; see the workflow definition for commands.

Docs

Build and serve the static site

nix run '.#docs' serve

which will be available at http://localhost:1313.

Examples

Examples are written at ./docs/content/examples and are (or will, really) also used as tests which can be executed with

nix flake check

In general, that just means: don't directly put nix snippets into a markdown doc; instead use the shortcode provided to pull them in so they don't have to be parsed out for testing.