Назад | Перейти на главную страницу

Скачивание отдельных файлов с GitHub в шаблоне CloudFormation

В моем шаблоне CloudFormation я хотел бы загрузить текстовые файлы с GitHub. Когда я просматриваю загруженные файлы, это закодированный / зашифрованный контент, а не простой текст. Не похоже, что это должно иметь значение, но у меня есть файлы как в публичных, так и в частных репозиториях.

Вот код из моего шаблона CloudFormation, который загружает файлы:

           "AWS::CloudFormation::Authentication" : {
                "GithubAccessCredentials" : {
                    "type" : "basic",
                    "username" : { "Ref" : "GitHubLogin" },
                    "password" : { "Ref" : "GitHubPassword" },
                }
            },
            "AWS::CloudFormation::Init" : {
                "configSets" : {
                    "orderedConfig" : [ "yumRepoConfig", "mainConfig" ]
                },
                "yumRepoConfig" : {
                    "files" : {
                        "/etc/yum.repos.d/puppetlabs.repo" : {
                            "source"  : "https://github.com/MyOrganization/Repo/raw/master/provisioning/yum-repo/puppetlabs.repo",
                            "mode"    : "000644",
                            "owner"   : "root",
                            "group"   : "root",
                            "authentication" : "GithubAccessCredentials"
                        },
                        "/tmp/README" : {
                            "source"  : "https://github.com/puppetlabs/puppetlabs-apache/raw/master/README.md",
                            "mode"    : "000644",
                            "owner"   : "root",
                            "group"   : "root"
                        }
                    }
                },
            [...]

Я могу загрузить файлы с помощью curl:

curl -u 'myGithubLogin' -L -O https://github.com/MyOrganization/Repo/raw/master/provisioning/yum-repo/puppetlabs.repo

curl -L -O https://github.com/puppetlabs/puppetlabs-apache/raw/master/README.md

Что требуется для загрузки действующей копии файлов? Кроме того, какая команда на самом деле используется cloudFormation для загрузки файлов (curl, wget, ...)?

Возникла проблема с cfn-init, которая не позволяла правильно расширять загрузки, отправленные с Content-Encoding: gzip. Обновление до последней версии cfn-init устранило проблему.

пожалуйста, посмотрите эту ветку: https://forums.aws.amazon.com/thread.jspa?threadID=111736&tstart=0