question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Providers option is not handled properly for multi-lang components

See original GitHub issue

Expected behavior

  1. In the pulumi-eks in python we set an explicit provider.
  2. The eks cluster comes up in the aws region that the explicit provider is specified: For example in ( us-west-2, or us-east-2, or etc…anything except us-east-1)

Current behavior

  1. In the pulumi-eks in python we set an explicit provider.
  2. The eks provider IGNORES the explicit provider and selects the aws:region that is in the pulumi config

Steps to reproduce

  1. plugins: pulumi plugin ls -p
aws         resource  3.32.0   248 MB  6 days ago    9 minutes ago
eks         resource  0.22.0   1.8 MB  22 hours ago  22 hours ago
kubernetes  resource  2.8.2    70 MB   1 week ago    17 hours ago
python      language           21 MB   1 week ago    2 seconds ago
  1. pulumi version
v2.22.0
  1. pulumi config
KEY          VALUE
aws:profile  default
aws:region   us-east-1
  1. Code in __main__.py
import pulumi
import pulumi_aws as aws
import pulumi_eks as eks

base_name = "demo"
# AWS named profile to use.
myprofile = aws.config.profile

# Create an AWS provider instance using the named profile creds
# and current region.
uswest2 = aws.Provider("uswest2",region="us-west-2", profile = myprofile)
# Define the AWS provider credential opts to configure the cluster's
# kubeconfig auth.

kubeconfig_opts = eks.KubeconfigOptionsArgs(profile_name=myprofile)
myekscluster = eks.Cluster(base_name,
                provider_credential_opts=kubeconfig_opts,
                opts=pulumi.ResourceOptions(provider=uswest2)
            )
  1. pulumi up view the details

    The provider for the resources shows up as:

    provider=urn:pulumi:dev::aws-eks-py::pulumi:providers:aws::default_3_32_0::04da6b54-80e4-46f7-96ec-b56ff0331ba9]
    

    instead of

    provider=urn:pulumi:dev::aws-eks-py::pulumi:providers:aws::uswest2
    
