Каков наилучший способ обработки аутентификации при развертывании приложений ядра приложений из Hudson / Jenkins? - PullRequest
1 голос
/ 11 января 2012

Я могу без проблем развернуть свой проект App Engine из командной строки, используя appcfg.sh.Я бы хотел, чтобы это работало в Jenkins, но проблема в том, что утилита развертывания запрашивает мой пароль Google.Я могу передать электронное письмо с помощью параметра --email, но невозможно ввести пароль (не рекомендуется использовать --passin b / c, это не то, для чего оно).

Лучший вариантSenario, о котором я могу думать, это то, что когда кто-то запускает задание Jenkins, он запрашивает имя пользователя / пароль и запускает развертывание, используя это.

Но я бы согласился на любой способ заставить его работать на этом этапе.Благодарю.

1 Ответ

4 голосов
/ 11 января 2012

Если вы не возражаете, чтобы ваш пароль отображался в виде открытого текста, это то, что я использую в своем сборочном XML для автоматического развертывания приложения из Jenkins:

<target name="update" 
        depends="enhance" 
        description="Uploads the application, including indexes">

        <java classname="com.google.appengine.tools.admin.AppCfg" 
              inputstring="<YOUR_PASSWORD>" 
              classpath="${appengine.sdk}\lib\appengine-tools-api.jar">

              <classpath>
                  <fileset dir="${war.dir}/WEB-INF/lib" includes="**/*.jar" />
              </classpath>
              <arg value="--email=<YOUR_EMAIL>" />
              <arg value="--passin" />
              <arg value="update" />
              <arg value="war" />
        </java>
</target>

Где appengine.sdk указывает на вашу папку GAE, т.е. <property name="appengine.sdk" location="D:\libs\appengine-java-sdk-1.5.1"/>.

...