All notable changes to this project will be documented in this file. See standard-version for commit guidelines.
1.0.0-beta.5 (2020-12-15)
1.0.0-beta.4 (2020-12-13)
- cli: import a single module per api group (#402) (ac295fe), closes #378 #401
- lib: allow hash to be optionally included in Names functions. (#396) (2c86526)
- plus-17: additional options for the Job construct. (#398) (17e8801)
- lib: Lazy is not resolved in metadata (#443) (914d4a8)
- cli: which command missing for windows (#417) (38a7034)
- docs: align getting started with new code (#410) (c61e109)
- docs: WebService typescript example formatting (#408) (e2470f9)
- plus-17: don't allow containers to be contructed from containers (#404) (5d11533)
1.0.0-beta.3 (2020-11-19)
- cli: stdout option for cdk8s synth (#361) (bbf116b)
- add contributor instructions about using jsii docker image (#397) (bb0a5cc)
1.0.0-beta.2 (2020-11-19)
- 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 ofmaxLen
. - lib:
Names.toLabelValue()
now accepts a construct scope instead of a string path, and a set of options instead ofmaxLen
.
- 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)
- 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 calledXxxProps
instead ofXxxOptions
to conform with the CDK ecosystem. - lib:
ApiObjectOptions
is now calledApiObjectProps
- lib:
AppOptions
is now calledAppProps
- lib:
ChartOptions
is now calledChartProps
- lib:
HelmOptions
is now calledHelmProps
- lib:
IncludeOptions
is now calledIncludeProps
- cli: when importing k8s api objects using
cdk8s import
, non-stable APIs will be have an API level postfix. For example, [email protected] will have anIngressV1Beta1
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 nowk8s.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 inprops
.
- plus: renamed to
cdk8s-plus-17
. The17
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)
- 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)
0.32.0 (2020-10-20)
- lib:
EnvValue.fromSecret(secret, key)
has been removed in favor ofEnvValue.fromSecretValue({ secret, key })
.
- 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)
- 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 takesport
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
- lib: helm construct (#346) (6ee449f), closes #65
- plus: Ingress (#340) (14ac668), closes #125
- plus: service.addDeployment() (#342) (5413b3b)
- migrate to cdk.dev slack workspace (#336) (b203e5a)
- 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)
0.29.0 (2020-09-27)
0.28.0 (2020-09-14)
- 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)
- lib: resource names will now be rendered differently, omitting adjacent duplicate components.
- examples: Elasticsearch query using CDK8s+ and CRD (#281) (3be1a96)
- lib: omit duplicate components in generated names (#258) (473b5ef)
- 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)
- cli: cdk8s init template for java (#245) (2bec62a)
- Introducing "cdk8s+": high-level APIs for Kubernetes (#239) (1b991f6)
0.25.0 (2020-06-09)
- lib:
cdk8s
discontinues support for theonPrepare
andonSynthesis
construct hooks. These methods will eventually be removed from theconstructs
programming model.
- cli: java import support (#226) (9619a73)
- lib: dependencies and ordering of charts and objects (#223) (701579e), closes #111
0.24.0 (2020-05-27)
- cli: enum string values are now proper enums instead of just
string
s.
- 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)
- 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 have
imports/jenkins.io/jenkins.ts`.
- cli: class names of imported apis are now normalized to
PascalCase
.
- cli: import CRDs from a running cluster (#207) (5153422), closes #197
- lib: introduce "include" (#202) (75d13e8), closes #199
- lib: yaml utility functions (#198) (9e0f030)
- 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)
- 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)
- new website (#143) (fcc59b0)
- example: python hello example (#101) (e792d2b)
- website: add reference docs links (2034ec0)
- 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)
- surface cdk8s in awscdk.io (45e188e)
- 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)
- cli-import: unable to import a CRD from an insecure server (#102) (4dde096), closes #94
- homebrew: homebrew release trigger is broken (5ecb143)
0.18.0 (2020-04-10)
- 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)
- please upgrade your dependency requirement for "constructs" to ^2.0.0
-
gh_actions: fix release-next script to use correct npx publishing (27c7f9d)
0.16.0 (2020-03-17)
0.15.1 (2020-03-13)
- cli-init: install "constructs" instead of "@aws-cdk/core" (6ccc03f)
0.15.0 (2020-03-12)
- 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)
- allow arbitrary construct names (#64) (1309960), closes #48
- chart.toJson() and apiObject.toJson() (#63) (80e8402), closes #48
0.13.1 (2020-03-09)
- 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 appscdk8s import
generates python classes for Kubernetes API objects
- cli:
cdk8s import
now generates a single file with all types, which means you will have to modify TypeScript code toimport { Deployment, Pod, ... } from './imports/k8s'
instead of importing multiple files. - cli:
cdk8s gen
is nowcdk8s import k8s
and output goes toimports/k8s.ts
instead of.gen/index.ts
.
- 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)
0.12.0 (2020-03-03)
yaml
not found in jsii languages (39ef409)
0.11.0 (2020-03-03)
yaml
not found in jsii languages (39ef409)
0.10.0 (2020-02-28)
0.9.0 (2020-02-27)
0.8.0 (2020-02-27)
0.7.0 (2020-02-26)
- cli: typescript-app does not include main.ts (43b435a)
0.6.0 (2020-02-26)
0.5.0 (2020-02-26)
- cli: project templates with "cdk8s init" (#10) (4aa59d9)
- cookiecutter template for typescript app projects (#9) (55087e2)
0.4.0 (2020-02-23)
- podinfo: allow containers to bind to deployment (45237c0)
0.3.0 (2020-02-23)
0.1.2 (2020-02-12)
- getting started documentation (2616372)