Do you want to perform this update? details
+ pulumi:pulumi:Stack: (create)
    [urn=urn:pulumi:dev::aws-eks-py::pulumi:pulumi:Stack::aws-eks-py-dev]
    + pulumi:providers:aws: (create)
        [urn=urn:pulumi:dev::aws-eks-py::pulumi:providers:aws::uswest2]
        profile                  : "pulumi-ce"
        region                   : "us-west-2"
        skipCredentialsValidation: "true"
        skipGetEc2Platforms      : "true"
        skipMetadataApiCheck     : "true"
        skipRegionValidation     : "true"
        version                  : "3.32.0"
    + eks:index:Cluster: (create)
        [urn=urn:pulumi:dev::aws-eks-py::eks:index:Cluster::demo]
        + eks:index:ServiceRole: (create)
            [urn=urn:pulumi:dev::aws-eks-py::eks:index:Cluster$eks:index:ServiceRole::demo-instanceRole]
        + eks:index:ServiceRole: (create)
            [urn=urn:pulumi:dev::aws-eks-py::eks:index:Cluster$eks:index:ServiceRole::demo-eksRole]
        + eks:index:RandomSuffix: (create)
            [urn=urn:pulumi:dev::aws-eks-py::eks:index:Cluster$eks:index:RandomSuffix::demo-cfnStackName]
            input: "demo"
            + aws:iam/role:Role: (create)
                [urn=urn:pulumi:dev::aws-eks-py::eks:index:Cluster$eks:index:ServiceRole$aws:iam/role:Role::demo-eksRole-role]
                [provider=urn:pulumi:dev::aws-eks-py::pulumi:providers:aws::default_3_32_0::04da6b54-80e4-46f7-96ec-b56ff0331ba9]
                assumeRolePolicy   : "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Action\":[\"sts:AssumeRole\"],\"Effect\":\"Allow\",\"Principal\":{\"Service\":[\"eks.amazonaws.com\"]}}]}"
                description        : "Allows EKS to manage clusters on your behalf."
                forceDetachPolicies: false
                maxSessionDuration : 3600
                name               : "demo-eksRole-role-38513e2"
                path               : "/"
            + aws:iam/role:Role: (create)
                [urn=urn:pulumi:dev::aws-eks-py::eks:index:Cluster$eks:index:ServiceRole$aws:iam/role:Role::demo-instanceRole-role]
                [provider=urn:pulumi:dev::aws-eks-py::pulumi:providers:aws::default_3_32_0::04da6b54-80e4-46f7-96ec-b56ff0331ba9]
                assumeRolePolicy   : "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Action\":[\"sts:AssumeRole\"],\"Effect\":\"Allow\",\"Principal\":{\"Service\":[\"ec2.amazonaws.com\"]}}]}"
                forceDetachPolicies: false
                maxSessionDuration : 3600
                name               : "demo-instanceRole-role-24fe241"
                path               : "/"
            + aws:iam/rolePolicyAttachment:RolePolicyAttachment: (create)
                [urn=urn:pulumi:dev::aws-eks-py::eks:index:Cluster$eks:index:ServiceRole$aws:iam/rolePolicyAttachment:RolePolicyAttachment::demo-eksRole-4b490823]
                [provider=urn:pulumi:dev::aws-eks-py::pulumi:providers:aws::default_3_32_0::04da6b54-80e4-46f7-96ec-b56ff0331ba9]
                policyArn : "arn:aws:iam::aws:policy/AmazonEKSClusterPolicy"
                role      : output<string>
            + aws:iam/rolePolicyAttachment:RolePolicyAttachment: (create)
                [urn=urn:pulumi:dev::aws-eks-py::eks:index:Cluster$eks:index:ServiceRole$aws:iam/rolePolicyAttachment:RolePolicyAttachment::demo-eksRole-90eb1c99]
                [provider=urn:pulumi:dev::aws-eks-py::pulumi:providers:aws::default_3_32_0::04da6b54-80e4-46f7-96ec-b56ff0331ba9]
                policyArn : "arn:aws:iam::aws:policy/AmazonEKSServicePolicy"
                role      : output<string>
            + aws:iam/rolePolicyAttachment:RolePolicyAttachment: (create)
                [urn=urn:pulumi:dev::aws-eks-py::eks:index:Cluster$eks:index:ServiceRole$aws:iam/rolePolicyAttachment:RolePolicyAttachment::demo-instanceRole-03516f97]
                [provider=urn:pulumi:dev::aws-eks-py::pulumi:providers:aws::default_3_32_0::04da6b54-80e4-46f7-96ec-b56ff0331ba9]
                policyArn : "arn:aws:iam::aws:policy/AmazonEKSWorkerNodePolicy"
                role      : output<string>
            + aws:iam/rolePolicyAttachment:RolePolicyAttachment: (create)
                [urn=urn:pulumi:dev::aws-eks-py::eks:index:Cluster$eks:index:ServiceRole$aws:iam/rolePolicyAttachment:RolePolicyAttachment::demo-instanceRole-e1b295bd]
                [provider=urn:pulumi:dev::aws-eks-py::pulumi:providers:aws::default_3_32_0::04da6b54-80e4-46f7-96ec-b56ff0331ba9]
                policyArn : "arn:aws:iam::aws:policy/AmazonEKS_CNI_Policy"
                role      : output<string>
            + aws:iam/rolePolicyAttachment:RolePolicyAttachment: (create)
                [urn=urn:pulumi:dev::aws-eks-py::eks:index:Cluster$eks:index:ServiceRole$aws:iam/rolePolicyAttachment:RolePolicyAttachment::demo-instanceRole-3eb088f2]
                [provider=urn:pulumi:dev::aws-eks-py::pulumi:providers:aws::default_3_32_0::04da6b54-80e4-46f7-96ec-b56ff0331ba9]
                policyArn : "arn:aws:iam::aws:policy/AmazonEC2ContainerRegistryReadOnly"
                role      : output<string>
        + aws:iam/instanceProfile:InstanceProfile: (create)
            [urn=urn:pulumi:dev::aws-eks-py::eks:index:Cluster$aws:iam/instanceProfile:InstanceProfile::demo-instanceProfile]
            [provider=urn:pulumi:dev::aws-eks-py::pulumi:providers:aws::default_3_32_0::04da6b54-80e4-46f7-96ec-b56ff0331ba9]
            name      : "demo-instanceProfile-31cad9e"
            path      : "/"
            role      : output<string>
        + aws:ec2/securityGroup:SecurityGroup: (create)
            [urn=urn:pulumi:dev::aws-eks-py::eks:index:Cluster$aws:ec2/securityGroup:SecurityGroup::demo-eksClusterSecurityGroup]
            [provider=urn:pulumi:dev::aws-eks-py::pulumi:providers:aws::default_3_32_0::04da6b54-80e4-46f7-96ec-b56ff0331ba9]
            description        : "Managed by Pulumi"
            name               : "demo-eksClusterSecurityGroup-52b2e02"
            revokeRulesOnDelete: true
            tags               : {
                Name      : "demo-eksClusterSecurityGroup"
            }
            vpcId              : "vpc-00fa4d7a"
        + aws:ec2/securityGroupRule:SecurityGroupRule: (create)
            [urn=urn:pulumi:dev::aws-eks-py::eks:index:Cluster$aws:ec2/securityGroupRule:SecurityGroupRule::demo-eksClusterInternetEgressRule]
            [provider=urn:pulumi:dev::aws-eks-py::pulumi:providers:aws::default_3_32_0::04da6b54-80e4-46f7-96ec-b56ff0331ba9]
            cidrBlocks     : [
                [0]: "0.0.0.0/0"
            ]
            description    : "Allow internet access."
            fromPort       : 0
            protocol       : "-1"
            securityGroupId: output<string>
            self           : false
            toPort         : 0
            type           : "egress"
        + aws:eks/cluster:Cluster: (create)
            [urn=urn:pulumi:dev::aws-eks-py::eks:index:Cluster$aws:eks/cluster:Cluster::demo-eksCluster]
            [provider=urn:pulumi:dev::aws-eks-py::pulumi:providers:aws::default_3_32_0::04da6b54-80e4-46f7-96ec-b56ff0331ba9]
            name      : "demo-eksCluster-f8d976c"
            roleArn   : output<string>
            tags      : {
                Name      : "demo-eksCluster"
            }
            vpcConfig : {
                endpointPrivateAccess: false
                endpointPublicAccess : true
                securityGroupIds     : [
                    [0]: output<string>
                ]
                subnetIds            : [
                    [0]: "subnet-3b742934"
                    [1]: "subnet-e0e2c9aa"
                    [2]: "subnet-ff910a98"
                    [3]: "subnet-857b1fd9"
                    [4]: "subnet-db4224f5"
                    [5]: "subnet-7b73dc45"
                ]
            }
        + pulumi:providers:kubernetes: (create)
            [urn=urn:pulumi:dev::aws-eks-py::eks:index:Cluster$pulumi:providers:kubernetes::demo-eks-k8s]
            kubeconfig: output<string>
            version   : "2.8.2"
        + eks:index:VpcCni: (create)
            [urn=urn:pulumi:dev::aws-eks-py::eks:index:Cluster$eks:index:VpcCni::demo-vpc-cni]
            kubeconfig: output<string>
        + aws:ec2/securityGroup:SecurityGroup: (create)
            [urn=urn:pulumi:dev::aws-eks-py::eks:index:Cluster$aws:ec2/securityGroup:SecurityGroup::demo-nodeSecurityGroup]
            [provider=urn:pulumi:dev::aws-eks-py::pulumi:providers:aws::default_3_32_0::04da6b54-80e4-46f7-96ec-b56ff0331ba9]
            description        : "Managed by Pulumi"
            name               : "demo-nodeSecurityGroup-b298d2e"
            revokeRulesOnDelete: true
            tags               : {
                Name                                         : "demo-nodeSecurityGroup"
                kubernetes.io/cluster/demo-eksCluster-f8d976c: "owned"
            }
            vpcId              : "vpc-00fa4d7a"
        + kubernetes:core/v1:ConfigMap: (create)
            [urn=urn:pulumi:dev::aws-eks-py::eks:index:Cluster$kubernetes:core/v1:ConfigMap::demo-nodeAccess]
            [provider=urn:pulumi:dev::aws-eks-py::eks:index:Cluster$pulumi:providers:kubernetes::demo-eks-k8s::04da6b54-80e4-46f7-96ec-b56ff0331ba9]
            apiVersion: "v1"
            data      : {
                mapRoles: output<string>
            }
            kind      : "ConfigMap"
            metadata  : {
                name     : "aws-auth"
                namespace: "kube-system"
            }
        + aws:ec2/securityGroupRule:SecurityGroupRule: (create)
            [urn=urn:pulumi:dev::aws-eks-py::eks:index:Cluster$aws:ec2/securityGroupRule:SecurityGroupRule::demo-eksExtApiServerClusterIngressRule]
            [provider=urn:pulumi:dev::aws-eks-py::pulumi:providers:aws::default_3_32_0::04da6b54-80e4-46f7-96ec-b56ff0331ba9]
            description          : "Allow pods running extension API servers on port 443 to receive communication from cluster control plane"
            fromPort             : 443
            protocol             : "tcp"
            securityGroupId      : output<string>
            sourceSecurityGroupId: output<string>
            toPort               : 443
            type                 : "ingress"
        + aws:ec2/securityGroupRule:SecurityGroupRule: (create)
            [urn=urn:pulumi:dev::aws-eks-py::eks:index:Cluster$aws:ec2/securityGroupRule:SecurityGroupRule::demo-eksNodeClusterIngressRule]
            [provider=urn:pulumi:dev::aws-eks-py::pulumi:providers:aws::default_3_32_0::04da6b54-80e4-46f7-96ec-b56ff0331ba9]
            description          : "Allow worker Kubelets and pods to receive communication from the cluster control plane"
            fromPort             : 1025
            protocol             : "tcp"
            securityGroupId      : output<string>
            sourceSecurityGroupId: output<string>
            toPort               : 65535
            type                 : "ingress"
        + aws:ec2/securityGroupRule:SecurityGroupRule: (create)
            [urn=urn:pulumi:dev::aws-eks-py::eks:index:Cluster$aws:ec2/securityGroupRule:SecurityGroupRule::demo-eksClusterIngressRule]
            [provider=urn:pulumi:dev::aws-eks-py::pulumi:providers:aws::default_3_32_0::04da6b54-80e4-46f7-96ec-b56ff0331ba9]
            description          : "Allow pods to communicate with the cluster API Server"
            fromPort             : 443
            protocol             : "tcp"
            securityGroupId      : output<string>
            sourceSecurityGroupId: output<string>
            toPort               : 443
            type                 : "ingress"
        + aws:ec2/securityGroupRule:SecurityGroupRule: (create)
            [urn=urn:pulumi:dev::aws-eks-py::eks:index:Cluster$aws:ec2/securityGroupRule:SecurityGroupRule::demo-eksNodeIngressRule]
            [provider=urn:pulumi:dev::aws-eks-py::pulumi:providers:aws::default_3_32_0::04da6b54-80e4-46f7-96ec-b56ff0331ba9]
            description    : "Allow nodes to communicate with each other"
            fromPort       : 0
            protocol       : "-1"
            securityGroupId: output<string>
            self           : true
            toPort         : 0
            type           : "ingress"
        + aws:ec2/securityGroupRule:SecurityGroupRule: (create)
            [urn=urn:pulumi:dev::aws-eks-py::eks:index:Cluster$aws:ec2/securityGroupRule:SecurityGroupRule::demo-eksNodeInternetEgressRule]
            [provider=urn:pulumi:dev::aws-eks-py::pulumi:providers:aws::default_3_32_0::04da6b54-80e4-46f7-96ec-b56ff0331ba9]
            cidrBlocks     : [
                [0]: "0.0.0.0/0"
            ]
            description    : "Allow internet access."
            fromPort       : 0
            protocol       : "-1"
            securityGroupId: output<string>
            self           : false
            toPort         : 0
            type           : "egress"
        + aws:ec2/launchConfiguration:LaunchConfiguration: (create)
            [urn=urn:pulumi:dev::aws-eks-py::eks:index:Cluster$aws:ec2/launchConfiguration:LaunchConfiguration::demo-nodeLaunchConfiguration]
            [provider=urn:pulumi:dev::aws-eks-py::pulumi:providers:aws::default_3_32_0::04da6b54-80e4-46f7-96ec-b56ff0331ba9]
            associatePublicIpAddress: true
            enableMonitoring        : true
            iamInstanceProfile      : output<string>
            imageId                 : output<string>
            instanceType            : "t2.medium"
            name                    : "demo-nodeLaunchConfiguration-581dcd2"
            rootBlockDevice         : {
                deleteOnTermination: true
                volumeSize         : 20
                volumeType         : "gp2"
            }
            securityGroups          : [
                [0]: output<string>
            ]
            userData                : output<string>
        + aws:cloudformation/stack:Stack: (create)
            [urn=urn:pulumi:dev::aws-eks-py::eks:index:Cluster$aws:cloudformation/stack:Stack::demo-nodes]
            [provider=urn:pulumi:dev::aws-eks-py::pulumi:providers:aws::default_3_32_0::04da6b54-80e4-46f7-96ec-b56ff0331ba9]
            name        : output<string>
            tags        : {
                Name      : "demo-nodes"
            }
            templateBody: output<string>
        + pulumi:providers:kubernetes: (create)
            [urn=urn:pulumi:dev::aws-eks-py::eks:index:Cluster$pulumi:providers:kubernetes::demo-provider]
            kubeconfig: output<string>
            version   : "2.8.2"

