I’m actually pretty confused as to how Pulumi Auto...
# automation-api
m
I’m actually pretty confused as to how Pulumi Automation API picks the version it requires. Locally I’m using the latest version, but the automation API frequently errors out citing another older version (i.e. aws)?
b
What language are you using? If you are using a compiled language, are you doing any pre-building and then pointing Pulumi at the binary via project Config?
m
I’m using Typescript - I’m not sure what you mean by “pointing Pulumi at the binary via project Config”. During docker build, I’m installing Pulumi cli via Dockerfile and specifying a version there, but it doesn’t seem to honor that. Also, I’m specifying plugins versions via Automation api’s
stack.workspace.installPlugin(name, version)
but I’m not sure why they require the versions they do (i.e. the version I’m specifying here is simply based on the error Pulumi throws when I run automation api)
b
Yea the binary in Config is related to pre-built Pulumi projects for golang or dotnet so disregard that. In those languages plug-in discovery happens at build time so if you are pre-building than you lose plug-in discovery. So running it without Automation API inside your container doesn't give you the same errors?
m
I’m not sure - I’ve only tried doing it via Automation API. I was just pointing out that the versions that are installed in my package.json seems to have no bearing on what’s required when I run Automation API. Is there a way to specify the versions for Pulumi and its plugins? For example, in my Dockerfile, this just installs the latest version:
RUN curl -fsSL <https://get.pulumi.com/> | sh;
Also, I’m not sure what plugin versions I’m supposed to specify for what version of Pulumi?
b
I'd have to dig in to the source and see how/if plug-in discovery differs in typescript. Or maybe someone from the Pulumi team could chime in. Sorry I can't be of more immediate help
m
Hey no worries - thanks for chiming in!