Is it normal for upgrading a resource plugin to re...
# general
o
Is it normal for upgrading a resource plugin to require both the old and new versions to be installed side-by-side? The following are short transcripts from a CI system log:
Copy code
> @pulumi/kubernetes@v0.23.1 install /builds/[redacted-repo]/pulumi/node_modules/@pulumi/kubernetes
> node scripts/install-pulumi-plugin.js resource kubernetes v0.23.1

[resource plugin kubernetes-0.23.1] installing

...

Previewing update ([redacted-stack-name]):
error: could not load plugin for kubernetes provider 'urn:pulumi:[redacted-stack-name]::vendor-sync-pipeline::pulumi:providers:kubernetes::default': no resource plugin 'kubernetes-v0.22.0' found in the workspace or on your $PATH, install the plugin using `pulumi plugin install resource kubernetes v0.22.0`
It looks like it wants both the old version 0.22 and the new version 0.23.1 installed to use the stack. Is that right?
c
yes.
o
is there a way to do this automatically in the CI system?
c
you want stuff related to an update processed with the previous version of the plugin, to be processed with that version of the plugin.
o
hm
Will I be able to remove
pulumi plugin install resource kubernetes v0.22.0
from my CI job after this goes up to production then, because the stack will now use 0.23.1?
c
when your last update uses that version, yes.
o
ok
It would be a wonderful feature if like with
pulumi refresh/up/destroy
we could install missing provider plugins! 🙂 Then we would not need to do a two-step deployment to bump versions, modifying our CI script and package.json, then reverting the change to the CI script in a second deployment
w
It would be a wonderful feature if like with
pulumi refresh/up/destroy
we could install missing provider plugins!
Yes - we are moving the direction of automatically faulting in plugins if needed. Which command did you run here? And which
pulumi
version are you running? I thought we had actually already made changes recently to start doing this for
updates
.
o
Maybe it's because I did an
up --refresh
?
Copy code
pulumi --non-interactive up --refresh --config-file "${CONFIG_FILE}" --stack "$STACK"
w
Ahh - that could well be - I think we do not do this auto-discovery on
refresh
yet. I've opened https://github.com/pulumi/pulumi/issues/2799 to look into this.
o
I like that plugins are faulted in like memory pages 😂