- Add support for previewing Create and Update operations for API servers that support dry-run (pulumi#1355)
- Revert Helm v2 deprecation warnings (pulumi#1352)
Helm v2 support is EOL, and will no longer be supported upstream
as of next month. Furthermore, the stable/incubator chart repos will likely
stop working after November 13, 2020. Deprecation warnings have
been added for any usage of Pulumi's helm.v2
API, and this API will be removed at a future date. Our helm.v3
API is
backward compatible, so you should be able to update without disruption to existing resources.
- Set plugin version for Go SDK invoke calls (pulumi#1325)
- Python: Fix generated examples and docs to prefer input/output classes (pulumi#1346)
- Update Helm v3 mod to v3.3.2 (pulumi#1326)
- Update Helm v3 mod to v3.3.3 (pulumi#1328)
- Change error to warning if internal autoname annotation is set (pulumi#1337)
- Deprecate Helm v2 SDKs (pulumi#1344)
- Fix Python type hints for lists (pulumi#1313)
- Fix Python type hints for integers (pulumi#1317)
- Fix Helm v3 default namespace handling (pulumi#1323)
- Update Helm v3 mod to v3.3.1 (pulumi#1320)
Note: There is a minor breaking change in the .NET SDK for Helm v3. As part of the switch to using native Helm libraries in #1291, the Helm.V3.Chart class no longer inherits from the ChartBase class. Most users should not be affected by this change.
- Upgrade version of pyyaml to fix a security vulnerability (pulumi#1230)
- Fix Helm api-versions handling in all SDKs. (pulumi#1307)
- Update .NET Helm v3 to use native client. (pulumi#1291)
- Update Go Helm v3 to use native client. (pulumi#1296)
- Python: Allow type annotations on transformation functions. (pulumi#1298)
- Fix regression of .get methods in NodeJS SDK. (pulumi#1285)
- Upgrade to Pulumi v2.9.0, which adds type annotations and input/output classes to Python (pulumi#1276)
- Switch Helm v3 logic to use native library. (pulumi#1263)
- Bump python requests version dependency. (pulumi#1274)
- Update NodeJS Helm v3 to use native client. (pulumi#1279)
- [sdk/nodejs] Remove unneccessary constructor overloads. (pulumi#1286)
- Add support for k8s v1.19.0. (pulumi#996)
- Handle kubeconfig contents or path in provider. (pulumi#1255)
- Add type annotations to Python SDK for API Extensions, Helm, Kustomize, and YAML. (pulumi#1259)
- Update k8s package deps to v0.18.8. (pulumi#1265)
- Move back to upstream json-patch module. (pulumi#1266)
- Rename Python's yaml.ConfigFile file_id parameter to file. (pulumi#1248)
- Remove the ComponentStatus resource type. (pulumi#1234)
- Fix server-side diff when immutable fields change. (pulumi#988)
- Update json-patch mod to fix hangs on pulumi update. (pulumi#1223)
- Handle networking/v1beta1 Ingress resources. (pulumi#1221)
- Add NodeJS usage examples for Helm, Kustomize, and YAML resources. (pulumi#1205)
- Add Python usage examples for Helm, Kustomize, and YAML resources. (pulumi#1209)
- Add v3 Helm package for Go SDK. (pulumi#1211)
- Add Go usage examples for Helm, Kustomize, and YAML resources. (pulumi#1212)
- Add yaml.ConfigGroup to Python SDK. (pulumi#1217)
- Add C# usage examples for Helm, Kustomize, and YAML resources. (pulumi#1213)
- Fix error parsing Helm version (pulumi#1170)
- Fix prometheus-operator test to wait for the CRD to be ready before use (pulumi#1172)
- Fix suppress deprecation warnings flag (pulumi#1189)
- Set additionalSecretOutputs on Secret data fields (pulumi#1194)
- Set supported environment variables in SDK Provider classes (pulumi#1166)
- Python SDK updated to align with other Pulumi Python SDKs. (pulumi#1160)
- Add support for Kustomize. (pulumi#1178)
- Implement GetSchema to enable example and import code generation. (pulumi#1181)
- Only show deprecation messages when new API versions exist in current cluster version (pulumi#1182)
- Update resource deprecation/removal warnings. (pulumi#1162)
- Fix regression in TypeScript YAML SDK (pulumi#1157)
- NodeJS SDK updated to align with other Pulumi NodeJS SDKs. (pulumi#1151)
- .NET SDK updated to align with other Pulumi .NET SDKs. (pulumi#1132)
- Deprecated resources are now marked as
Obsolete
. - Many classes are moved to new locations on disk while preserving the public namespaces and API.
- Several unused argument/output classes were removed without any impact on resources (e.g.
DeploymentRollbackArgs
). - Fixed the type of some properties in
JSONSchemaPropsArgs
(there's no need to have 2nd-level inputs there):InputList<InputJson>
->InputList<JsonElement>
InputMap<Union<TArgs, InputList<string>>>
->InputMap<Union<TArgs, ImmutableArray<string>>>
- Deprecated resources are now marked as
- Fix incorrect schema consts for apiVersion and kind (pulumi#1153)
- 2.2.1 SDK release process failed, so pushing a new tag.
- Update deprecated/removed resource warnings. (pulumi#1135)
- Update to client-go 1.18. (pulumi#1136)
- Don't replace Service on .spec.type change. (pulumi#1139)
- Fix regex in python
include-crds
logic (pulumi#1145)
- Support helm v3
include-crds
argument. (pulumi#1102) - Bump python requests version dependency. (pulumi#1121)
- Add apiextensions.CustomResource to Go SDK. (pulumi#1125)
- Python and .NET packages failed to publish for 2.1.0, so bumping release version.
- Add YAML support to Go SDK. (pulumi#1093).
- Add Helm support to Go SDK. (pulumi#1105).
- fix(customresources): use a 3-way merge patch instead of strategic merge. (pulumi#1095)
- Fix required input props in Go SDK. (pulumi#1090)
- Update Go SDK using latest codegen packages. (pulumi#1089)
- Fix schema type for Fields and RawExtension. (pulumi#1086)
- Fix error parsing YAML in python 3.8 (pulumi#1079)
- Fix HELM_HOME handling for Helm v3. (pulumi#1076)
- Add consts to Go SDK. (pulumi#1062).
- Add
CustomResource
to .NET SDK (pulumi#1067). - Upgrade to Pulumi v2.0.0
- Sort fetched helm charts into alphabetical order. (pulumi#1064)
- Add a Go SDK. (pulumi#1029) (pulumi#1042).
- Add support for Kubernetes 1.18. (pulumi#872) (pulumi#1042).
- Update the Python
Provider
class to use parameter naming consistent with other resources. (pulumi#1039). - Change URN for apiregistration resources. (pulumi#1021).
- Automatically populate type aliases and additional secret outputs in the .NET SDK. (pulumi#1026).
- Update to Pulumi NuGet 1.12.1 and .NET Core 3.1. (pulumi#1030).
- Change URN for apiregistration resources. (pulumi#1021).
- Replace PersistentVolume if volume source changes. (pulumi#1015).
- Fix bool Python provider opts. (pulumi#1027).
- Replace Daemonset if .spec.selector changes. (pulumi#1008).
- Display error when pulumi plugin install fails. (pulumi#1010).
- Upgrade pulumi/pulumi dep to 1.11.0 (fixes #984). (pulumi#1005).
- Auto-generate aliases for all resource kinds. (pulumi#991).
- Fix aliases for several resource kinds. (pulumi#990).
- Don't require valid cluster for YAML render mode. (pulumi#997).
- Fix .NET resources with empty arguments. (pulumi#983).
- Fix panic condition in Pod await logic. (pulumi#998).
- .NET SDK supports resources to work with YAML Kubernetes files and Helm charts. (pulumi#980).
- Change invoke call to always use latest version. (pulumi#987).
- Optionally render YAML for k8s resources. (pulumi#936).
- Specify provider version for invokes. (pulumi#982).
- Update nodejs SDK to use optional chaining in constructor. (pulumi#959).
- Automatically set Secret inputs as pulumi.secret. (pulumi#961).
- Create helm.v3 alias. (pulumi#970).
- Fix hang on large YAML files. (pulumi#974).
- Use resourcePrefix all code paths. (pulumi#977).
- Handle invalid kubeconfig context. (pulumi#960).
- Improve namespaced Kind check. (pulumi#947).
- Add helm template
apiVersions
flag. (pulumi#894) - Move YAML decode logic into provider and improve handling of default namespaces for Helm charts. (https://github.com /pulumi/pull/952).
- Gracefully handle unreachable k8s cluster. (pulumi#946).
- Fix deprecation notice for CSINode. (pulumi#944).
- Revert invoke changes. (pulumi#941).
- Move YAML decode logic into provider. (pulumi#925).
- Improve handling of default namespaces for Helm charts. (pulumi#934).
- Fix panic condition in Ingress await logic. (pulumi#928).
- Fix deprecation warnings and docs. (pulumi#929).
- Fix projection of array-valued output properties in .NET. (pulumi#931)
- Fix deprecation warnings and docs. (pulumi#918 and https://github.com /pulumi/pull/921).
The discovery.v1alpha1.EndpointSlice and discovery.v1alpha1.EndpointSliceList APIs were removed in k8s 1.17, and no longer appear in the Pulumi Kubernetes SDKs. These resources can now be found at discovery.v1beta1.EndpointSlice and discovery.v1beta1.EndpointSliceList.
- Add support for Kubernetes v1.17.0 (pulumi#706)
- Use HELM_HOME as default if set. (pulumi#855).
- Use
namespace
provided byKUBECONFIG
, if it is not explicitly set in the provider (pulumi#903).
- Add
Provider
for .NET. (pulumi#897)
- Add support for .NET. (pulumi#885)
- Add support for helm 3 CLI tool. (pulumi#882).
- Increase maxBuffer for helm template exec. (pulumi#864).
- Add StreamInvoke RPC call, along with stream invoke implementations for kubernetes:kubernetes:watch, kubernetes:kubernetes:list, and kubernetes:kubernetes:logs. (#858, #873, #876).
- Correctly merge provided opts for k8s resources. (pulumi#850).
- Fix a bug that causes helm crash when referencing 'scoped packages' that start with '@'. (pulumi#846)
- Stop using initialApiVersion annotation. (pulumi#837).
- Cache the parsed OpenAPI schema to improve performance. (pulumi#836).
- Cache the OpenAPI schema to improve performance. (pulumi#833).
- Aggregate error messages from Pods on Job Read. (pulumi#831).
- Improve interactive status for Jobs. (pulumi#832).
- Add logic to check for Job readiness. (pulumi#633).
- Automatically mark Secret data and stringData as secret. (pulumi#803).
- Auto-alias resource apiVersions. (pulumi#798).
- Provide detailed error for removed apiVersions. (pulumi#809).
- Add support for Kubernetes v1.16.0 (pulumi#669)
- Implement customTimeout for resource deletion. (pulumi#802).
- Increase default readiness timeouts to 10 mins. (pulumi#721).
- Add suppressDeprecationWarnings flag. (pulumi#808).
- Warn for invalid usage of Helm repo parameter. (pulumi#805).
- Add PodAggregator for use by resource awaiters. (pulumi#785).
- Warn for deprecated apiVersions. (pulumi#779).
- Fix await logic for extensions/v1beta1/Deployment (pulumi#794).
- Fix error reporting (pulumi#782).
- Fix name collisions in the Charts/YAML Python packages (pulumi#771).
- Implement
{ConfigFile, ConfigGroup, Chart}#get_resource
(pulumi#771). - Upgrade Pulumi dependency to 1.0.0.
- Do not leak unencrypted secret values into the state file (fixes pulumi#734).
- Refactor and update the docs of the repo for 1.0. (pulumi#736).
- Document await logic in the SDKs. (pulumi#711).
- Document await timeouts and how to override. (pulumi#718).
- Improve CustomResource for Python SDK. (pulumi#700).
- Clean up Python SDK get methods. (pulumi#740).
- Remove undocumented kubectl replace invoke method. (pulumi#738).
- Don't populate
.status
in input types (pulumi#635). - Allow a user to pass CustomTimeouts as part of ResourceOptions (fixes pulumi#672)
- Don't panic when an Asset or an Archive are passed into a resource definition (pulumi#751).
- Fix error messages for resources with default namespace. (pulumi#749).
- Correctly compute version number for plugin to send with registration requests (fixes pulumi#732).
- Add .get() to Python SDK. (pulumi#435).
- Align YAML parsing with core Kubernetes supported YAML subset. (pulumi#690).
- Handle string values in the equalNumbers function. (pulumi#691).
- Properly detect readiness for Deployment scaled to 0. (pulumi#688).
- Fix a bug that caused crashes when empty array values were added to resource inputs. (pulumi#696)
- Fall back to client-side diff if server-side diff fails. (pulumi#685).
- Fix namespace arg for Python Helm SDK (pulumi#670).
- Detect namespace diff for first-class providers. (pulumi#674).
- Fix values arg for Python Helm SDK (pulumi#678).
- Fix Python Helm LocalChartOpts to inherit from BaseChartOpts (pulumi#681).
This release reverts the default diff behavior back to the pre-0.25.3
behavior. A new flag has
been added to the provider options called enableDryRun
, that can be used to opt in to the new
diff behavior. This will eventually become the default behavior after further testing to ensure
that this change is not disruptive.
- Disable dryRun diff behavior by default. (pulumi#686)
- Improve error messages for StatefulSet. (pulumi#673)
- Properly reference override values in Python Helm SDK (pulumi#676).
- Handle Output values in diffs. (pulumi#682).
- Allow
yaml.ConfigGroup
to take URLs as argument (pulumi#638). - Return useful errors when we fail to fetch URL YAML (pulumi#638).
- Use JSON_SCHEMA when parsing Kubernetes YAML, to conform with the expectations of the Kubernetes core resource types. (pulumi#638).
- Don't render emoji on Windows. (pulumi#634)
- Emit a useful error message (rather than a useless one) if we fail to parse the YAML data in
kubernetes:config:kubeconfig
(pulumi#636). - Provide useful contexts in provider errors, particularly those that originate from the API server (pulumi#636).
- Expose all Kubernetes types through the SDK (pulumi#637).
- Use
opts
instead of__opts__
andresource_name
instead of__name__
in Python SDK (pulumi#639). - Properly detect failed Deployment on rollout. (pulumi#646 and pulumi#657).
- Use dry-run support if available when diffing the actual and desired state of a resource (pulumi#649)
- Fix panic when
.metadata.label
is mistyped (pulumi#655). - Fix unexpected diffs when running against an API server that does not support dry-run. (pulumi#658)
- The Kubernetes provider can now communicate detailed information about the difference between a resource's desired and actual state during a Pulumi update. (pulumi#618).
- Refactor Pod await logic for easier testing and maintenance (pulumi#590).
- Update to client-go v12.0.0 (pulumi#621).
- Fallback to JSON merge if strategic merge fails (pulumi#622).
- Fix Helm Chart resource by passing
resourcePrefix
to the yaml template resources (pulumi#625).
- Unify diff behavior between
Diff
andUpdate
. This should result in better detection of state drift as well as behavior that is more consistent with respect tokubectl
. (pulumi#604) - The Kubernetes provider now supports the internal features necessary for the Pulumi engine to detect diffs between the actual and desired state of a resource after a
pulumi refresh
(pulumi#477). - The Kubernetes provider now sets the
"kubectl.kubernetes.io/last-applied-configuration"
annotation to the last deployed configuration for a resource. This enables better interoperability withkubectl
.
- Add more props that force replacement of Pods (pulumi#613)
- Add support for Kubernetes v1.15.0 (pulumi#557)
- Enable multiple instances of Helm charts per stack (pulumi#599).
- Enable multiple instances of YAML manifests per stack (pulumi#594).
- None
BREAKING: This release changes the behavior of the provider namespace
flag introduced
in 0.23.0
. Previously, this flag was treated as an override, which ignored namespace
values set directly on resources. Now, the flag is a default, and will only set the
namespace if one is not already set. If you have created resources using a provider
with the namespace
flag set, this change may cause these resources to be recreated
on the next update.
- BREAKING: Change the recently added
transformations
callback in Python to match JavaScript API (pulumi#575) - BREAKING: Remove
getInputs
from Kubernetes resource implementations. (pulumi#580) - BREAKING: Change provider namespace from override to default. (pulumi#585)
- Enable configuring
ResourceOptions
viatransformations
(pulumi#575). - Changing k8s cluster config now correctly causes dependent resources to be replaced (pulumi#577).
- Add user-defined type guard
isInstance
to all KubernetesCustomResource
implementations (pulumi#582).
- Fix panics during preview when
metadata
is a computed value (pulumi#572)
- None
- Update to use client-go v11.0.0 (pulumi#549)
- Deduplicate provider logs (pulumi#558)
- Fix namespaceable check for diff (pulumi#554)
This release fixes a longstanding issue with the provider namespace flag. Previously, this flag was erroneously ignored, but will now cause any resources using this provider to be created in the specified namespace. This may cause resources to be recreated! Unset the namespace parameter to avoid this behavior. Also note that this parameter takes precedence over any namespace defined on the underlying resource.
The Python SDK now supports YAML manifests and Helm charts, including CustomResourceDefinitions
and CustomResources
!
- Put all resources in specified provider namespace (pulumi#538)
- Add Helm support to Python SDK (pulumi#544)
- Fix Helm repo quoting for Windows (pulumi#540)
- Fix Python YAML SDK (pulumi#545)
This release improves handling for CustomResources (CRs) and CustomResourceDefinitions (CRDs).
CRs without a matching CRD will now be considered deleted during pulumi refresh
, and pulumi destroy
will not fail to delete a CR if the related CRD is missing.
See pulumi#530 for details.
- None
- Improve error handling for "no match found" errors (pulumi#530)
- None
- Add basic YAML support to Python SDK (pulumi#499)
- Add transforms to YAML support for Python SDK (pulumi#500)
- Move helm module into a directory (pulumi#512)
- Move yaml module into a directory (pulumi#513)
- Fix Deployment await logic for old API schema (pulumi#523)
- Replace PodDisruptionBudget if spec changes (pulumi#527)
- Add support for Kubernetes v1.14.0 (pulumi#371)
- Add CustomResource to Python SDK (pulumi#543)
- None
- None
- Split up nodejs SDK into multiple files (pulumi#480)
- Check for unexpected RPC ID and return an error (pulumi#475)
- Fix an issue where the Python
pulumi_kubernetes
package was depending on an olderpulumi
package. - Fix YAML parsing for computed namespaces (pulumi#483)
Updating to v0.17.0 version of @pulumi/pulumi
. This is an update that will not play nicely
in side-by-side applications that pull in prior versions of this package.
See https://github.com/pulumi/pulumi/commit/7f5e089f043a70c02f7e03600d6404ff0e27cc9d for more details.
As such, we are rev'ing the minor version of the package from 0.16 to 0.17. Recent version of pulumi
will now detect, and warn, if different versions of @pulumi/pulumi
are loaded into the same application. If you encounter this warning, it is recommended you move to versions of the @pulumi/...
packages that are compatible. i.e. keep everything on 0.16.x until you are ready to move everything to 0.17.x.
- None
- Allow the default timeout for awaiters to be overridden (pulumi#457)
- Properly handle computed values in labels and annotations (pulumi#461)
- None
- None
- Move mocha dependencies to devDependencies (pulumi#441)
- Include managed-by label in diff preview (pulumi#431)
- None
- Allow awaiters to be skipped by setting an annotation (pulumi#417)
- Set managed-by: pulumi label on all created resources (pulumi#418)
- Clean up docstrings for Helm package (pulumi#396)
- Support explicit
deleteBeforeReplace
(pulumi/pulumi#2415)
- Fix an issue with variable casing (pulumi#412)
- Use modified copy of memcache client (pulumi#414)
- Fix namespace handling regression (pulumi#403)
- Nest Input inside arrays (pulumi#395)
- Add support for first-class Python providers (pulumi#350)
- Upgrade to client-go 0.10.0 (pulumi#348)
- Consider PVC events in Deployment await logic (pulumi#355)
- Improve info message for Ingress with default path (pulumi#388)
- Autogenerate Python casing table from OpenAPI spec (pulumi#387)
- Use
node-fetch
rather thangot
to support Node 6 (pulumi#390) - Prevent orphaned resources on cancellation during delete (pulumi#368)
- Handle buggy case for headless Service with no port (pulumi#366)
- Implement incremental status updates for
StatefulSet
(pulumi#307) - Allow the
@pulumi/kubernetes
YAML API to understand arbitrary URLs (pulumi#328) - Add support for
.get
on CustomResources (pulumi#329) - Add support for
.get
for first-class providers (pulumi#340)
- Fix Ingress await logic for ExternalName Services (pulumi#320)
- Fix replacement logic for Job (pulumi#324 and pulumi#324)
- Fix Cluster/RoleBinding replace semantics (pulumi#337)
- Improve typing for
apiVersion
andkind
(pulumi#341)
- Allow Helm Charts to have
pulumi.Input
in theirvalues
(pulumi#241)
- Retry REST calls to Kubernetes if they fail, greatly improving resiliance against resorce operation ordering problems.
- Add support for creating CRDs and CRs in the same app (pulumi#271, pulumi#280)
- Add incremental await for logic for
Ingress
(pulumi#283) - Allow users to specify a Chart's source any way they can do it from the CLI (pulumi#284)
- "Fix" "bug" that cases Pulumi to crash if there is a duplicate key in a YAML template, to conform with Helm's behavior (pulumi#289)
- Emit better error when the API server is unreachable (pulumi#291)
- Add support for Kubernetes v0.12.* (pulumi#293)
- Fix bug that spuriously requires
.metadata.name
to be specified in Kubernetes list types (e.g.,v1/List
) (pulumi#294, pulumi#296) - Add Kubernetes v0.13.* support (pulumi#306)
- Improve error message when
Service
fails to initialized (pulumi#309) - Fix bug that causes us to erroneously report
Pod
's owner (pulumi#311)