Как я могу заменить некоторые строки в облачной информации AWS - PullRequest
0 голосов
/ 04 июля 2019

У меня есть шаблон облачной информации, где у меня есть один параметр, переданный из предыдущего шага со значением, подобным этому

 "test1.example.org"

 "example.org"

 "org"

Теперь я хочу удалить часть .org из этого параметра и получить

test1.example

example

Также может быть много субдоменов, например

test1.test2.test3.test4.example.org

Мне просто нужно удалить .org с конца

Ответы [ 3 ]

0 голосов
/ 04 июля 2019

Если я правильно понимаю ваш запрос, один из способов сделать это - использовать функцию Fn :: Split, чтобы разделить строку по двоеточию и использовать элемент массива, который вы хотите использовать.

0 голосов
/ 06 июля 2019

Я не думаю, что вы можете использовать какой-либо из существующих методов облачной информации s для этой цели.Вы можете использовать образец шаблона облачной информации, предоставляемый AWS.Вот пример шаблона Работа со строками , который предоставляет функции утилиты преобразования строк.Вы можете легко расширить метод python на любую нужную вам операцию.

CLI Команда для создания стеков (после их локальной загрузки)

aws cloudformation create-stack --stack-name testString --template-body file://string.yaml  --profile your_profile --capabilities CAPABILITY_IAM
arn:aws:cloudformation:us-east-1:1234:stack/testString/ec34d8c0-9fc9-11e9-a0ed-0aa1af63e98c

aws cloudformation create-stack --stack-name testStringExample --template-body file://string_example.yaml  --profile your_profile --capabilities CAPABILITY_AUTO_EXPAND
arn:aws:cloudformation:us-east-1:1234:stack/testStringExample/2047d720-9fca-11e9-ab63-12989ba5c57e

Создает s3ведро и добавляет различные преобразованные теги.Команда для проверки.

aws s3api get-bucket-tagging --bucket teststringexample-s3bucket-1dgnx05oslymu --profile your_profile --output json

{
    "TagSet": [
        {
            "Value": "ring",
            "Key": "ShortenLeft"
        },
        {
            "Value": "his is a test input strin",
            "Key": "Strip"
        },
        {
            "Value": "THIS IS A TEST INPUT STRING",
            "Key": "Upper"
        },
        {
            "Value": "This_is_a_test_input_string",
            "Key": "Replace"
        },
        {
            "Value": "testStringExample",
            "Key": "aws:cloudformation:stack-name"
        },
        {
            "Value": "this is a test input string",
            "Key": "Lower"
        },
        {
            "Value": "This is a test input string",
            "Key": "Capitalize"
        },
        {
            "Value": "This Is A Test Input String",
            "Key": "Title"
        },
        {
            "Value": "S3Bucket",
            "Key": "aws:cloudformation:logical-id"
        },
        {
            "Value": "This",
            "Key": "ShortenRight"
        }
    ]
}
0 голосов
/ 04 июля 2019

В шаблоне CloudFormation нет возможности манипулирования строками.

В худшем случае, вы можете создать Лямбда-поддерживаемый пользовательский ресурс , который может преобразовывать параметры.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...