sparse-intern-71089
11/27/2023, 8:04 PMstale-answer-34162
11/28/2023, 3:09 PMkubernetes:core/v1:ServiceAccount (ingress/ingress-nginx-admission):
warning: This resource contains Helm hooks that are not currently supported by Pulumi. The resource will be created, but any hooks will not be executed. Hooks support is tracked at <https://github.com/pulumi/pulumi-kubernetes/issues/555> -- This warning can be disabled by setting the PULUMI_K8S_SUPPRESS_HELM_HOOK_WARNINGS environment variable
kubernetes:<http://rbac.authorization.k8s.io/v1:ClusterRole|rbac.authorization.k8s.io/v1:ClusterRole> (elastic-operator-edit):
error: resource elastic-operator-edit was not successfully created by the Kubernetes API server : Server-Side Apply field conflict detected. see <https://www.pulumi.com/registry/packages/kubernetes/how-to-guides/managing-resources-with-server-side-apply/#handle-field-conflicts-on-existing-resources> for troubleshooting help
: Apply failed with 1 conflict: conflict with "pulumi-resource-kubernetes" using <http://rbac.authorization.k8s.io/v1|rbac.authorization.k8s.io/v1>: .<http://metadata.labels.app.kubernetes.io/instance|metadata.labels.app.kubernetes.io/instance>
kubernetes:batch/v1:Job (ingress/ingress-nginx-admission-create):
warning: This resource contains Helm hooks that are not currently supported by Pulumi. The resource will be created, but any hooks will not be executed. Hooks support is tracked at <https://github.com/pulumi/pulumi-kubernetes/issues/555> -- This warning can be disabled by setting the PULUMI_K8S_SUPPRESS_HELM_HOOK_WARNINGS environment variable
kubernetes:<http://rbac.authorization.k8s.io/v1:ClusterRole|rbac.authorization.k8s.io/v1:ClusterRole> (elastic-operator):
error: resource elastic-operator was not successfully created by the Kubernetes API server : Server-Side Apply field conflict detected. see <https://www.pulumi.com/registry/packages/kubernetes/how-to-guides/managing-resources-with-server-side-apply/#handle-field-conflicts-on-existing-resources> for troubleshooting help
: Apply failed with 1 conflict: conflict with "pulumi-resource-kubernetes" using <http://rbac.authorization.k8s.io/v1|rbac.authorization.k8s.io/v1>: .<http://metadata.labels.app.kubernetes.io/instance|metadata.labels.app.kubernetes.io/instance>
kubernetes:<http://networking.k8s.io/v1:NetworkPolicy|networking.k8s.io/v1:NetworkPolicy> (ingress/ingress-nginx-admission):
warning: This resource contains Helm hooks that are not currently supported by Pulumi. The resource will be created, but any hooks will not be executed. Hooks support is tracked at <https://github.com/pulumi/pulumi-kubernetes/issues/555> -- This warning can be disabled by setting the PULUMI_K8S_SUPPRESS_HELM_HOOK_WARNINGS environment variable
kubernetes:<http://rbac.authorization.k8s.io/v1:ClusterRoleBinding|rbac.authorization.k8s.io/v1:ClusterRoleBinding> (ingress-nginx-admission):
warning: This resource contains Helm hooks that are not currently supported by Pulumi. The resource will be created, but any hooks will not be executed. Hooks support is tracked at <https://github.com/pulumi/pulumi-kubernetes/issues/555> -- This warning can be disabled by setting the PULUMI_K8S_SUPPRESS_HELM_HOOK_WARNINGS environment variable
kubernetes:<http://rbac.authorization.k8s.io/v1:ClusterRole|rbac.authorization.k8s.io/v1:ClusterRole> (elastic-operator-view):
error: resource elastic-operator-view was not successfully created by the Kubernetes API server : Server-Side Apply field conflict detected. see <https://www.pulumi.com/registry/packages/kubernetes/how-to-guides/managing-resources-with-server-side-apply/#handle-field-conflicts-on-existing-resources> for troubleshooting help
: Apply failed with 1 conflict: conflict with "pulumi-resource-kubernetes" using <http://rbac.authorization.k8s.io/v1|rbac.authorization.k8s.io/v1>: .<http://metadata.labels.app.kubernetes.io/instance|metadata.labels.app.kubernetes.io/instance>
stocky-restaurant-98004
11/28/2023, 4:05 PMstale-answer-34162
11/28/2023, 4:06 PMconst mongodbNamespace = new k8s.core.v1.Namespace(
'mongodb',
{ metadata: { name: 'mongodb' } },
{ provider: k8sProvider },
)
export const mongodbRelease = new helm.v3.Release(
'mongodb',
{
namespace: mongodbNamespace.metadata.name,
chart: 'mongodb',
repositoryOpts: { repo: '<https://charts.bitnami.com/bitnami>' },
version: '14.2.6',
atomic: true,
cleanupOnFail: true,
valueYamlFiles: [new FileAsset('charts/mongodb/values.yaml')],
},
{ provider: k8sProvider, dependsOn: [mongodbNamespace] },
)
quiet-jackal-96812
11/28/2023, 5:24 PMskip_await: true
in the helm.v3.Release object. Or increase the `
timeout
setting in that object.quiet-jackal-96812
11/28/2023, 6:01 PMstale-answer-34162
11/28/2023, 6:03 PMdamp-airline-38442
11/28/2023, 7:38 PMChart
rather than Release
. Some of the objects are cluster-scoped (cluster roles, admission webhooks, etc), and it seems that some objects weren't cleaned up,stale-answer-34162
11/28/2023, 7:41 PMpulumi up
runs fail due to "failure to create existing objects" which stops the whole process. I have been trying this for weeks now I do not know how to install charts with hooks successfully, it seems like it just does not work for a lot of the most common helm charts out there.damp-airline-38442
11/28/2023, 7:48 PMRelease
because it does offer higher compatibility, e.g. with hooks.damp-airline-38442
11/28/2023, 10:47 PMstale-answer-34162
11/28/2023, 10:50 PM// Install Datadog CRDs
const datadogCrds = new k8s.helm.v3.Chart(
'datadog-crds',
{
chart: 'datadog-crds',
fetchOpts: { repo: '<https://helm.datadoghq.com>' },
version: '1.2.0',
},
{ provider: k8sProvider },
)
export const datadogRelease = new helm.v3.Release(
'datadog',
{
namespace: datadogkNamespace.metadata.name,
chart: 'datadog-operator',
repositoryOpts: { repo: '<https://helm.datadoghq.com>' },
version: '1.3.0',
},
{ provider: k8sProvider, dependsOn: [datadogNamespace] },
)
// Install Datadog Agent
export const datadogAgent = new helm.v3.Release(
'datadog-agent',
{
namespace: 'datadog',
chart: 'datadog',
repositoryOpts: { repo: '<https://helm.datadoghq.com>' },
version: '3.49.3',
},
{ provider: k8sProvider },
)
const datadogAgentResources = new k8s.yaml.ConfigFile(
'datadog-agent-yaml',
{
file: 'charts/datadog-operator/datadogagent.yml',
},
{ dependsOn: datadogAgent },
)