Skip to main content

A collection of cdk8s constructs

Project description

CA cdk8s Constructs

This repository contains a collection of opinionated cdk8s constructs that are commonly used in CA applications.

Installation

The project is available on PyPi under ca-cdk8s-constructs. Use your project manager of choice to install it.

Features

There are currently constructs available for:

  • Horizontal Pod Autoscaler
  • Vertical Pod Autoscaler
  • Pod Disruption Budget
  • Container Resources
  • cdk8s Helm Chart

Please see the resource docstrings or the Github Wiki for usage information.

To request new constructs, please raise an issue in the GitHub repository.

Custom Resource Definitions

The CRDs are found in the cdk8s.yaml file, which contains a list of URLs to the CRD definitions.

The generated classes are imported into the ca_cdk8s_constructs/imports directory.

If the CRDs are updated, the imports need to be refreshed. There is an Actions workflow that will run weekly to refresh the imports if there are any changes.

Manually Refreshing CRD Imports

To refresh the CRD imports, run the following command:

cdk8s import --output ca_cdk8s_constructs/imports

Versioning

New versions of this library will be released via Github Releases and will follow the Semantic Versioning wherever possible.

Contributing

To develop this project you will need the following installed:

  • Just for running commands
  • uv for dependency management

Run just to see all available commands.

Releases

This project uses semantic versioning and versions must be bumped in accordance with SemVer rules.

The Justfile contains a helper command for making releases, just draft-release. To use it:

  1. Determine the release type (patch, minor, major)
  2. Run just draft-release <patch | minor | major>
  3. Approve the version bump if acceptable
  4. Check the staged changes and approve if acceptable
  5. Follow the link to the draft release and edit it to add details if requied
  6. Publish the release

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ca_cdk8s_constructs-5.0.1.tar.gz (2.4 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ca_cdk8s_constructs-5.0.1-py3-none-any.whl (2.4 MB view details)

Uploaded Python 3

File details

Details for the file ca_cdk8s_constructs-5.0.1.tar.gz.

File metadata

  • Download URL: ca_cdk8s_constructs-5.0.1.tar.gz
  • Upload date:
  • Size: 2.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.10.8 {"installer":{"name":"uv","version":"0.10.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ca_cdk8s_constructs-5.0.1.tar.gz
Algorithm Hash digest
SHA256 5ca164812d550c5c772eff50fb4e04635f255b36eebf4c7aa8da80074263e5f8
MD5 4af1f33b789459960e258ffb9ab65549
BLAKE2b-256 d3e8af32897e1b161ea14578ad4a8213b804128b86434e481827a57dc0ff2ded

See more details on using hashes here.

File details

Details for the file ca_cdk8s_constructs-5.0.1-py3-none-any.whl.

File metadata

  • Download URL: ca_cdk8s_constructs-5.0.1-py3-none-any.whl
  • Upload date:
  • Size: 2.4 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.10.8 {"installer":{"name":"uv","version":"0.10.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for ca_cdk8s_constructs-5.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 0682f574ec80be2844368a18627eb609f8335f5c5de54e2095a1cb01f53af4be
MD5 8a80757868a40d09dd7ae968c3ff45e5
BLAKE2b-256 8502a3bea6b9e2c1bbd4364e4994f2cf0cb6f9df8d6bec2525f8654145c5681c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page