bumpy-summer-9075
06/23/2021, 10:45 PMdependsOn
needed here?
export class CertManager extends pulumi.ComponentResource {
constructor(name: string, {}: CertManagerArgs, opts?: pulumi.ComponentResourceOptions) {
super('foo::bar::CertManager', name, {}, opts);
const certManagerNamespace = new k8s.core.v1.Namespace(
'cert-manager',
{metadata: {name: 'cert-manager'}},
{parent: this},
);
const helmChart = new k8s.helm.v3.Chart(
'cert-manager',
{
namespace: certManagerNamespace.metadata.name, // I thought this would create a dependency between the two resources
// ...
},
{parent: this, dependsOn: [certManagerNamespace]}, // Why is this needed?
);
}
}
little-cartoon-10569
06/23/2021, 10:47 PMbored-oyster-3147
06/23/2021, 10:55 PMbumpy-summer-9075
06/23/2021, 11:11 PMpulumi stack export
to make sure:
Without dependsOn:
"urn": "urn:pulumi:dev::infra-do-cluster::foo:bar:CertManager$kubernetes:<http://helm.sh/v3:Chart::cert-manager|helm.sh/v3:Chart::cert-manager>",
"custom": false,
"type": "kubernetes:<http://helm.sh/v3:Chart|helm.sh/v3:Chart>",
"parent": "urn:pulumi:dev::infra-do-cluster::foo:bar:CertManager::remoteinfra-cert-manager",
"aliases": [
"urn:pulumi:dev::infra-do-cluster::foo:bar:CertManager$kubernetes:<http://helm.sh/v2:Chart::cert-manager|helm.sh/v2:Chart::cert-manager>"
]
with:
"urn": "urn:pulumi:dev::infra-do-cluster::foo:bar:CertManager$kubernetes:<http://helm.sh/v3:Chart::cert-manager|helm.sh/v3:Chart::cert-manager>",
"custom": false,
"type": "kubernetes:<http://helm.sh/v3:Chart|helm.sh/v3:Chart>",
"parent": "urn:pulumi:dev::infra-do-cluster::foo:bar:CertManager::remoteinfra-cert-manager",
"dependencies": [
"urn:pulumi:dev::infra-do-cluster::foo:bar:CertManager$kubernetes:core/v1:Namespace::cert-manager"
],
"aliases": [
"urn:pulumi:dev::infra-do-cluster::foo:bar:CertManager$kubernetes:<http://helm.sh/v2:Chart::cert-manager|helm.sh/v2:Chart::cert-manager>"
]
little-cartoon-10569
06/23/2021, 11:15 PMbumpy-summer-9075
06/24/2021, 12:04 AMlittle-cartoon-10569
06/24/2021, 12:22 AMbumpy-summer-9075
06/24/2021, 12:27 AMlittle-cartoon-10569
06/24/2021, 12:29 AMpropertyDependencies
, which in my stack includes every property for a given resource. Most properties have dependency null
.bumpy-summer-9075
06/24/2021, 12:34 AMdependsOn
little-cartoon-10569
06/24/2021, 12:38 AM{
"urn": "urn:pulumi:preprod::pams::pams:aws:pams$iqa:aws:ec2:instance::preprod-web",
"custom": false,
"type": "iqa:aws:ec2:instance",
"parent": "urn:pulumi:preprod::pams::pams:aws:pams::preprod"
}
{
"urn": "urn:pulumi:preprod::pams::pams:aws:pams$iqa:aws:ec2:instance$aws:ec2/instance:Instance::preprod-web",
"type": "aws:ec2/instance:Instance",
...
propertyDependencies
bumpy-summer-9075
06/24/2021, 12:45 AM$ cat state.json | grep -i 'namespace::cert-manager'
"urn": "urn:pulumi:dev::infra-do-cluster::foo:kubernetes:CertManager$kubernetes:core/v1:Namespace::cert-manager",
little-cartoon-10569
06/24/2021, 12:47 AMbored-oyster-3147
06/24/2021, 12:59 AM