Context (Environment)

A similar code block in TS works, it uses the explicit provider correctly:

import * as eks from "@pulumi/eks";
import * as aws from "@pulumi/aws";

const uswest2 = new aws.Provider("uswest2", { region: "us-west-2" });
const basename= "demo"; 
// Create an EKS cluster with the default configuration.
 const cluster = new eks.Cluster(`${basename}`, {
    providerCredentialOpts: {profileName: aws.config.profile}  
}, {provider: uswest2});

// Export the cluster's name.
export const cluster_name = cluster.eksCluster.name;
// Export the cluster's kubeconfig.
export const kubeconfig = cluster.kubeconfig;

The details of the code above after pulumi up shows that the provider is our explicit provider: provider=urn:pulumi:dev::aws-eks-ts::pulumi:providers:aws::uswest2

+ pulumi:pulumi:Stack: (create)
    [urn=urn:pulumi:dev::aws-eks-ts::pulumi:pulumi:Stack::aws-eks-ts-dev]
    + eks:index:Cluster: (create)
        [urn=urn:pulumi:dev::aws-eks-ts::eks:index:Cluster::demo]
        + eks:index:ServiceRole: (create)
            [urn=urn:pulumi:dev::aws-eks-ts::eks:index:Cluster$eks:index:ServiceRole::demo-instanceRole]
    + pulumi:providers:aws: (create)
        [urn=urn:pulumi:dev::aws-eks-ts::pulumi:providers:aws::uswest2]
        region : "us-west-2"
        version: "3.5.0"
        + eks:index:ServiceRole: (create)
            [urn=urn:pulumi:dev::aws-eks-ts::eks:index:Cluster$eks:index:ServiceRole::demo-eksRole]
            + aws:iam/role:Role: (create)
                [urn=urn:pulumi:dev::aws-eks-ts::eks:index:Cluster$eks:index:ServiceRole$aws:iam/role:Role::demo-instanceRole-role]
                [provider=urn:pulumi:dev::aws-eks-ts::pulumi:providers:aws::uswest2::04da6b54-80e4-46f7-96ec-b56ff0331ba9]
                assumeRolePolicy   : "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Action\":[\"sts:AssumeRole\"],\"Effect\":\"Allow\",\"Principal\":{\"Service\":[\"ec2.amazonaws.com\"]}}]}"
                forceDetachPolicies: false
                maxSessionDuration : 3600
                name               : "demo-instanceRole-role-cb968a3"
                path               : "/"
            + aws:iam/role:Role: (create)
                [urn=urn:pulumi:dev::aws-eks-ts::eks:index:Cluster$eks:index:ServiceRole$aws:iam/role:Role::demo-eksRole-role]
                [provider=urn:pulumi:dev::aws-eks-ts::pulumi:providers:aws::uswest2::04da6b54-80e4-46f7-96ec-b56ff0331ba9]
                assumeRolePolicy   : "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Action\":[\"sts:AssumeRole\"],\"Effect\":\"Allow\",\"Principal\":{\"Service\":[\"eks.amazonaws.com\"]}}]}"
                description        : "Allows EKS to manage clusters on your behalf."
                forceDetachPolicies: false
                maxSessionDuration : 3600
                name               : "demo-eksRole-role-d3093bc"
                path               : "/"
        + pulumi-nodejs:dynamic:Resource: (create)
            [urn=urn:pulumi:dev::aws-eks-ts::eks:index:Cluster$pulumi-nodejs:dynamic:Resource::demo-cfnStackName]
            input     : "demo"
            + aws:iam/rolePolicyAttachment:RolePolicyAttachment: (create)
                [urn=urn:pulumi:dev::aws-eks-ts::eks:index:Cluster$eks:index:ServiceRole$aws:iam/rolePolicyAttachment:RolePolicyAttachment::demo-instanceRole-e1b295bd]
                [provider=urn:pulumi:dev::aws-eks-ts::pulumi:providers:aws::uswest2::04da6b54-80e4-46f7-96ec-b56ff0331ba9]
                policyArn : "arn:aws:iam::aws:policy/AmazonEKS_CNI_Policy"
                role      : output<string>
            + aws:iam/rolePolicyAttachment:RolePolicyAttachment: (create)
                [urn=urn:pulumi:dev::aws-eks-ts::eks:index:Cluster$eks:index:ServiceRole$aws:iam/rolePolicyAttachment:RolePolicyAttachment::demo-instanceRole-3eb088f2]
                [provider=urn:pulumi:dev::aws-eks-ts::pulumi:providers:aws::uswest2::04da6b54-80e4-46f7-96ec-b56ff0331ba9]
                policyArn : "arn:aws:iam::aws:policy/AmazonEC2ContainerRegistryReadOnly"
                role      : output<string>
            + aws:iam/rolePolicyAttachment:RolePolicyAttachment: (create)
                [urn=urn:pulumi:dev::aws-eks-ts::eks:index:Cluster$eks:index:ServiceRole$aws:iam/rolePolicyAttachment:RolePolicyAttachment::demo-instanceRole-03516f97]
                [provider=urn:pulumi:dev::aws-eks-ts::pulumi:providers:aws::uswest2::04da6b54-80e4-46f7-96ec-b56ff0331ba9]
                policyArn : "arn:aws:iam::aws:policy/AmazonEKSWorkerNodePolicy"
                role      : output<string>
            + aws:iam/rolePolicyAttachment:RolePolicyAttachment: (create)
                [urn=urn:pulumi:dev::aws-eks-ts::eks:index:Cluster$eks:index:ServiceRole$aws:iam/rolePolicyAttachment:RolePolicyAttachment::demo-eksRole-4b490823]
                [provider=urn:pulumi:dev::aws-eks-ts::pulumi:providers:aws::uswest2::04da6b54-80e4-46f7-96ec-b56ff0331ba9]
                policyArn : "arn:aws:iam::aws:policy/AmazonEKSClusterPolicy"
                role      : output<string>
            + aws:iam/rolePolicyAttachment:RolePolicyAttachment: (create)
                [urn=urn:pulumi:dev::aws-eks-ts::eks:index:Cluster$eks:index:ServiceRole$aws:iam/rolePolicyAttachment:RolePolicyAttachment::demo-eksRole-90eb1c99]
                [provider=urn:pulumi:dev::aws-eks-ts::pulumi:providers:aws::uswest2::04da6b54-80e4-46f7-96ec-b56ff0331ba9]
                ..
                ..

