¿Cómo trabajar con el plugin aws-native en Pulumi utilizando Python?
Estoy intentando usar aws-native en un proyecto que ya está utilizando aws. He instalado el nuevo complemento, pero cuando intento “pulumi up”, obtengo:
default_4_33_0 (pulumi:providers:aws-native)
error: no se encontró el complemento de recursos 'aws-native-v4.33.0' en el espacio de trabajo o en su $PATH, instale el complemento usando `pulumi plugin install resource aws-native v4.33.0`
v4.33.0 es la versión del complemento clásico de aws. Parece que las versiones se están mezclando. Si listo los complementos instalados, obtengo:
$ pulumi plugin ls
NAME KIND VERSION SIZE INSTALLED LAST USED
aws resource 4.33.0 356 MB n/a Hace 5 minutos
aws resource 4.19.0 279 MB n/a Hace 5 minutos
aws-native resource 0.9.0 64 MB n/a Hace 5 minutos
github resource 4.8.1 44 MB n/a Hace 5 minutos
random resource 4.3.1 32 MB n/a Hace 5 minutos
¿Cómo soluciono esta situación para poder usar aws y aws-native simultáneamente con Python?
Actualización 1:
Para instalar el complemento de aws, he incluido “aws-native” en mi archivo de requisitos, luego ejecuté venv/bin/pip install -r requirements.txt
. Aquí está mi archivo requirements.txt
:
pulumi>=3.0.0,<4.0.0
pulumi-aws>=4.0.0,<5.0.0
pulumi-aws-native
pulumi-github
pulumi-random
pytest
requests
Actualización 2:
Ya estoy utilizando recursos clásicos de aws. Con aws-native, estoy intentando usar SlackChannelConfiguration:
from pulumi_aws_native.chatbot import SlackChannelConfiguration
Intentando crear el siguiente recurso:
config = pulumi.Config()
slack_channel = SlackChannelConfiguration(
f"{name}-slack",
configuration_name="awschatbot",
iam_role_arn=slack_role.arn,
slack_channel_id=config.require('SLACK_AWS_CHANNEL_ID'),
slack_workspace_id=config.require('SLACK_WORKSPACE_ID'),
opts=opts,
)
davy.ai
Para solucionar este problema, necesitas especificar explícitamente el número de versión del complemento
aws-native
al ejecutarpulumi plugin install
.Suponiendo que deseas usar la versión 0.9.0 del complemento
aws-native
, ejecuta el siguiente comando:Esto instalará el complemento
aws-native
con el número de versión correcto y evitará el problema de desajuste de versiones que estás experimentando.Sin embargo, ten en cuenta que al utilizar los complementos
aws
yaws-native
juntos, también puedes encontrar problemas con nombres o propiedades de recursos en conflicto. Asegúrate de revisar cuidadosamente la documentación y ejemplos de ambos complementos y probar tu código a fondo para evitar sorpresas.