2015-03-09 3 views
3

Я использую Github в качестве хранилища для пакета, который я создаю. На данный момент у меня есть настройка файла .travis.yml, которая помогает автоматически тестировать код, когда он вставляется. В конце концов, я хотел бы развернуть пакет до службы, например PyPI), но язык и менеджер пакетов не имеют значения для вопроса) ,Хранение конфиденциальной информации в рабочих потоках git/travis

Reading the documentation shows that its relatively easy to do this automatically:

Для минимальной конфигурации, все, что вам нужно сделать, это добавить следующий к вашему .travis.yml:

deploy: 
    provider: pypi 
    user: "Your username" 
    password: "Your password" 

для относительно небольшой заминки, что исключением Мне нужно было бы ввести имя пользователя и пароль для PyPI в публично видимый файл yaml.

Очевидно, что это плохая практика, и я уверен, что есть способы обойти это через токены или что-то в этом роде, но googling показывает lots of suggestionsalong the same lines «введите здесь свой пароль».

Я что-то упустил? Или люди просто кладут свои ключи аутентификации в общедоступные файлы?

ответ

2

Если вас search GitHub for password .pypirc или .travis.yml, вы найдете на самом деле много сценариев для генерирующих файлового .pypirc (к примеру).

Основная идея заключается в том, чтобы версии .travis.ymlшаблона и использовать процесс Deploy для замены значения заполнителей (например, пароль: @ пароль @) с фактическим паролем, который должен не храниться в мерзавца репо.

+0

Да, я понимаю. Но как этот пароль заполняется? Я имею в виду, если я делаю автоматический push для Github '->' TravisCI '->' PyPI, где я храню или как я могу ввести пароль? –

+0

@LegoStormtroopr хороший вопрос. Я в основном вижу http://docs.travis-ci.com/user/environment-variables/#Secure-Variables, что не совсем то же, что и мой ответ. – VonC

Смежные вопросы