The package.json

{
    "name": "aws-eks-ts",
    "devDependencies": {
        "@types/node": "^10.0.0"
    },
    "dependencies": {
        "@pulumi/aws": "^3.0.0",
        "@pulumi/awsx": "^0.22.0",
        "@pulumi/eks": "^0.20.0",
        "@pulumi/kubernetes": "^2.6.1",
        "@pulumi/pulumi": "^2.0.0"
    }
}

Affected feature

Issue Analytics

  • State:closed
  • Created 3 years ago
  • Reactions:1
  • Comments:6 (6 by maintainers)

github_iconTop GitHub Comments

3reactions
lblackstonecommented, Apr 16, 2021

Ok, all the fixes have merged, so we just need to bump the pulumi/pulumi dependency to fix this for EKS.

0reactions
lblackstonecommented, Apr 16, 2021

I was able to get this working locally for Python, and am in the process of getting the various fixes merged in.

This involves three major pieces:

  1. Extend the RegisterResourceRequest protobuf to include a providers field (merged)
  2. Handle the new providers field in the engine’s ResourceMonitor (merged)
  3. Update all of the pulumi SDKs to resolve providers references for remote resources and populate the providers field on RegisterResource requests with the resolved references. (merged)
Read more comments on GitHub >

github_iconTop Results From Across the Web

Introducing Pulumi Packages and multi-language ...
Pulumi Packages connect the full power of the cloud and the creativity of the Pulumi Community to the Pulumi Cloud Engineering Platform.
Read more >
How to approach multi-language Gatsby apps
We will first configure a translation module (i.e. how to load the documents, what's the fallback language, how to handle translation requests) ...
Read more >
Vue i18n: Building a multi-language app with locale switcher
So, our application is now multilingual, but there's no option to actually switch between locales via the user interface.
Read more >
9 Multi Language Support - Guided Learning
If your operating systems does not support ZIP files you can use one of the following software providers: Winzip, Winrar, izip. exporting. Your...
Read more >
Support different languages and cultures
Android resolves language- and culture-specific resources based on the system locale setting. You can provide support for different locales ...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found