prehistoric-translator-89978
09/01/2021, 11:52 PMrender_yaml_to_directory
without it affecting the state of my k8s cluster?ripe-shampoo-80285
09/02/2021, 3:55 PMfuture-refrigerator-88869
09/02/2021, 8:50 PMpurple-traffic-44372
09/03/2021, 2:26 PMbusy-house-95123
09/05/2021, 7:13 PMChartOpts
initializer. 😄brash-cricket-30050
09/08/2021, 8:00 AM--set-file
on a k8s.helm.v3.Chart? Regular --set
is done through ChartOpts.values
, but its unclear to me how to supply a file as value.
Am trying to get an install of Linkerd via Helm going, by porting https://linkerd.io/2.10/tasks/install-helm/ to Pulumi codeproud-pizza-80589
09/08/2021, 1:25 PMgray-hamburger-90102
09/09/2021, 10:20 AMredis.namespace
property. I want to retrieve it from the helm chart output as I need to ensure the secret retrieval for redisPassword
happens after the helm chart has deployed.
const redis = new k8s.helm.v3.Chart("tyk-redis", {
fetchOpts:{
repo: "<https://charts.bitnami.com/bitnami>",
},
repo: "bitnami",
chart: "redis",
namespace: tykFargateProfile.selectors.apply(selectors => selectors[0].namespace)
});
const redisPassword = k8s.core.v1.Secret.get("redisPassword", `${/*namespace here*/}/tyk-redis`).data.apply(data => data["redis-password"]);
polite-shoe-79877
09/09/2021, 11:56 AMorange-policeman-59119
09/09/2021, 8:23 PMbrave-ambulance-98491
09/09/2021, 9:42 PMDeployment
that uses a ConfigMap
, and also snags the name
property of the ConfigMap
for injecting as an environment variable. The abbreviated code is:
const myConfigMap = new k8s.core.v1.ConfigMap(...);
const deployment = new k8s.apps.v1.Deployment(
"my-deployment",
{
spec: {
template: {
spec: {
containers: [
{
name: "example",
env: [
{
name: "CONFIG_MAP_NAME",
value: myConfigMap.metadata.name,
},
],
},
],
},
},
},
},
);
My problem is that when I'm running an update, Pulumi does:
1. Create new myConfigMap
.
2. Delete old myConfigMap
.
3. Run update on deployment
, including changes to point to new myConfigMap
.
This leaves a period of time between step 2 ending and step 3 ending where the injected name in my old version of deployment
no longer points to a valid ConfigMap
in our namespace.
What I want to have Pulumi do is reverse steps 2 & 3:
1. Create new myConfigMap
.
2. Run update on deployment
, including changes to point to new myConfigMap
.
3. Delete old myConfigMap
.
Is there a way to do this in Pulumi (have cleanup / deletion happen conditional on other resource updates completing)?busy-journalist-6936
09/10/2021, 6:02 PMproud-pizza-80589
09/14/2021, 1:01 PMsparse-park-68967
09/14/2021, 6:49 PMable-doctor-68496
09/14/2021, 8:49 PMcolossal-car-2729
09/15/2021, 8:25 AMcrd2pulumi
. I have been able to make it work by writing all fields manually into something like this:
new k8s.apiextensions.CustomResource(
"shoot",
{
apiVersion: "core.gardener.cloud/v1beta1",
kind: "Shoot",
...
but its kinda hacky… Does anyone have an idea how to generate a typeful and documented pulumi.CustomResource
class for something like this? The api is actually pretty well defined:
https://github.com/gardener/gardener/blob/master/pkg/apis/core/types_shoot.gosquare-car-84996
09/15/2021, 4:40 PMHelm Release
but with @pulumi/kubernetes-v3.7.1
I get
TSError: ⨯ Unable to compile TypeScript:
index.ts(67,33): error TS2339: Property 'v3' does not exist on type 'typeof import("/home/user/Projects/pulumi/k8s/node_modules/@pulumi/kubernetes/core/index")'.
purple-plumber-90981
09/17/2021, 2:48 AMPreviewing update (ipd-eks-use1-sfx):
Type Name Plan Info
+ pulumi:pulumi:Stack pulumi-test-ipd-eks-use1-sfx create 1 message
+ ├─ pulumi:providers:kubernetes k8s_provider create
└─ kubernetes:<http://helm.sh/v3:Release|helm.sh/v3:Release> signalfx-agent 1 error
Diagnostics:
kubernetes:<http://helm.sh/v3:Release|helm.sh/v3:Release> (signalfx-agent):
error: Object 'Kind' is missing in 'null'
magnificent-ambulance-5713
09/21/2021, 3:06 AM@pulumi/kubernetes
from 3.4.1
to 3.7.2
, and it's just started consistently getting 403's for a couple of ConfigFile
resources:
Error: Error fetching YAML file '<https://github.com/kubernetes-sigs/metrics-server/releases/download/v0.4.1/components.yaml>': 403 Forbidden
Error: Error fetching YAML file '<https://github.com/jetstack/cert-manager/releases/download/v1.2.0/cert-manager.yaml>': 403 Forbidden
Any ideas why this might've started happening? The error call stack just points at this line of code. I can't see anything obvious that could cause it. Rolling back to 3.4.1
everything works again 🤯future-window-78560
09/21/2021, 6:42 PMworried-city-86458
09/22/2021, 4:26 AMbumpy-summer-9075
09/22/2021, 3:26 PMhundreds-airport-37168
09/23/2021, 6:17 PMripe-shampoo-80285
09/24/2021, 1:23 AMripe-shampoo-80285
09/24/2021, 1:23 AMripe-shampoo-80285
09/24/2021, 1:23 AMripe-shampoo-80285
09/24/2021, 1:24 AMenough-air-9670
09/24/2021, 12:07 PMpulumi up
is just hanging indefinitely when trying to create k8s.yaml.ConfigFile
for some CRD manifests in a directory.
k8s.yaml.ConfigGroup
is the same. Commenting out the block avoids the hang and works fine.
They aren't mega CRDs, the biggest is ~550 lines.
The code in question...
// Traefik CRDs
const crdDirectory = path.resolve(__dirname, "./crds");
fs.readdirSync(crdDirectory).forEach((filename) => {
new k8s.yaml.ConfigFile(
`crd-${filename}`,
{
file: `${crdDirectory}/${filename}`,
},
{
provider: args.provider,
parent: this,
}
);
});
Versions:
"@pulumi/kubernetes": "^3.7.2",
"@pulumi/pulumi": "^3.13.0",
I have another project doing the same thing that I haven't touched in a while, using @pulumi/pulumi v3.0.0 and @pulumi/kubernetes v3.5.0, which was working fine. Downgrading to those same versions for this still hangs unfortunately.little-journalist-4778
09/24/2021, 12:23 PMworried-city-86458
09/27/2021, 9:32 PMkube-system
).
However, installing the fluent bit chart via helm release resource, all k8s resources were created in the default
namespace.
Since the fluent bit chart does not use {{ .Release.Namespace }}
in the chart to control the namespace, I presume the helm chart resource was manipulating the namespace directly?
This area is a bit of a mess it seems - see https://github.com/helm/helm/issues/5465#issuecomment-692133971
From a chart user's pov, I just want to override the namespace as before, so based on the following from the above comment:
After deliberating over the use cases described earlier, I am certain they can be solved in different manners than the proposal described earlier; either by the tooling they're using (flux and spinnaker allow you to specify the namespace), by injecting the metadata yourself through the templates, or by using the post-renderer introduced in Helm 3.1.Is it reasonable that pulumi should be like flux and spinnaker and allow us to override the namespace?
worried-city-86458
09/27/2021, 9:32 PMkube-system
).
However, installing the fluent bit chart via helm release resource, all k8s resources were created in the default
namespace.
Since the fluent bit chart does not use {{ .Release.Namespace }}
in the chart to control the namespace, I presume the helm chart resource was manipulating the namespace directly?
This area is a bit of a mess it seems - see https://github.com/helm/helm/issues/5465#issuecomment-692133971
From a chart user's pov, I just want to override the namespace as before, so based on the following from the above comment:
After deliberating over the use cases described earlier, I am certain they can be solved in different manners than the proposal described earlier; either by the tooling they're using (flux and spinnaker allow you to specify the namespace), by injecting the metadata yourself through the templates, or by using the post-renderer introduced in Helm 3.1.Is it reasonable that pulumi should be like flux and spinnaker and allow us to override the namespace?
gorgeous-egg-16927
09/27/2021, 9:55 PM{{.Release.Namespace}}
template exists on the resource.
Can you open an issue to discuss further? I’m not sure if we’ll want to deviate from upstream behavior on the helm.Release. Furthermore, that was implemented in Chart using transformations, so I’m not 100% sure it’ll be possible in its current form.sparse-park-68967
09/27/2021, 10:01 PMworried-city-86458
09/27/2021, 10:28 PMsparse-park-68967
09/27/2021, 10:55 PM