Utilisation des variables d'environnement - AWS OpsWorks

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Utilisation des variables d'environnement

Important

Le AWS OpsWorks Stacks service a atteint sa fin de vie le 26 mai 2024 et a été désactivé tant pour les nouveaux clients que pour les clients existants. Nous recommandons vivement aux clients de migrer leurs charges de travail vers d'autres solutions dès que possible. Si vous avez des questions sur la migration, contactez l' AWS Support équipe sur AWS Re:Post ou via le AWS Support Premium.

Note

Les recommandations de cette rubrique s'appliquent à Chef 11.10 et versions antérieures. Pour obtenir les variables d'environnement dans Chef 12 et versions plus récentes, vous devez utiliser le conteneur de données de l'application. Pour plus d'informations, consultez AWS OpsWorks Data Bag Reference et App Data Bag (aws_opsworks_app).

Lorsque vous spécifiez des variables d'environnement pour une application, AWS OpsWorks Stacks ajoute les définitions des variables aux deployattributs de l'application.

Les couches personnalisées peuvent utiliser une recette pour récupérer une valeur de variable grâce à une syntaxe nœud standard, et la stocker sous une forme accessible par les applications de la couche.

Vous devez implémenter une recette personnalisée qui obtient les valeurs des variables d'environnement à partir des attributs deploy de l'instance. La recette peut alors stocker les données sur l'instance sous une forme accessible par l'application, telle qu'un fichier YAML. Les définitions des variables environnement d'une application sont stockées dans les attributs deploy, dans les variables environment_variables de l'environnement. L'exemple suivant montre l'emplacement de ces attributs pour une application nommée simplephpapp, à l'aide de JSON pour représenter la structure des attributs.

{ ... "ssh_users": { }, "deploy": { "simplephpapp": { "application": "simplephpapp", "application_type": "php", "environment_variables": { "USER_ID": "168424", "USER_KEY": "somepassword" }, ... } }

Une recette peut obtenir les valeurs variables en utilisant un syntaxe nœud standard. L'exemple suivant montre comment obtenir la valeur USER_ID depuis le JSON précédent et le placer dans le journal Chef.

Chef::Log.info("USER_ID: #{node[:deploy]['simplephpapp'][:environment_variables][:USER_ID]}")

Pour une description plus détaillée de la façon de récupérer les informations depuis le JSON de configuration et de déploiement de pile, et le stocker sur l'instance, consultez Transmission de données aux applications.