delightful-monkey-90700
02/23/2023, 9:38 PMcloudbuild.v1.Build()
fails because the provider is base64 encoding a UUID string:
error: waiting for completion / read state googleapi: Error 404: Requested entity was not found. (URL=<https://cloudbuild.googleapis.com/v1/projects/production/locations/us-west2/builds/NTBhNjY5MjMtZTJmYy00YTE0LWI5ZjQtNmEwZWVkNGIwMWIw>): polling operation status: googleapi: Error 404: Requested entity was not found.
-->
> echo 'NTBhNjY5MjMtZTJmYy00YTE0LWI5ZjQtNmEwZWVkNGIwMWIw' | base64 -d
50a66923-e2fc-4a14-b9f4-6a0eed4b01b0
-->
The real URL should have been <https://cloudbuild.googleapis.com/v1/projects/production/locations/us-west2/builds/50a66923-e2fc-4a14-b9f4-6a0eed4b01b0>
better-pencil-34948
02/24/2023, 5:34 PMpulumi:pulumi:StackReference (<gs://bucket/account>):
error: Preview failed: unknown stack "account"
rich-motorcycle-3089
02/27/2023, 7:10 PMnil
seem to cause Pulumi to ignore the health checks altogether (keep the existing values for the next revision). Attempting to give it empty objects causes Pulumi to overwrite the values, but with default implementations of the health check.
I’m using the Go SDKbest-summer-38252
02/28/2023, 7:18 PMError 400: Role roles/workflow.invoker is not supported for this resource., badRequest
Surely a service account can have a role as per the Pulumi example. The exmaple shows the format of the role being just the role name, roles/iam.serviceAccountUser, which seems consistent with the type info:
_The role that should be applied Only one gcp.organizations.IAMBinding
can be used per role. Note that custom roles must be of the format organizations/{{org_id}}/roles/{{role_id}}
._
Given I am not using custom roles, is roles/workflow.invoker
the correct format?clean-winter-59829
03/01/2023, 5:56 AMstocky-restaurant-98004
03/01/2023, 6:29 PMpurple-electrician-80135
03/02/2023, 12:54 AMpython inline source runtime error: 'Cluster' object is not callable
From this code:
def create_gks_autopilot_cluster(project_id, name, region, network_id, subnet_id):
gke_min_version = "1.25.6-gke.200"
default = gcp.serviceaccount.Account("default",
account_id="service-account-id",
display_name="Service Account")
# Define the GKE Autopilot cluster
gke_cluster = gcp.container.Cluster(name,
enable_autopilot=True,
ip_allocation_policy=container.ClusterIpAllocationPolicyArgs(
cluster_secondary_range_name="pods",
services_secondary_range_name="services",
),
location=region,
min_master_version=gke_min_version,
network=network_id,
release_channel={"channel": "STABLE"},
subnetwork=subnet_id,
project=project_id,)
return gke_cluster
Is there anything obvious I should be doing differently? .. this is running in a Jupyter notebook .. which has made configs unavailable (probably due being unable to find the .yaml file) but otherwise seems to work.many-knife-65312
03/03/2023, 11:41 PMmany-knife-65312
03/03/2023, 11:42 PM.get()
function to check for existing gcp resources, but i'm struggling with the unique provider ID, does anyone have docs or tips for using .get()
?gorgeous-architect-28903
03/09/2023, 12:14 PMCannot specify both name and name_prefix for a node_pool
— I’m definitely not setting a name. It happens even if I set Name
to nil
explicitly.limited-wolf-14679
03/09/2023, 11:51 PM# new kubeflow
kubeflow = gcp.container.Registry("kubeflow")
deployment = Deployment(
"kubeflow-deployment",
spec=DeploymentSpecArgs(
replicas=1,
selector=LabelSelectorArgs(
match_labels={
"app": "kubeflow",
},
),
template=PodTemplateSpecArgs(
metadata=ObjectMetaArgs(
labels={
"app": "kubeflow",
},
),
spec=PodSpecArgs(
containers=[
ContainerArgs(
name="kubeflow",
image="kubeflow",
env=[
EnvVarArgs(
name="NAMESPACE",
value="kubeflow",
),
],
command=["/bin/bash"],
args=[
"-c",
"/opt/deploy.sh",
]
)
]
)
)
),
metadata=ObjectMetaArgs(
labels={
"app": "kubeflow",
}
)
)
pulumi.export("name", deployment.metadata["name"])
# Allocate an IP to the Deployment.
app_name = "kubeflow"
app_labels = { "app": app_name }
frontend = Service(
app_name,
metadata={
"labels": deployment.spec["template"]["metadata"]["labels"],
},
spec={
"type": "LoadBalancer",
"ports": [{ "port": 80, "target_port": 80, "protocol": "TCP" }],
"selector": app_labels,
})
# When "done", this will print the public IP.
result = None
ingress = frontend.status.apply(lambda v: v["load_balancer"]["ingress"][0] if "load_balancer" in v else None)
if ingress is not None:
result = ingress.apply(lambda v: v["ip"] if "ip" in v else v["hostname"])
pulumi.export("ip", result)
I am getting the following error:
* the Kubernetes API server reported that "default/kubeflow-deployment-d5cb3c03" failed to fully initialize or become live: 'kubeflow-deployment-d5cb3c03' timed out waiting to be Ready
* [MinimumReplicasUnavailable] Deployment does not have minimum availability.
* [ProgressDeadlineExceeded] ReplicaSet "kubeflow-deployment-d5cb3c03-769cdfbd67" has timed out progressing.
* Minimum number of live Pods was not attained
* [Pod kubeflow-deployment-d5cb3c03-769cdfbd67-4lsjp]: containers with unready status: [kubeflow] -- [ImagePullBackOff] Back-off pulling image "kubeflow"victorious-florist-84818
03/14/2023, 9:49 AMbillions-hydrogen-34268
03/15/2023, 5:43 PMchilly-garage-80867
03/15/2023, 8:00 PMchilly-garage-80867
03/15/2023, 8:00 PMError 400: Max pods constraint on node pools for Autopilot clusters should be 32.
adorable-activity-71456
03/15/2023, 10:39 PMError 409: The operation was aborted.
after the pulumi up runs for about 20 minutes.stocky-restaurant-98004
03/16/2023, 6:23 PMmany-knife-65312
03/17/2023, 8:09 PMmany-knife-65312
03/17/2023, 8:43 PM.get()
function for a k8s resource errors out when it doesn't exist. what's the right way to handle this scenario so that the resource is created if it doesn't exist?gifted-cat-49297
03/20/2023, 12:57 PM.Statuses
it's returning cloudrun.ServiceStatusArrayOutput
but I have no idea what to do with this object.chilly-garage-80867
03/20/2023, 11:19 PMError: invocation of kubernetes:yaml:decode returned an error: failed to initialize discovery client: The gcp auth plugin has been removed.
Please use the "gke-gcloud-auth-plugin" kubectl/client-go credential plugin instead.
See <https://cloud.google.com/blog/products/containers-kubernetes/kubectl-auth-changes-in-gke> for further details
refined-engineer-9827
03/21/2023, 6:31 PMgcp:dns:ManagedZone (brinqa-net-private):
error: 1 error occurred:
* updating urn:pulumi:brinqa-prod::brinqa-net-private::gcp:dns/managedZone:ManagedZone::brinqa-net-private: 1 error occurred:
* Error updating ManagedZone "projects/brinqa-prod/managedZones/brinqa-net-private": googleapi: Error 400: The field 'entity.managedZone.id' cannot be modified., immutableField
Why would Pulumi be trying to update/change the id field of the zone? The diff shows it only trying to update privateVisibilityConfig.networks
refined-engineer-9827
03/21/2023, 7:01 PMrefined-engineer-9827
03/21/2023, 11:09 PMI0321 22:26:42.150801 2409260 log.go:75] Unmarshaling property for RPC[Provider[gcp, 0xc0015a85a0].Update(projects/brinqa-prod/managedZones/brinqa-net-private,urn:pulumi:brinqa-prod::brinqa-net-private::gcp:dns/managedZone:ManagedZone::brinqa-net-private).outputs]: managedZoneId={2.9610687372243656e+18}
managedZoneId is cast as an Int, which is then changed to scientific notation. the problem is 2.9610687372243656e+18
recasts as 2961068737224365600
, whereas the actual id for my zone is: 2961068737224365485
(not to mention there's a rounding error there, but that's another nit to pick).
If someone can point me to the right place to file said bug, I'll be more than happy to do it.adamant-leather-41068
03/22/2023, 12:01 AMgcp.compute.AttachedDisk
say:
Note: When usingHow do I do this? ie, where does this go?you must usegcp.compute.AttachedDisk
on thelifecycle.ignore_changes = ["attached_disk"]
resource that has the disks attached. Otherwise the two resources will fight for control of the attached disk block.gcp.compute.Instance
stocky-restaurant-98004
03/22/2023, 2:34 PMgifted-room-26715
03/23/2023, 5:55 AMmillions-train-91139
03/23/2023, 6:18 AMprehistoric-tailor-40857
03/27/2023, 4:40 AMbusy-lawyer-33856
03/29/2023, 5:34 AMbusy-lawyer-33856
03/29/2023, 5:34 AM