bulky-match-1583
05/20/2020, 5:39 PMsparse-state-34229
05/20/2020, 5:39 PMtype(project.project_id) == Output
sparse-state-34229
05/20/2020, 5:39 PMbulky-match-1583
05/20/2020, 5:39 PMsparse-state-34229
05/20/2020, 5:39 PMsparse-state-34229
05/20/2020, 5:39 PMOutput.apply()
sparse-state-34229
05/20/2020, 5:40 PMsparse-state-34229
05/20/2020, 5:41 PMOutput.all([project.project_id]).apply(lambda x: gcp.projects.get_project(filter=f"project_id:{x[0][0]} AND …"))
sparse-state-34229
05/20/2020, 5:41 PMsparse-state-34229
05/20/2020, 5:43 PMx[0][0]
- the argument passed to .apply()
is a list (but you may only need x[0]
)sparse-state-34229
05/20/2020, 5:44 PMsparse-state-34229
05/20/2020, 5:45 PMsparse-state-34229
05/20/2020, 5:45 PMdef user_data(self):
user_data_tpl = Template(BASE_USERDATA_TPL)
return Output.all([self.vpc.id]).apply(
lambda x: user_data_tpl.render(
dns_domain=self.vpc.dns_domain,
vpc_cidr=self.vpc.cidr_block,
vpc_id=x[0][0],
vpc_name=self.vpc.name,
).encode("utf-8")
)
bulky-match-1583
05/20/2020, 5:45 PMsparse-state-34229
05/20/2020, 5:46 PMsparse-state-34229
05/20/2020, 5:46 PMchilly-hairdresser-56259
05/21/2020, 4:02 AMhundreds-dog-95098
05/21/2020, 4:41 PMfrom pulumi_aws import ec2
vpcs = ec2.get_vpcs(tags={
"key": "value",
})
when trying to get all vpc by tags then getting exception.
File “/usr/local/bin/pulumi-language-python-exec”, line 85, in <module>
loop.run_until_complete(coro)
File “/usr/local/Cellar/python/3.7.7/Frameworks/Python.framework/Versions/3.7/lib/python3.7/asyncio/base_events.py”, line 587, in run_until_complete
return future.result()
File “/usr/local/lib/python3.7/site-packages/pulumi/runtime/stack.py”, line 81, in run_in_stack
await run_pulumi_func(lambda: Stack(func))
File “/usr/local/lib/python3.7/site-packages/pulumi/runtime/stack.py”, line 50, in run_pulumi_func
await RPC_MANAGER.rpcs.pop()
File “/usr/local/lib/python3.7/site-packages/pulumi/runtime/stack.py”, line 34, in run_pulumi_func
func()
File “/usr/local/lib/python3.7/site-packages/pulumi/runtime/stack.py”, line 81, in <lambda>
await run_pulumi_func(lambda: Stack(func))
File “/usr/local/lib/python3.7/site-packages/pulumi/runtime/stack.py”, line 114, in init
func()
File “/usr/local/bin/pulumi-language-python-exec”, line 84, in <lambda>
coro = pulumi.runtime.run_in_stack(lambda: runpy.run_path(args.PROGRAM, run_name=‘__main__‘))
File “/usr/local/Cellar/python/3.7.7/Frameworks/Python.framework/Versions/3.7/lib/python3.7/runpy.py”, line 280, in run_path
run_name, mod_spec, pkg_name).copy()
File “/usr/local/Cellar/python/3.7.7/Frameworks/Python.framework/Versions/3.7/lib/python3.7/runpy.py”, line 85, in _run_code
exec(code, run_globals)
File “./__main__.py”, line 15, in <module>
tags=tags
File “./vpc.py”, line 108, in create_network
cidr_block = allocate_new_cidr(base_cidr)
File “./utils.py”, line 19, in allocate_new_cidr
“project”: “cspaas”,
File “/usr/local/lib/python3.7/site-packages/pulumi_aws/ec2/get_vpcs.py”, line 88, in get_vpcs
ret = pulumi.runtime.invoke(‘aws:ec2/getVpcs:getVpcs’, args, opts=opts).value
File “/usr/local/lib/python3.7/site-packages/pulumi/runtime/invoke.py”, line 125, in invoke
return InvokeResult(_sync_await(asyncio.ensure_future(do_rpc())))
File “/usr/local/lib/python3.7/site-packages/pulumi/runtime/sync_await.py”, line 95, in _sync_await
return fut.result()
File “/usr/local/lib/python3.7/site-packages/pulumi/runtime/invoke.py”, line 122, in do_rpc
raise exn
File “/usr/local/lib/python3.7/site-packages/pulumi/runtime/rpc_manager.py”, line 67, in rpc_wrapper
result = await rpc
File “/usr/local/lib/python3.7/site-packages/pulumi/runtime/invoke.py”, line 106, in do_invoke
resp = await asyncio.get_event_loop().run_in_executor(None, do_invoke)
File “/usr/local/Cellar/python/3.7.7/Frameworks/Python.framework/Versions/3.7/lib/python3.7/concurrent/futures/thread.py”, line 57, in run
result = self.fn(*self.args, **self.kwargs)
File “/usr/local/lib/python3.7/site-packages/pulumi/runtime/invoke.py”, line 104, in do_invoke
raise Exception(details)
Exception: invocation of aws:ec2/getVpcs:getVpcs returned an error: invoking aws:ec2/getVpcs:getVpcs: no matching VPC foundsparse-state-34229
05/21/2020, 4:42 PMsparse-state-34229
05/21/2020, 4:42 PMhundreds-dog-95098
05/21/2020, 4:46 PMsparse-state-34229
05/21/2020, 4:47 PMsparse-state-34229
05/21/2020, 4:48 PMhundreds-dog-95098
05/21/2020, 4:50 PMsparse-state-34229
05/21/2020, 9:19 PMsparse-state-34229
05/21/2020, 9:19 PMgentle-diamond-70147
05/21/2020, 9:22 PM<resource>.get()
calls cannot be caught and handled with a try/catch. There is an issue open regarding this at https://github.com/pulumi/pulumi/issues/3364 if you want to subscribe to it or add additional use case information.sparse-state-34229
05/21/2020, 9:28 PMsparse-state-34229
05/21/2020, 9:31 PMbulky-match-1583
05/24/2020, 1:14 PMrandom_id = random.RandomString(
resource_name='project-unique-id',
length=8,
lower=True,
upper=False,
special=False,
min_numeric=4
)
is there a way to extract the string value from random_id.result?bulky-match-1583
05/24/2020, 1:14 PMrandom_id = random.RandomString(
resource_name='project-unique-id',
length=8,
lower=True,
upper=False,
special=False,
min_numeric=4
)
is there a way to extract the string value from random_id.result?sparse-state-34229
05/24/2020, 3:56 PMOutput
?bulky-match-1583
05/24/2020, 3:59 PMsparse-state-34229
05/24/2020, 4:05 PMOutput.all()
bulky-match-1583
05/24/2020, 4:08 PMsparse-state-34229
05/24/2020, 4:11 PMreturn Output.all([self.vpc.id]).apply(
lambda x: user_data_tpl.render(
dns_domain=self.vpc.dns_domain,
vpc_cidr=self.vpc.cidr_block,
vpc_id=x[0][0],
vpc_name=self.vpc.name,
).encode("utf-8")
)
x[0][0]
bulky-match-1583
05/24/2020, 4:12 PMsparse-state-34229
05/24/2020, 4:15 PMbulky-match-1583
05/24/2020, 4:17 PMsparse-state-34229
05/24/2020, 4:17 PMbulky-match-1583
05/24/2020, 4:19 PMsubnet = gcp.compute.get_subnetwork(
name='some-subnet-that-exists',
project=my-proejct-id,
region=gcp_region
)
if subnet exists i can verify with
if subnet.self_link:
return subnet.ip_cidr_range
sparse-state-34229
05/24/2020, 4:22 PMbulky-match-1583
05/24/2020, 4:23 PMsubnet = pulumi.Output.all([config.project_id]).apply(
lambda x: gcp.compute.get_subnetwork(
name=f'{x[0][0]}-subnet',
project=x[0][0],
region=config.gcp_region
)
)
if subnet.self_link:
return subnet.ip_cidr_range
if subnet.self_link always true even if it doesn't existsparse-state-34229
05/24/2020, 4:23 PMsubnet.self_link
is bool?bulky-match-1583
05/24/2020, 4:24 PMsparse-state-34229
05/24/2020, 4:24 PMNone
bulky-match-1583
05/24/2020, 4:25 PMsparse-state-34229
05/24/2020, 4:25 PMsubnet
?bulky-match-1583
05/24/2020, 4:26 PM