Скипетр: вызов питона в хуке пост-создания не использует профиль AWS, определенный в конфигурации скипетра - PullRequest
0 голосов
/ 01 июля 2019

Как мы можем настроить профиль учетных данных aws, который будет использоваться при вызове сценария python из ловушки

Я создал код python, который я хочу вызывать из ловушки пост-создания скипетра.При использовании «создания скипетра» код действительно выполняется, но для профиля aws по умолчанию, а не для профиля, установленного в config.yaml, затем шифрование корзины активируется на неправильной учетной записи AWS.

До сих пор япросмотрел документацию и ничего не нашел. При нативном запуске кода Python (без использования скипетра) он работает хорошо, если задана переменная окружения AWS_PROFILE

import boto3
from botocore.exceptions import ClientError
# update the cloudformation template to ensure proper encryption
BUCKET_NAME = "kiki-001"
s3 = boto3.client('s3')
response = s3.put_bucket_encryption(
    Bucket=BUCKET_NAME,
    ServerSideEncryptionConfiguration={
        'Rules' : [
            {
            'ApplyServerSideEncryptionByDefault': { 'SSEAlgorithm' : 'AES256'}
            }
        ]
    }
 )

выглядит файл конфигурации стека (base.yaml)вот так


template_path: base.json
parameters:
  BaseBucketName: eitstoragenoprod
hooks:
after_create:
   - !cmd "echo \"Hello World\""

стекгруппы config.yaml выглядит как

project_code: Foundation-Storage
region: eu-west-1
profile : storagenoprod-admin
template_bucket_name: storagenoprod-cloudformationsuploads
stack_tags : 
  InternalBudgetKey: "StorageNoProdFoundations"
  AssetsOwner: "ServiceOwner"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...