proud-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 PMbrave-ambulance-98491
09/23/2021, 7:03 PMGOOGLE_CREDENTIALS
to connect to your cluster?ripe-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?
fresh-judge-73477
09/28/2021, 7:44 AMfunc CreateCustomResource(ctx *pulumi.Context, applicationName string, apiKey string, urlPrefix string, apiVersion string, kind string, labels pulumi.StringMap, timeout int64,k8sProvider *k8s.Provider,serviceAccount *v1.ServiceAccount)(*k8sApiExt.CustomResource, error){
type SpecType struct {
Prefix pulumi.String
Service pulumi.String
Headers pulumi.StringMap
TimeOut <http://pulumi.Int|pulumi.Int>
}
//headersData := pulumi.StringMap{"x-api-key":pulumi.String(apiKey)}
spec := SpecType{
Prefix: pulumi.String(fmt.Sprintf("/%s/",urlPrefix)),
Service: pulumi.String(applicationName),
TimeOut: <http://pulumi.Int|pulumi.Int>(timeout),
}
var otherfields k8s.UntypedArgs
otherfields = make(k8s.UntypedArgs, 1)
otherfields["Spec"] = spec
customResourceDefnArgs := k8sApiExt.CustomResourceArgs{
ApiVersion: pulumi.String(apiVersion),
Kind: pulumi.String(kind),
Metadata: metav1.ObjectMetaArgs{
Labels: labels,
Name: pulumi.String(applicationName),
Namespace: pulumi.String(applicationName),
},
OtherFields: otherfields,
}
data, err := json.Marshal(customResourceDefnArgs)
if(err == nil){
logger.Infof("datataa= %s-%s",data,apiKey)
}
return k8sApiExt.NewCustomResource(ctx,GetResourceName(applicationName,"mapping"),&customResourceDefnArgs,pulumi.DependsOn([]pulumi.Resource{serviceAccount}),pulumi.Provider(k8sProvider))
}
rapid-soccer-18092
09/28/2021, 3:53 PMpulumi preview
diff even if nothing has changed. This ultimately causes my datadog pods to get recreated, which is not desirable. I am deploying to AKS K8s (1.21.2) using Pulumi 3.12.0
pulumi:pulumi:Stack: (same)
[urn=urn:pulumi:preprod::aks::pulumi:pulumi:Stack::aks-preprod]
[provider=urn:pulumi:preprod::aks::pulumi:providers:kubernetes::k8s-provider::046e67e2-9780-4010-9c77-9999999ebefd]
~ spec: {
~ template: {
~ metadata: {
~ annotations: {
~ checksum/clusteragent_token: "32a656c3c7aeb06e5c36xxx" => "8027d4026d2e72484f1xxx"
}
}
}
}
+-kubernetes:core/v1:Secret: (replace)
[id=default/datadog-chart-cluster-agent]
[urn=urn:pulumi:preprod::aks::kubernetes:<http://helm.sh/v3:Chart$kubernetes:core/v1:Secret::default/datadog-chart-cluster-agent|helm.sh/v3:Chart$kubernetes:core/v1:Secret::default/datadog-chart-cluster-agent>]
[provider=urn:pulumi:preprod::aks::pulumi:providers:kubernetes::k8s-provider::046e67e2-9780-4010-9c77-9999999ebefd]
~ data: {
}
~ kubernetes:apps/v1:DaemonSet: (update)
[id=default/datadog-chart]
[urn=urn:pulumi:preprod::aks::kubernetes:<http://helm.sh/v3:Chart$kubernetes:apps/v1:DaemonSet::default/datadog-chart|helm.sh/v3:Chart$kubernetes:apps/v1:DaemonSet::default/datadog-chart>]
[provider=urn:pulumi:preprod::aks::pulumi:providers:kubernetes::k8s-provider::046e67e2-9780-4010-9c77-9999999ebefd]
~ spec: {
~ template: {
~ metadata: {
~ annotations: {
~ checksum/clusteragent_token: "bcc328b0b69baa07a7fae32a6baxxx" => "5200e78e7733904901f9511a094e8xxx"
}
}
}
Resources:
~ 2 to update
+-1 to replace
3 changes. 103 unchanged
And the pruned logs from the pulumi up
look like this:
-- kubernetes:core/v1:Secret default/datadog-chart-cluster-agent deleting original
~ kubernetes:apps/v1:Deployment default/datadog-chart-cluster-agent updating [diff: ~spec]
~ kubernetes:apps/v1:DaemonSet default/datadog-chart updating [diff: ~spec]
-- kubernetes:core/v1:Secret default/datadog-chart-cluster-agent deleting original
-- kubernetes:core/v1:Secret default/datadog-chart-cluster-agent deleted original
~ kubernetes:apps/v1:Deployment default/datadog-chart-cluster-agent updating [diff: ~spec]; [1/2] Waiting for app ReplicaSet be marked available
~ kubernetes:apps/v1:Deployment default/datadog-chart-cluster-agent updating [diff: ~spec]; Deployment initialization complete
~ kubernetes:apps/v1:Deployment default/datadog-chart-cluster-agent updated [diff: ~spec]; Deployment initialization complete
~ kubernetes:apps/v1:DaemonSet default/datadog-chart updated [diff: ~spec]
+- kubernetes:core/v1:Secret default/datadog-chart-cluster-agent replacing [diff: ~data];
+- kubernetes:core/v1:Secret default/datadog-chart-cluster-agent replaced [diff: ~data];
++ kubernetes:core/v1:Secret default/datadog-chart-cluster-agent creating replacement [diff: ~data];
++ kubernetes:core/v1:Secret default/datadog-chart-cluster-agent creating replacement [diff: ~data];
++ kubernetes:core/v1:Secret default/datadog-chart-cluster-agent created replacement [diff: ~data];
Can someone help point me in the right direction?worried-city-86458
09/30/2021, 2:08 AMworried-city-86458
09/30/2021, 7:33 PMrhythmic-rain-31941
09/30/2021, 9:29 PMexec
as we can do in terraform provider? https://registry.terraform.io/providers/hashicorp/kubernetes/latest/docs#exec-plugins
#kubernetessquare-energy-17741
09/30/2021, 10:14 PMrhythmic-rain-31941
10/01/2021, 1:23 AMrancher_ci_cluster = rancher2.Cluster()
k8s_provider = k8s.Provider("cluster-access",
kubeconfig=rancher_ci_cluster.kube_config
)
sa = k8s.core.v1.ServiceAccount("microservice",
metadata=k8s.meta.v1.ObjectMetaArgs(
namespace="monitoring",
name="microservice"
)
)
this keep throwing below error
error: configured Kubernetes cluster is unreachable: unable to load schema information from the API server: Get "<https://992E92B1DDDD40F85E620599B78C3F9C.sk1.us-east-1.eks.amazonaws.com/openapi/v2?timeout=32s>": dial tcp: lookup <http://992E92B1DDDD40F85E620599B78C3F9C.sk1.us-east-1.eks.amazonaws.com|992E92B1DDDD40F85E620599B78C3F9C.sk1.us-east-1.eks.amazonaws.com> on 10.0.4.55:53: no such host
not sure if the provider is getting set correctly or not, can someone help me here please?
p.s: that's not my cluster api server endpoint toobreezy-bear-50708
10/04/2021, 12:56 PMdry-football-2639
10/04/2021, 2:26 PMdry-autumn-28966
10/04/2021, 6:09 PMvalues
(Go automation API) doesn’t trigger an update during Up() operations. I can see the new value in the stack state file but not when I run helm get values <release>
. I have tried setting Replace=true / ForceUpdate=true / ResetValues=true but no luck. Am I doing something wrong?brash-quill-35776
10/05/2021, 5:58 PMistioctl
, rather than Pulumi itself
I know for resources that created by pulumi, I can definitely update that by running pulumi up
, but how about resource that not created by pulumi
?average-market-57523
10/06/2021, 7:27 PM