early-family-43281
12/13/2018, 7:38 PMearly-family-43281
12/13/2018, 7:39 PMearly-family-43281
12/13/2018, 7:40 PMearly-family-43281
12/13/2018, 7:40 PMearly-family-43281
12/13/2018, 7:40 PMearly-family-43281
12/13/2018, 7:40 PMearly-family-43281
12/13/2018, 7:41 PMearly-family-43281
12/13/2018, 7:41 PMglamorous-printer-66548
12/13/2018, 10:30 PM"@pulumi/kubernetes": "0.18.0",
or "@pulumi/pulumi": "0.16.7",
https://github.com/pulumi/pulumi/issues/2170#issuecomment-447143452miniature-potato-84713
12/14/2018, 12:07 AMminiature-potato-84713
12/14/2018, 12:15 AMAccept-Language
header or a saved cookie, I think weāll have to do some URL rewriting (to ensure transparency and SEO). For example, foo.bla/site.html
should forward to foo.bla/en/site.html
by default, or whatever language the header/cookie contained.
Solutions
1. Client-side Javascript ācloakingā etc are off the table, I think. Doesnāt play well with SEO and is annoying for clients.
2. Use AWS S3 and web-page redirect: https://docs.aws.amazon.com/AmazonS3/latest/dev/how-to-page-redirect.html
3. Host the site in a Kubernetes container with nginx/apache.
Of 2. and 3. I am leaning towards 2. because itās probably easiest to set up for now. Both could be implemented using PÅ«lumi, and that would be the right way to go about it.
What are your thoughts, and does Pūlumi handle the redirect configurations for 2.?billowy-businessperson-60383
12/14/2018, 8:12 AMfaint-motherboard-95438
12/14/2018, 1:41 PMbetter-rainbow-14549
12/14/2018, 5:59 PMbetter-rainbow-14549
12/14/2018, 8:39 PMearly-musician-41645
12/14/2018, 11:24 PMearly-musician-41645
12/14/2018, 11:26 PMearly-musician-41645
12/14/2018, 11:26 PMbillowy-television-23506
12/15/2018, 11:24 PMimportant-carpenter-15282
12/16/2018, 4:49 AMpulumi up
and this is magical.abundant-airplane-93796
12/16/2018, 9:21 PMfaint-motherboard-95438
12/17/2018, 5:44 PMgcp
Cluster
resource is unable to scale up an already existing cluster by changing its nodeCount
or maybe Iām missing something ?
Type Name Status Info
pulumi:pulumi:Stack REDACTED
āā REDACTED:Cluster REDACTED-cluster
+- āā gcp:container:Cluster REDACTED **replacing failed** [diff: ~initialNodeCount]; 1 error
Diagnostics:
gcp:container:Cluster (REDACTED):
error: Plan apply failed: googleapi: Error 409: Already exists: projects/REDACTED/zones/REDACTED/clusters/REDACTED-cluster., alreadyExists
delightful-waiter-79687
12/17/2018, 8:32 PMUSPs of Pulumi- How different is Pulumi from JenkinsX?
shy-finland-77998
12/18/2018, 7:41 PMhello world
Just discovered Pulumi. Holy wow. LOVE the value offer here. Going to be playing with this tonight.
Iāve got a use case where weāre going to start spinning up an env. per pull request in Github. So going to try out that use case using Pulumi.
šcolossal-thailand-53880
12/19/2018, 2:39 AMaverage-summer-30977
12/19/2018, 7:12 AMgifted-island-55702
12/19/2018, 9:12 AM~/.kube
config but rather configuration exported for example from GKE cluster:faint-motherboard-95438
12/19/2018, 10:56 AMjolly-lifeguard-22556
12/19/2018, 2:16 PMgifted-island-55702
12/19/2018, 3:03 PMexport const k8sConfig = pulumi.
all([ k8sCluster.name, k8sCluster.endpoint, k8sCluster.masterAuth ]).
apply(([ name, endpoint, auth ]) => {
const context = `${gcp.config.project}_${gcp.config.zone}_${name}`;
return `apiVersion: v1...
with:
export const k8sConfig = pulumi.
all([ k8sCluster.project, k8sCluster.region, k8sCluster.zone, k8sCluster.name, k8sCluster.endpoint, k8sCluster.masterAuth ]).
apply(([ project, region, zone, name, endpoint, auth ]) => {
const location = region || zone
const context = `${project}_${location}_${name}`
return `apiVersion: v1...
gifted-island-55702
12/19/2018, 3:03 PMexport const k8sConfig = pulumi.
all([ k8sCluster.name, k8sCluster.endpoint, k8sCluster.masterAuth ]).
apply(([ name, endpoint, auth ]) => {
const context = `${gcp.config.project}_${gcp.config.zone}_${name}`;
return `apiVersion: v1...
with:
export const k8sConfig = pulumi.
all([ k8sCluster.project, k8sCluster.region, k8sCluster.zone, k8sCluster.name, k8sCluster.endpoint, k8sCluster.masterAuth ]).
apply(([ project, region, zone, name, endpoint, auth ]) => {
const location = region || zone
const context = `${project}_${location}_${name}`
return `apiVersion: v1...
k8sCluster
object instead of project config. When I did that, pulumi was finding changes to be deployed every time I run pulumi update
even though there were no changes in my code. When I added some debug logging I found out that when it checks the updates, project
variable doesnāt contain a plain string value but instead an object (itās printed in my debug output as [object ...]
). Is it a bug?white-balloon-205
12/19/2018, 11:15 PM[object Object]
it typically means you are attempting to toString an Output
. Instead, you need to use output.apply(x => x.toString())
or similar. For example to log the Output you would want to do output.apply(console.log)
. The value of these `Output`s is not known unti the deployment has happened, which is why these are wrapped inside Output
instead of just string values. The pulumi.all
and pulumi.apply
above are part of taking all of these Outputs and using them to construct a new string value for the kubeconfig.gifted-island-55702
12/19/2018, 11:21 PMexport const k8sConfig = pulumi.
all([ cluster.project, cluster.name, cluster.endpoint, cluster.masterAuth, cluster.region, cluster.zone ]).
apply(([ project, name, endpoint, auth, region, zone ]) => {
const location = region || zone
const context = `${project}_${location}_${name}`
return `apiVersion: v1
clusters:
.....
region
or zone
depending on the actual cluster (regional vs zonal) to create the context name. In my case the cluster is zonal, and region
is undefined. In this scenario whenever I run pulumi update
it always shows there is a change in my k8s provider due to a change in kubeconfig even though there was no change in the code.region
(which in my scenario always has undefined
value) then it work correctly