From 657e9f5c6752bd8fb3fbb481c5421794d7831e57 Mon Sep 17 00:00:00 2001 From: Eron Wright Date: Mon, 11 Mar 2024 18:12:32 -0700 Subject: [PATCH 1/6] yaml/v2 --- .../content/blog/kubernetes-yaml-v2/index.md | 162 ++++++++++++++++++ 1 file changed, 162 insertions(+) create mode 100644 themes/default/content/blog/kubernetes-yaml-v2/index.md diff --git a/themes/default/content/blog/kubernetes-yaml-v2/index.md b/themes/default/content/blog/kubernetes-yaml-v2/index.md new file mode 100644 index 00000000000..65eb6c7894f --- /dev/null +++ b/themes/default/content/blog/kubernetes-yaml-v2/index.md @@ -0,0 +1,162 @@ +--- +title: "Pulumi Kubernetes 4.10: ConfigGroup/ConfigFile resources for Java, YAML SDKs" +date: 2024-03-30T00:00:00-07:00 + +meta_desc: >- + Pulumi Kubernetes v4.10 offers new resources for applying Kubernetes manifests consistently across Pulumi SDKs, and broaden support to the Java and YAML SDKs. + +authors: + - eron-wright + +tags: + - kubernetes + - yaml + - java +--- + +The Pulumi Kubernetes provider makes it easy to deploy Kubernetes resources to your cluster, giving you options +based on how your application or workload is packaged. The options include strongly-typed resources for +standard Kubernetes types, [Helm](https://helm.sh/) charts, [Kustomizations](https://kustomize.io/), and Kubernetes manifests. + +In v4.10, we leveled up the support for working with Kubernetes manifests with the introduction of the `yaml/v2` package. +The package provides new implementations of the `ConfigGroup` and `ConfigFile` resources, expanding support to the +Pulumi Java SDK and to Pulumi YAML. + +Please note that these resources are in a preview stage of maturity, as we continue to round out the feature set. +These new resources are provided side-by-side with the existing implementations. + +Let's explore how it's easier than ever to deploy diverse Kubernetes workloads using Pulumi. + +## kubernetes.yaml/v2.ConfigGroup + +The `ConfigGroup` resource creates a set of Kubernetes objects from Kubernetes manifests and/or object literals. +The Kubernetes manifest may be supplied using any combination of the following methods: + +1. a filename or a list of filenames. +2. a file pattern or a list of file patterns. +3. a literal string containing YAML or JSON text. +4. a literal object or a list of objects. + +The `ConfigGroup` resource accepts the following input properties: + +| Property | Description | +| ---------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `files` | Set of files, patterns and/or URLs to Kubernetes manifest files. Filenames containing any of the characters `*`, `?`, and `[` are treated as _patterns_. | +| `objs` | Set of Kubernetes objects. | +| `yaml` | A Kubernetes manifest as a YAML or JSON string. | +| `resourcePrefix` | A prefix for auto-generated names of the child resources. Defaults to the `ConfigGroup` name. | +| `skipAwait` | Skips over the readiness checks on the child resources. | + +### Manifest Files +Here's an example of applying a Kubernetes manifest file to your cluster: + +```yaml +name: demo-cg-1 +runtime: yaml +resources: + cg: + type: kubernetes:yaml/v2:ConfigGroup + properties: + files: + - ./manifest.yaml +``` + +### YAML Text +Here's how to apply an inline manifest: + +```yaml +name: demo-cg-2 +runtime: yaml +resources: + cg: + type: kubernetes:yaml/v2:ConfigGroup + properties: + yaml: | + apiVersion: v1 + kind: ConfigMap + metadata: + name: my-server-config + data: + altGreeting: "Good Morning!" + --- + apiVersion: v1 + kind: Secret + metadata: + name: my-dotfile-secret + data: + .secret-file: dmFsdWUtMg0KDQo= +``` + +### Object Literals +With `ConfigGroup` it is possible to define a Kubernetes object using Pulumi property values. + +```yaml +name: demo-cg-3 +runtime: yaml +resources: + cg: + type: kubernetes:yaml/v2:ConfigGroup + properties: + objs: + - apiVersion: stable.example.com/v1 + kind: CronTab + metadata: + name: my-crontab + spec: + cronSpec: "* * * * */5" +``` + +This feature is expecially useful for Pulumi YAML, since the `apiextensions.k8s.io:CustomResource` resource isn't +supported yet (see [pulumi-kubernetes#2787](https://github.com/pulumi/pulumi-kubernetes/issues/2787)). + +### Resource Prefixes +A notable change from 'v1' is how resource prefixes work. The purpose of the resource prefix is to ensure the uniqueness +of child resource names, as described in [Pulumi: Resource Names](https://www.pulumi.com/docs/concepts/resources/names/#urns). + +Note that the resource prefix is +not+ applied to the Kubernetes object names. + +### Transformation Support +The Kubernetes provider generally supports resource transformations, e.g. to apply a resource alias or +to apply an object name prefix or object label. Unfortunately, transformations aren't yet possible with the +new `ConfigGroup` resource, but stay tuned as we work towards a GA release later this year. + +## kubernetes.yaml/v2.ConfigFile + +The `ConfigFile` resource creates a set of Kubernetes objects from a Kubernetes manifest. While `ConfigGroup` offers +a superset of functionality, the `ConfigFile` gives a concise way to apply a specific manifest. + +The `ConfigFile` resource accepts the following input properties: + +| Property | Description | +| ---------------- | --------------------------------------------------------------------------------------------- | +| `file` | A file or URL to a Kubernetes manifest file. | +| `resourcePrefix` | A prefix for auto-generated names of the child resources. Defaults to the `ConfigFile` name. | +| `skipAwait` | Skips over the readiness checks on the child resources. | + +### Manifest File +Here's an example of applying a Kubernetes manifest file to your cluster: + +```yaml +name: demo-cg-1 +runtime: yaml +resources: + cf: + type: kubernetes:yaml/v2:ConfigFile + properties: + file: ./manifest.yaml +``` + +## Conclusion + +With the new resources in `yaml/v2`, we're excited to enable new scenarios in Pulumi YAML and the Pulumi Java SDK. +Stay tuned for new editions of the `Chart` and `Directory` resources, coming soon. + +This is part of a broad initiative to use Multi-Language Component (MLC) technology to offer a consistent experience +across the Pulumi SDKs. See [pulumi-kubernetes#1971](https://github.com/pulumi/pulumi-kubernetes/issues/1971) for details. + +Check out the following links to learn more about Pulumi Kubernetes today! + +* [Getting Started](/docs/clouds/kubernetes/get-started/) +* [Documentation](/docs/clouds/kubernetes/) +* [Open Source](https://github.com/pulumi/pulumi-kubernetes) +* [Community Slack](https://slack.pulumi.com/) From 461715b66b3a7f4b65e1b08df137add9083c9121 Mon Sep 17 00:00:00 2001 From: Eron Wright Date: Tue, 12 Mar 2024 09:39:33 -0700 Subject: [PATCH 2/6] edits, linting --- .../content/blog/kubernetes-yaml-v2/index.md | 37 +++++++++++++------ 1 file changed, 26 insertions(+), 11 deletions(-) diff --git a/themes/default/content/blog/kubernetes-yaml-v2/index.md b/themes/default/content/blog/kubernetes-yaml-v2/index.md index 65eb6c7894f..511a9e9c09e 100644 --- a/themes/default/content/blog/kubernetes-yaml-v2/index.md +++ b/themes/default/content/blog/kubernetes-yaml-v2/index.md @@ -1,9 +1,9 @@ --- -title: "Pulumi Kubernetes 4.10: ConfigGroup/ConfigFile resources for Java, YAML SDKs" +title: "New: ConfigGroup, ConfigFile resources for Java, YAML SDKs" date: 2024-03-30T00:00:00-07:00 meta_desc: >- - Pulumi Kubernetes v4.10 offers new resources for applying Kubernetes manifests consistently across Pulumi SDKs, and broaden support to the Java and YAML SDKs. + Pulumi Kubernetes v4.10 offers new resources for applying Kubernetes manifests consistently across Pulumi SDKs, and broadens support to the Java and YAML SDKs. authors: - eron-wright @@ -15,7 +15,7 @@ tags: --- The Pulumi Kubernetes provider makes it easy to deploy Kubernetes resources to your cluster, giving you options -based on how your application or workload is packaged. The options include strongly-typed resources for +based on how your application or workload is packaged. The options include strongly-typed resources for standard Kubernetes types, [Helm](https://helm.sh/) charts, [Kustomizations](https://kustomize.io/), and Kubernetes manifests. In v4.10, we leveled up the support for working with Kubernetes manifests with the introduction of the `yaml/v2` package. @@ -47,8 +47,12 @@ The `ConfigGroup` resource accepts the following input properties: | `resourcePrefix` | A prefix for auto-generated names of the child resources. Defaults to the `ConfigGroup` name. | | `skipAwait` | Skips over the readiness checks on the child resources. | +Note that all objects defined within the manifest must have a `metadata.name` field; +Pulumi [autonaming](https://www.pulumi.com/docs/concepts/resources/names/#autonaming) is not supported. + ### Manifest Files -Here's an example of applying a Kubernetes manifest file to your cluster: + +Here's an example of applying a Kubernetes manifest file to your cluster. ```yaml name: demo-cg-1 @@ -62,7 +66,8 @@ resources: ``` ### YAML Text -Here's how to apply an inline manifest: + +Here's how to apply an inline manifest. ```yaml name: demo-cg-2 @@ -88,12 +93,16 @@ resources: ``` ### Object Literals -With `ConfigGroup` it is possible to define a Kubernetes object using Pulumi property values. + +With `ConfigGroup` it's easy to define a Kubernetes object using Pulumi property values. Let's create a +Kubernetes namespace and deploy a custom resource into that namespace. ```yaml name: demo-cg-3 runtime: yaml resources: + ns: + type: kubernetes:core/v1:Namespace cg: type: kubernetes:yaml/v2:ConfigGroup properties: @@ -101,24 +110,29 @@ resources: - apiVersion: stable.example.com/v1 kind: CronTab metadata: + namespace: ${ns.metadata.name} name: my-crontab spec: cronSpec: "* * * * */5" ``` -This feature is expecially useful for Pulumi YAML, since the `apiextensions.k8s.io:CustomResource` resource isn't +This feature is expecially useful for Pulumi YAML, since the `apiextensions.k8s.io:CustomResource` resource isn't supported yet (see [pulumi-kubernetes#2787](https://github.com/pulumi/pulumi-kubernetes/issues/2787)). ### Resource Prefixes -A notable change from 'v1' is how resource prefixes work. The purpose of the resource prefix is to ensure the uniqueness + +The purpose of the resource prefix is to ensure the uniqueness of child resource names, as described in [Pulumi: Resource Names](https://www.pulumi.com/docs/concepts/resources/names/#urns). +The best practice is to use the component name as a prefix, and now that's the default behavior. -Note that the resource prefix is +not+ applied to the Kubernetes object names. +Note that the resource prefix is __not__ applied to the Kubernetes object names. ### Transformation Support + The Kubernetes provider generally supports resource transformations, e.g. to apply a resource alias or -to apply an object name prefix or object label. Unfortunately, transformations aren't yet possible with the -new `ConfigGroup` resource, but stay tuned as we work towards a GA release later this year. +to apply an object name prefix or object label. Transformations aren't yet possible with the +new `ConfigGroup` resource (see [pulumi/pulumi#12996](https://github.com/pulumi/pulumi/issues/12996)), +but stay tuned as we work towards a GA release later this year. ## kubernetes.yaml/v2.ConfigFile @@ -134,6 +148,7 @@ The `ConfigFile` resource accepts the following input properties: | `skipAwait` | Skips over the readiness checks on the child resources. | ### Manifest File + Here's an example of applying a Kubernetes manifest file to your cluster: ```yaml From 1f92fd93c884d859dac12745ffba185f9b8d95dc Mon Sep 17 00:00:00 2001 From: Eron Wright Date: Tue, 19 Mar 2024 17:31:34 -0700 Subject: [PATCH 3/6] Updated post to cover resource ordering --- .../content/blog/kubernetes-yaml-v2/index.md | 69 ++++++++++++++++++- 1 file changed, 68 insertions(+), 1 deletion(-) diff --git a/themes/default/content/blog/kubernetes-yaml-v2/index.md b/themes/default/content/blog/kubernetes-yaml-v2/index.md index 511a9e9c09e..6b82e9aae6a 100644 --- a/themes/default/content/blog/kubernetes-yaml-v2/index.md +++ b/themes/default/content/blog/kubernetes-yaml-v2/index.md @@ -20,7 +20,7 @@ standard Kubernetes types, [Helm](https://helm.sh/) charts, [Kustomizations](htt In v4.10, we leveled up the support for working with Kubernetes manifests with the introduction of the `yaml/v2` package. The package provides new implementations of the `ConfigGroup` and `ConfigFile` resources, expanding support to the -Pulumi Java SDK and to Pulumi YAML. +Pulumi Java SDK and to Pulumi YAML. The new implementations are also smarter about applying the objects in the correct order. Please note that these resources are in a preview stage of maturity, as we continue to round out the feature set. These new resources are provided side-by-side with the existing implementations. @@ -119,6 +119,23 @@ resources: This feature is expecially useful for Pulumi YAML, since the `apiextensions.k8s.io:CustomResource` resource isn't supported yet (see [pulumi-kubernetes#2787](https://github.com/pulumi/pulumi-kubernetes/issues/2787)). +### Resource Ordering + +The `ConfigGroup` resource automatically detects dependencies between resources in the manifest(s). +For example, it knows to install namespaces and Custom Resource Definitions (CRDs) first. + +Use the `config.kubernetes.io/depends-on` annotation to declare an explicit resource dependency. +The annotation accepts a list of resource references, delimited by commas. + +It consists of the group, kind, name, and optionally the namespace, delimited by forward slashes. + +| Resource Scope | Format | +| :--------------- | :--------------------------------------------- | +| namespace-scoped | `/namespaces///` | +| cluster-scoped | `//` | + +For resources in the “core” group, the empty string is used instead (for example: `/namespaces/test/Pod/pod-a`). + ### Resource Prefixes The purpose of the resource prefix is to ensure the uniqueness @@ -161,6 +178,56 @@ resources: file: ./manifest.yaml ``` +## Example: Certificate Manager + +Here's a complete example of how to install and use cert-manager using `ConfigGroup` resources. + +```yaml +name: cert-manager +runtime: yaml +description: Installs cert-manager. See https://cert-manager.io/docs/installation/kubectl/ for details. +variables: {} +resources: + install: + type: kubernetes:yaml/v2:ConfigGroup + properties: + files: + - https://github.com/cert-manager/cert-manager/releases/download/v1.14.4/cert-manager.yaml + test: + type: kubernetes:yaml/v2:ConfigGroup + options: + dependsOn: + - ${install} + properties: + yaml: | + apiVersion: v1 + kind: Namespace + metadata: + name: cert-manager-test + --- + apiVersion: cert-manager.io/v1 + kind: Issuer + metadata: + name: test-selfsigned + namespace: cert-manager-test + spec: + selfSigned: {} + --- + apiVersion: cert-manager.io/v1 + kind: Certificate + metadata: + name: selfsigned-cert + namespace: cert-manager-test + annotations: + config.kubernetes.io/depends-on: cert-manager.io/namespaces/cert-manager-test/Issuer/test-selfsigned + spec: + dnsNames: + - example.com + secretName: selfsigned-cert-tls + issuerRef: + name: test-selfsigned +``` + ## Conclusion With the new resources in `yaml/v2`, we're excited to enable new scenarios in Pulumi YAML and the Pulumi Java SDK. From 1130d0a834f0cb6156527bed2c90fb0f160a8afa Mon Sep 17 00:00:00 2001 From: Eron Wright Date: Fri, 12 Apr 2024 14:19:46 -0700 Subject: [PATCH 4/6] Updated date --- themes/default/content/blog/kubernetes-yaml-v2/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/themes/default/content/blog/kubernetes-yaml-v2/index.md b/themes/default/content/blog/kubernetes-yaml-v2/index.md index 6b82e9aae6a..ab7e2567cad 100644 --- a/themes/default/content/blog/kubernetes-yaml-v2/index.md +++ b/themes/default/content/blog/kubernetes-yaml-v2/index.md @@ -1,6 +1,6 @@ --- title: "New: ConfigGroup, ConfigFile resources for Java, YAML SDKs" -date: 2024-03-30T00:00:00-07:00 +date: 2024-04-12T00:00:00-07:00 meta_desc: >- Pulumi Kubernetes v4.10 offers new resources for applying Kubernetes manifests consistently across Pulumi SDKs, and broadens support to the Java and YAML SDKs. From 1cb8676c3fc51b15019d3d7c3406881c2f8bcde4 Mon Sep 17 00:00:00 2001 From: Eron Wright Date: Fri, 12 Apr 2024 17:54:53 -0700 Subject: [PATCH 5/6] meta image, doc links --- .../content/blog/kubernetes-yaml-v2/index.md | 8 +++++++- .../content/blog/kubernetes-yaml-v2/meta.png | Bin 0 -> 75261 bytes 2 files changed, 7 insertions(+), 1 deletion(-) create mode 100644 themes/default/content/blog/kubernetes-yaml-v2/meta.png diff --git a/themes/default/content/blog/kubernetes-yaml-v2/index.md b/themes/default/content/blog/kubernetes-yaml-v2/index.md index ab7e2567cad..94c645e9afe 100644 --- a/themes/default/content/blog/kubernetes-yaml-v2/index.md +++ b/themes/default/content/blog/kubernetes-yaml-v2/index.md @@ -1,7 +1,7 @@ --- title: "New: ConfigGroup, ConfigFile resources for Java, YAML SDKs" date: 2024-04-12T00:00:00-07:00 - +meta_image: meta.png meta_desc: >- Pulumi Kubernetes v4.10 offers new resources for applying Kubernetes manifests consistently across Pulumi SDKs, and broadens support to the Java and YAML SDKs. @@ -50,6 +50,9 @@ The `ConfigGroup` resource accepts the following input properties: Note that all objects defined within the manifest must have a `metadata.name` field; Pulumi [autonaming](https://www.pulumi.com/docs/concepts/resources/names/#autonaming) is not supported. +See the [API Reference documentation](https://www.pulumi.com/registry/packages/kubernetes/api-docs/yaml/v2/configgroup/) +for more information. + ### Manifest Files Here's an example of applying a Kubernetes manifest file to your cluster. @@ -164,6 +167,9 @@ The `ConfigFile` resource accepts the following input properties: | `resourcePrefix` | A prefix for auto-generated names of the child resources. Defaults to the `ConfigFile` name. | | `skipAwait` | Skips over the readiness checks on the child resources. | +See the [API Reference documentation](https://www.pulumi.com/registry/packages/kubernetes/api-docs/yaml/v2/configfile/) +for more information. + ### Manifest File Here's an example of applying a Kubernetes manifest file to your cluster: diff --git a/themes/default/content/blog/kubernetes-yaml-v2/meta.png b/themes/default/content/blog/kubernetes-yaml-v2/meta.png new file mode 100644 index 0000000000000000000000000000000000000000..0ba6c7987ddc7d254a137330b50ee2526844ffe7 GIT binary patch literal 75261 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 Date: Fri, 12 Apr 2024 17:57:29 -0700 Subject: [PATCH 6/6] feedback --- themes/default/content/blog/kubernetes-yaml-v2/index.md | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/themes/default/content/blog/kubernetes-yaml-v2/index.md b/themes/default/content/blog/kubernetes-yaml-v2/index.md index 94c645e9afe..93fb8c26885 100644 --- a/themes/default/content/blog/kubernetes-yaml-v2/index.md +++ b/themes/default/content/blog/kubernetes-yaml-v2/index.md @@ -19,7 +19,8 @@ based on how your application or workload is packaged. The options include stron standard Kubernetes types, [Helm](https://helm.sh/) charts, [Kustomizations](https://kustomize.io/), and Kubernetes manifests. In v4.10, we leveled up the support for working with Kubernetes manifests with the introduction of the `yaml/v2` package. -The package provides new implementations of the `ConfigGroup` and `ConfigFile` resources, expanding support to the +The package provides new implementations of the [`ConfigGroup`](/registry/packages/kubernetes/api-docs/yaml/v2/configgroup/) +and [`ConfigFile`](/registry/packages/kubernetes/api-docs/yaml/v2/configfile/) resources, expanding support to the Pulumi Java SDK and to Pulumi YAML. The new implementations are also smarter about applying the objects in the correct order. Please note that these resources are in a preview stage of maturity, as we continue to round out the feature set. @@ -50,7 +51,7 @@ The `ConfigGroup` resource accepts the following input properties: Note that all objects defined within the manifest must have a `metadata.name` field; Pulumi [autonaming](https://www.pulumi.com/docs/concepts/resources/names/#autonaming) is not supported. -See the [API Reference documentation](https://www.pulumi.com/registry/packages/kubernetes/api-docs/yaml/v2/configgroup/) +See the [API Reference documentation](/registry/packages/kubernetes/api-docs/yaml/v2/configgroup/) for more information. ### Manifest Files @@ -167,7 +168,7 @@ The `ConfigFile` resource accepts the following input properties: | `resourcePrefix` | A prefix for auto-generated names of the child resources. Defaults to the `ConfigFile` name. | | `skipAwait` | Skips over the readiness checks on the child resources. | -See the [API Reference documentation](https://www.pulumi.com/registry/packages/kubernetes/api-docs/yaml/v2/configfile/) +See the [API Reference documentation](/registry/packages/kubernetes/api-docs/yaml/v2/configfile/) for more information. ### Manifest File