Hi, something really strange happening since aws 0...
# general
c
Hi, something really strange happening since aws 0.18.0 release, currently we use these versions:
Copy code
➜  pulumi (master) yarn list --pattern "@pulumi"
yarn list v1.15.2
├─ @pulumi/aws@0.17.1
├─ @pulumi/kubernetes@0.21.1
├─ @pulumi/pulumi@0.17.2
└─ @pulumi/random@0.5.1                        
➜  pulumi (master) pulumi version
v0.17.4
➜  pulumi (master) pulumi plugin ls
NAME        KIND      VERSION  SIZE    INSTALLED  LAST USED
aws         resource  0.18.0   158 MB  n/a        11 minutes ago
aws         resource  0.17.1   157 MB  n/a        1 week ago
kubernetes  resource  0.22.0   45 MB   n/a        11 minutes ago
kubernetes  resource  0.21.1   45 MB   n/a        1 week ago
random      resource  0.5.1    28 MB   n/a        1 week ago
when trying to update one of our stack, without any modification in the code, the preview dies with:
error: aws:elasticloadbalancingv2/listener:Listener resource 'dlv-dev-lbg-rtmp-listener' has a problem: default_action: should be a list
I found this comment: https://github.com/pulumi/pulumi-aws/issues/418#issuecomment-455917061 Based on that it was an issue in the past and it was solved, but looks like it's still exist somehow. I updated our stack to versions:
Copy code
➜  pulumi (master) yarn list --pattern "@pulumi"
yarn list v1.15.2
├─ @pulumi/aws@0.18.0
├─ @pulumi/kubernetes@0.22.0
├─ @pulumi/pulumi@0.17.4
└─ @pulumi/random@0.5.1
The "default_action" issue is now gone, but still, without any change in the code pulumi want to recreate a lot of our resources, including the eks cluster, which has a lot of dependent resource
changes after the library updates
here's the eks change for example, I don't understand why the vpcId was removed and why it has a new generated name, all of this without any code change
so currently we can't use the old version and we don't want to use the new version, because it would kill our environments (we should redeploy everything after the eks replacement)
s
Hi @cold-coat-35200, which version of the CLI are you using here?
c
v0.17.4
basically everything is the latest right now
the main issue I think, that since 0.17.2, the pulumi cli pulls the latest binary if it thinks that necessary, as you can see in my first message, the 0.18.0 version of the aws plugin was used "11 minutes ago", the 0.17.1 "1 week ago", so the cli using a newer binary version with an older aws library and looks like the newer binary does not handle backward compatibility correctly, it does not want me to rename the "default_action" to "default_actions", just to use a list, but of course I can't, because the older library does not expect a list type, just an object
I downgraded to 0.17.1 and the issue was gone, because it's not pulled the newer binary
s
So I think the issue here is the side-by-side provider versioning that we’ve seen @white-balloon-205 ?
f
c
it download the provider without any user interaction so I think it's a more serial issue, especially because a new release in the provider can break an older version library, which breaks the whole point of semantic versioning
@white-balloon-205, @stocky-spoon-28903 any idea why pulumi wants to update/replace a lot of resource without any code change, when the cli/plugins/libraries updated to the latest versions?
s
@cold-coat-35200 Can you post the output of
pulumi plugin ls
?
c
check my first message in this thread