stocky-spoon-28903
12/15/2019, 1:28 PMearly-intern-90238
12/15/2019, 10:06 PMdamp-jelly-5493
12/16/2019, 8:12 AMconst k8s = new digitalocean.KubernetesCluster('Configure k8s', stackConfig.k8s);
const k8sConfig = k8s.kubeConfigs[0].rawConfig;
const k8sProvider = new kubernetes.Provider('Get k8s provider', {
kubeconfig: k8sConfig,
});
the k8sProvider
then is set to provider
options any time i make an additional k8s call, eg
const helmServiceAccount = new kubernetes.core.v1.ServiceAccount(
'Helm RBAC service account',
{
apiVersion: 'v1',
kind: 'ServiceAccount',
metadata: {
name: 'tiller',
namespace: 'kube-system',
},
},
{
provider: k8sProvider,
},
);
as i said, this all works fine for the first 7 days then breaks because the kubeconfig has expired within digitaloceandamp-jelly-5493
12/16/2019, 11:42 AMpulumi update
- id been playing around with pulumi refresh
but doesnt work for <reasons> https://github.com/pulumi/pulumi/issues/2710cuddly-leather-18640
12/16/2019, 1:04 PMapply
but can’t figure out what to do with it.cuddly-leather-18640
12/16/2019, 1:04 PMrequireSecret
as an argument to a cloud spec? I see that in https://github.com/pulumi/examples/blob/fdf37ddecedb10dcdfa77362f8ece49c52011caa/aws-stackreference-architecture/database/src/index.ts#L30 nothing special is going on but when I follow that pattern like:
const config = new Config();
const dbPassword = config.requireSecret('dbPassword');
// stuff....
const postgresUser = new gcp.sql.User('master', {
name: dbUser,
password: dbPassword, // this line errors out. I've also tried dbPassword.get()
instance: postgresDB.name,
project: project
});
I get the following error:
index.ts(187,3): error TS2322: Type 'Output<string>' is not assignable to type 'string | Promise<string> | OutputInstance<string> | undefined'.
Type 'Output<string>' is not assignable to type 'OutputInstance<string>'.
Types of property 'apply' are incompatible.
Type '{ <U>(func: (t: string) => Promise<U>): import("/Users/paymahn/qwil/[secret]/pulumi/infra/node_modules/@pulumi/pulumi/output").Output<U>; <U>(func: (t: string) => import("/Users/paymahn/qwil/[secret]/pulumi/infra/node_modules/@pulumi/pulumi/output").OutputInstance<U>): import("/Users/paymahn/qwil/[secret]/pulumi/infra/nod...' is not assignable to type '{ <U>(func: (t: string) => Promise<U>): import("/Users/paymahn/qwil/[secret]/pulumi/node_modules/@pulumi/pulumi/output").Output<U>; <U>(func: (t: string) => import("/Users/paymahn/qwil/[secret]/pulumi/node_modules/@pulumi/pulumi/output").OutputInstance<U>): import("/Users/paymahn/qwil/[secret]/pulumi/node_modules/@pulumi/...'.
Type 'import("/Users/paymahn/qwil/[secret]/pulumi/infra/node_modules/@pulumi/pulumi/output").Output<any>' is not assignable to type 'import("/Users/paymahn/qwil/[secret]/pulumi/node_modules/@pulumi/pulumi/output").Output<any>'.
Type 'OutputInstance<any>' is not assignable to type 'Output<any>'.
Type 'OutputInstance<any>' is not assignable to type 'OutputInstance<any> & LiftedObject<any, string>'.
Type 'import("/Users/paymahn/qwil/[secret]/pulumi/infra/node_modules/@pulumi/pulumi/output").OutputInstance<any>' is not assignable to type 'import("/Users/paymahn/qwil/[secret]/pulumi/node_modules/@pulumi/pulumi/output").OutputInstance<any>'.
Types of property 'apply' are incompatible.
Type '{ <U>(func: (t: any) => Promise<U>): import("/Users/paymahn/qwil/[secret]/pulumi/infra/node_modules/@pulumi/pulumi/output").Output<U>; <U>(func: (t: any) => import("/Users/paymahn/qwil/[secret]/pulumi/infra/node_modules/@pulumi/pulumi/output").OutputInstance<U>): import("/Users/paymahn/qwil/[secret]/pulumi/infra/node_modu...' is not assignable to type '{ <U>(func: (t: any) => Promise<U>): import("/Users/paymahn/qwil/[secret]/pulumi/node_modules/@pulumi/pulumi/output").Output<U>; <U>(func: (t: any) => import("/Users/paymahn/qwil/[secret]/pulumi/node_modules/@pulumi/pulumi/output").OutputInstance<U>): import("/Users/paymahn/qwil/[secret]/pulumi/node_modules/@pulumi/pulumi...'.
Type 'import("/Users/paymahn/qwil/[secret]/pulumi/infra/node_modules/@pulumi/pulumi/output").Output<any>' is not assignable to type 'import("/Users/paymahn/qwil/[secret]/pulumi/node_modules/@pulumi/pulumi/output").Output<any>'.
Type 'OutputInstance<any>' is not assignable to type 'Output<any>'.
Type 'OutputInstance<any>' is not assignable to type 'OutputInstance<any> & LiftedObject<any, string>'.
Type 'OutputInstance<any>' is not assignable to type 'LiftedObject<any, string>'.
Index signature is missing in type 'OutputInstance<any>'.
I’ve tried calling .get()
on dbPassword
but that results in another error of
Error: Cannot call '.get' during update or preview.
To manipulate the value of this Output, use '.apply' instead.
cuddly-leather-18640
12/16/2019, 1:25 PMconst appImage = new docker.Image("ledgerImage", {
imageName: '<http://us.gcr.io/qwil-build/ledger|us.gcr.io/qwil-build/ledger>',
build: "../../",
});
When I run pulumi preview
and look at the output in app.pulumi.com I see the line Successfully pushed to docker
in the Diagnostic Log view. Where did pulumi push this image? When I visit my companies gcr registry I don’t see any new images - the latest image that was uploaded is from 2 days ago.elegant-twilight-2745
12/16/2019, 4:21 PMrhythmic-finland-36256
12/16/2019, 4:52 PMadamant-postman-86832
12/16/2019, 5:05 PMorange-policeman-59119
12/16/2019, 6:10 PMapiVersion: extensions/v1beta1
resources that we want to change to, e.g. apiVersion: <http://networking.k8s.io/v1|networking.k8s.io/v1>
. My experience with Helm is that it kinda fucks up here, because for e.g.: a deployment named foo
, we can't tell Helm "don't change anything with this resource, just update Tiller with what the new API version is because k8s allows us to access a deployment via both extensions/v1beta1 and apps/v1". The result is we have to rename everything to foo-v1
, experiencing some downtime because Helm will tear down the old deployment, stand up the new deployment, and often other stuff is also infected with the name via Helm templating so the service, the ingress, etc all get replaced and/or destroyed and recreated as the new name.
Is there a way to make Pulumi just... accept that these resources are now <http://networking.k8s.io/v1|networking.k8s.io/v1>
or apps/v1
? That is, no update/replace/etc needed.nice-airport-15607
12/16/2019, 8:24 PMAssertionError: Failure: Decoder hit an error
error when trying to pulumi up
?full-dress-10026
12/16/2019, 11:01 PMacoustic-toothbrush-71581
12/16/2019, 11:24 PM❯ tree
.
├── program
│ └── index.ts
└── stack
├── Pulumi.my-stack.yaml
└── Pulumi.yaml
is this feasible?wet-sunset-4939
12/17/2019, 4:17 AMnice-cat-91582
12/17/2019, 12:10 PMpulumi up
it builds the image and pushes it to the container registry, even if there were no changes. This takes a fair bit of time, and requires that I have Docker running even if I'm not actively doing any Docker work. Anyone know of a way to have it only do the docker work if changes were actually made to the docker files?wet-sunset-4939
12/17/2019, 3:09 PMprehistoric-account-60014
12/17/2019, 3:35 PMyarn add @pulumi/cli
?stocky-island-3676
12/17/2019, 3:40 PMacoustic-florist-12628
12/17/2019, 5:43 PMpulumi login azblob://<container>
method as well as pulumi login -c <account>.<http://blob.core.usgovcloudapi.net|blob.core.usgovcloudapi.net>
. However, azblob://<container> always defaults to use <account>.<http://blob.core.windows.net|blob.core.windows.net>
, and whenever I do "pulumi login -c", I am asked for an access token, and any access key or sas token I use results in authorization errors. Am I doing something wrong, or is this just not possible at the moment?ambitious-helmet-24352
12/17/2019, 5:58 PMerror: unable to load schema information from the API server: Get <https://35.227.104.48/openapi/v2?timeout=32s>: dial tcp 35.227.104.48:443: i/o timeout
little-tailor-59400
12/17/2019, 6:28 PMlittle-tailor-59400
12/17/2019, 6:30 PMlittle-tailor-59400
12/17/2019, 6:33 PMambitious-helmet-24352
12/17/2019, 6:35 PMambitious-helmet-24352
12/17/2019, 6:35 PMlittle-tailor-59400
12/17/2019, 6:36 PMlittle-tailor-59400
12/17/2019, 6:36 PMhandsome-truck-95168
12/17/2019, 8:00 PMdefault
values in the Pulumi.yaml
? They seem to be not working but I imagine I'm doing it wrong.boundless-appointment-60129
12/17/2019, 11:52 PMconst vpcName = `unique-vpc-2334`;
const vpcArgs = {
cidrBlock: projectCidrBlock,
enableDnsHostnames: true,
enableDnsSupport: true,
tags: {
Name: vpcName,
},
};
const vpc = new aws.ec2.Vpc(
vpcName,
vpcArgs,
providerOpts,
);
It doesn't matter what I change the name to I always end up getting the same error.
error: Duplicate resource URN 'urn:pulumi:ned-pulumi::ned-pulumi::aws:ec2/vpc:Vpc::unique-vpc-2334'; try giving it a unique name
I've also tried changing the provider, deleting and recreating the stack with a new name. I have a feeling that it may be caching values/running twice with the same values. Let me know if anyone has resolved this issue, thanks