Skip to content

Changelog

All notable changes to this project will be documented in this file. See standard-version for commit guidelines.

1.0.0-beta.3 (2020-11-19)

Features

  • cli: stdout option for cdk8s synth (#361) (bbf116b)
  • add contributor instructions about using jsii docker image (#397) (bb0a5cc)

Bug Fixes

  • cli: python init template doesn’t install cdk8s-plus in the correct env (#399) (0d3017b)

1.0.0-beta.2 (2020-11-19)

⚠ BREAKING CHANGES

  • lib: CAUTION! Auto-generated resource names will change with this release. Resource names in manifests synthesized by a previous version of the CDK8s will be invalidated. Deploying new manifests will cause resources to be replaced. Temporarily, you can opt to use the legacy hashing mechanism by setting the environment variable CDK8S_LEGACY_HASH=1.
  • lib: Names.toDnsLabel() now accepts a construct scope instead of a string path, and a set of options instead of maxLen.
  • lib: Names.toLabelValue() now accepts a construct scope instead of a string path, and a set of options instead of maxLen.

Features

Bug Fixes

  • cli: python init templates are broken (#393) (d786001)
  • lib: names generated using non-FIPS compliant algorithm (#392) (a1acae7), closes #334

1.0.0-beta.1 (2020-11-18)

⚠ BREAKING CHANGES

  • plus-17: All L2 resource names will undergo a name change (e.g test-chart-config-configmap-233db8e7 -> test-chart-config-c3f7d3c0)
  • cli: Construct input types generated by cdk8s import are now called XxxProps instead of XxxOptions to conform with the CDK ecosystem.
  • lib: ApiObjectOptions is now called ApiObjectProps
  • lib: AppOptions is now called AppProps
  • lib: ChartOptions is now called ChartProps
  • lib: HelmOptions is now called HelmProps
  • lib: IncludeOptions is now called IncludeProps
  • cli: when importing k8s api objects using cdk8s import, non-stable APIs will be have an API level postfix. For example, k8s@1.18 will have an IngressV1Beta1 API object.
  • cli: The --include CLI option has been removed since all API objects are always imported.
  • cli: When using the CLI to import the core Kubernetes API objects, the imported classes will now have a Kube prefix in order to make it easier to differentiate them from the classes offered by the high-level APIs in CDK8s+ (e.g. k8s.Deployment is now k8s.KubeDeployment). You can disable through the --no-class-prefix option: cdk8s import --no-class-prefix k8s.
  • plus-17: Containers now need to be inputed as interfaces rather than classes. Instead of passing new kplus.Container(props), simply pass in props.

Features

  • plus: renamed to cdk8s-plus-17. The 17 marks the minimum supported version of the kubernetes spec.
  • website: documentation website (#367) (505f946), closes #366
  • cdk8s: escape hatches (#372) (12b0f01), closes #144
  • cli: class prefix for imported constructs (#370) (0b18df3), closes #140
  • cli: import constructs for all API levels (#379) (b0d7621), closes #380
  • plus-17: add liveness and startup probes to Container (#358) (f3f9a6a)
  • plus-17: Container is now inputed as an interface instead of class (#376) (33bf97a)
  • plus-17: expose service options in expose() (#357) (7137698)
  • switch to 1.0.0-beta version line (#384) (ffce8c6)

Bug Fixes

  • cli: input type names are “XxxOptions” instead of “XxxProps” (#381) (b2bd34e), closes #371
  • plus-17: L2 default child (#389) (a8337e8)

0.33.0 (2020-10-21)

Features

0.32.0 (2020-10-20)

⚠ BREAKING CHANGES

  • lib: EnvValue.fromSecret(secret, key) has been removed in favor of EnvValue.fromSecretValue({ secret, key }).

Features

Bug Fixes

  • lib: corrupted manifests when including large files (#350) (649f41b)
  • lib: fail to import octal numbers via include (and helm) (#349) (bed9eed), closes #348

0.31.0 (2020-10-19)

⚠ BREAKING CHANGES

  • plus: spec was removed from all cdk8s+ constructs and that now have a flat structure. See Example for new usage.
  • plus: Construct id’s for deployment will change due to a latent bug that appended the word pod to them.
  • plus: deployment.expose() now takes port as a positional argument (before: deployment.expose({ port }), now: deployment.expose(port)).
  • lib: auto-generated resource names that included duplicate hyphens will change will be replaced when applied.
  • lib: cdk8s-plus’s value of a label cdk8s.deployment of Pods are changed

Features

Bug Fixes

  • lib: uniqueId is not compatible with the k8s labels (#326) (161f368), closes #323
  • lib: duplicate hyphens in generated resource names (#341) (6f6366a)
  • allow tests to run without write access to os.tmpdir parent (#338) (dc17022)
  • Fix yaml quote serialization 325 (#327) (6b1f662), closes #325
  • plus: Remove the spec nesting level on both input and output (#347) (5e34850)

0.30.0 (2020-10-04)

Features

  • plus: Bump k8s imports to use spec version 1.17.0 (#331) (23fea73)

Features

  • lib: Expose DependecyGraph for upstream use (#329) (ee88402), closes #328

0.29.0 (2020-09-27)

Features

0.28.0 (2020-09-14)

Features

  • plus: ImagePullPolicy support for cdk8s-plus Container (#313) (8307757)

Bug Fixes

  • examples: Add missing dependencies on python examples. (#290) (36e6fab), closes #289
  • plus: support node ports for cdk8s-plus service (#315) (85ec225), closes #296
  • website: doc links are broken due to wrong version number (#312) (f2f9402), closes #307

0.27.0 (2020-08-05)

⚠ BREAKING CHANGES

  • lib: resource names will now be rendered differently, omitting adjacent duplicate components.

Features

  • examples: Elasticsearch query using CDK8s+ and CRD (#281) (3be1a96)
  • lib: omit duplicate components in generated names (#258) (473b5ef)

Bug Fixes

  • cli: Conform python and java package names to language standards (no hyphens) (#283) (f0b33c0)
  • cli: java importing crd fails (#257) (f0ef3b4)

0.26.0 (2020-06-29)

Features

  • cli: cdk8s init template for java (#245) (2bec62a)
  • Introducing “cdk8s+”: high-level APIs for Kubernetes (#239) (1b991f6)

Bug Fixes

  • move output of java imports into /src/main/java (#240) (9445358)

0.25.0 (2020-06-09)

⚠ BREAKING CHANGES

  • lib: cdk8s discontinues support for the onPrepare and onSynthesis construct hooks. These methods will eventually be removed from the constructs programming model.

Features

Bug Fixes

  • cli: options type not generated for certain CRDs (#229) (0cbaf19), closes #219

0.24.0 (2020-05-27)

⚠ BREAKING CHANGES

  • cli: enum string values are now proper enums instead of just strings.

Features

Bug Fixes

  • cli: unable to import CRDs with non-trivial “xxxOf” constraints (#212) (18136ed), closes #171
  • cli: unable to import types with all-caps TLAs (#211) (a11d0e8), closes #209

0.23.0 (2020-05-26)

⚠ BREAKING CHANGES

  • cli: the generated module names of imported CRDs now include the resource’s group and not just its kind in order to ensure uniqueness. For example, when importing the Jenkins CRD, instead of ‘imports/jenkins.ts, we now haveimports/jenkins.io/jenkins.ts`.
  • cli: class names of imported apis are now normalized to PascalCase.

Features

Bug Fixes

  • cli: impossible to import two crds with the same kind (#203) (f6248ce)
  • docs: do not mark arguments as optional in python getting-started (#191) (be090d0)
  • lib: unable to express empty objects and array (#200) (9ae5efb)

0.22.0 (2020-05-22)

Features

  • cli: jest tests in typescript-app template (b6aed5a)
  • cli: support CRDs with apiVersion “apiextensions.k8s.io/v1” (#142) (f5111b0)
  • cli: support import module name overriding in python (#107) (327ba47)
  • docs: add python and pipenv prerequisites (db23fa1), closes #166
  • examples: central readme for all examples (#176) (9cab302), closes #174
  • examples: reorganize examples by language (#138) (85cf631)
  • readme: add link to “awesome cdk8s” (0889a6e)

0.21.0 (2020-05-14)

Features

Bug Fixes

  • cli: unable to import a crd that has no schema (#132) (b8115cb)
  • crd: Ensure yaml doc is defined before casting to CustomResourceApiObject (#130) (03e6d84)
  • redirect: Handle 302 redirect case when importing from remote url (#131) (1ed88ca)

0.20.0 (2020-04-27)

Features

  • surface cdk8s in awscdk.io (45e188e)

Bug Fixes

  • docs: top-level “getting started” page not found (#120) (eb9d2ad), closes #106
  • readme: missing information about imports in cdk8s-cli readme (#108) (e9f291e)

0.19.0 (2020-04-12)

Bug Fixes

  • cli-import: unable to import a CRD from an insecure server (#102) (4dde096), closes #94
  • homebrew: homebrew release trigger is broken (5ecb143)

Features

  • cli-import: allow overriding module name in imports (#84) (63daf78)

0.18.0 (2020-04-10)

Features

Bug Fixes

  • crd: fix multi-resource importing of CRDs (#78) (fd8f753)
  • examples: “replicas” option is not respected in the web-service example (#87) (97ca582)
  • gha: prevent gha from running on forks (26eb407)

0.17.0 (2020-03-21)

⚠ BREAKING CHANGES

  • please upgrade your dependency requirement for “constructs” to ^2.0.0

Bug Fixes

  • gh_actions: fix release-next script to use correct npx publishing (27c7f9d)
  • readme: hello example link is broken #74 (0b858cf)

  • upgrade jsii & constructs (#80) (f917e0a)

0.16.0 (2020-03-17)

Features

0.15.1 (2020-03-13)

Bug Fixes

  • cli-init: install “constructs” instead of “@aws-cdk/core” (6ccc03f)

0.15.0 (2020-03-12)

Features

  • default chart namespaces (#68) (36b9ff1)
  • peer-depend on “constructs” instead of “@aws-cdk/core” (#66) (c336c95)
  • sort keys of ApiObject manifests (#67) (1fe89bd), closes #17

0.14.0 (2020-03-10)

Features

0.13.1 (2020-03-09)

Bug Fixes

  • cli: init could not find a version that matches cdk8s0-13-0 (e1267f6)

0.13.0 (2020-03-09)

This release adds Python support for cdk8s and includes; - The cdk8s library is released to PyPI - cdk8s init python-app creates new Python apps - cdk8s import generates python classes for Kubernetes API objects

⚠ BREAKING CHANGES

  • cli: cdk8s import now generates a single file with all types, which means you will have to modify TypeScript code to import { Deployment, Pod, ... } from './imports/k8s' instead of importing multiple files.
  • cli: cdk8s gen is now cdk8s import k8s and output goes to imports/k8s.ts instead of .gen/index.ts.

Features

  • cli: “cdk8s gen” is now “cdk8s import k8s” (#43) (fb9e0b5), closes #31 #40
  • cli: “cdk8s synth” (#44) (d457ea9), closes #41
  • cli: cdk8s.yaml (#52) (e6834d3), closes #42
  • cli: import only one class for every api object (#39) (2db4cfb)
  • cli: python project template (#36) (30f3bb7)
  • cli: python support for “import” (#47) (3b93d64)
  • cli: typescript project - “npm run upgrade” & “upgrade:next” (735e840)
  • cli: typescript project - “npm run build” now includes “synth” (7b15e3a)
  • docs: getting started in python (#60) (27d3bac)
  • examples: updates to hello-world example and directory reorganization (#33) (1c8f694)

Bug Fixes

  • cli: new typescript apps cannot be created with @next versions (#55) (119d95c)

0.12.0 (2020-03-03)

Bug Fixes

  • yaml not found in jsii languages (39ef409)

0.11.0 (2020-03-03)

Bug Fixes

  • yaml not found in jsii languages (39ef409)

0.10.0 (2020-02-28)

Bug Fixes

  • cdk8s: autogenerated names fail validation for some resource types (#18) (b70e4fe), closes #16

0.9.0 (2020-02-27)

Features

0.8.0 (2020-02-27)

Features

  • cli: remove the cookiecutter prerequisite (#13) (10ab259)

0.7.0 (2020-02-26)

Bug Fixes

  • cli: typescript-app does not include main.ts (43b435a)

0.6.0 (2020-02-26)

Bug Fixes

  • cli does not work when used from a symlink (#11) (4bd3a37)

0.5.0 (2020-02-26)

Features

  • cli: project templates with “cdk8s init” (#10) (4aa59d9)
  • cookiecutter template for typescript app projects (#9) (55087e2)

0.4.0 (2020-02-23)

Features

  • podinfo: allow containers to bind to deployment (45237c0)

0.3.0 (2020-02-23)

Features

0.1.2 (2020-02-12)

Features

  • getting started documentation (2616372)