2013-04-06 2 views
2

Я использую Jenkins, Ant, Flex и Java для своего веб-приложения. В настоящее время я обновляю файл версии сборки в Flex src и фиксирую его перед запуском сборки Jenkins. Я хочу избежать этого ручного процесса и позволить скрипту сделать это для меня.Дженкинс фиксирует файл после успешной сборки

Содержание файла:

Сложение = 01_01_2013_10: 43
Release = 2,01

Question1: Я хочу, чтобы обновить этот файл содержимого и скомпилировать мой код, а затем совершить этот файл обратно в SVN , Так что SVN имеет последний номер версии сборки.

Как передать этот измененный файл в SVN. Было бы здорово, если фиксация произойдет после успешной сборки.

Вопрос2: Я хочу отправить электронное письмо всем разработчикам за час до начала сборки. «Пожалуйста, сделайте свои изменения. Сборка начнется через 1 час». Могу ли я установить задержку между электронной почтой и (фактический экспорт svn + ant).
или
Должен ли я планировать 2 задания в час друг от друга. Один для отправки электронной почты и один для сборки.

ответ

5

Вы можете использовать subclipse svn ant integration совершить измененные файлы в SVN включая проверку подлинности:

<svnSetting 
     svnkit="true" 
     username="bingo" 
     password="bongo" 
     id="svn.settings" 
    /> 
<svn refid="svn.settings"> 
    <commit file="your.file" /> 
</svn> 

Чтобы получить имя пользователя и пароль к файлу сборки у вас есть различные варианты. Можно было бы использовать parametrized build, где вы определяете имя пользователя и пароль как параметры сборки, которые могут быть оценены в файле сборки.

 username="${parameter.svn.username}" 
     password="${parameter.svn.password}" 

Второй вариант использует jenkins config file provider plugin. При этом вы также можете использовать параметры, например, для параметризованной сборки, но вы импортируете учетные данные из предоставленного конфигурационного файла, например. файл свойство может быть импортирован через

<property file="config.file" /> 

На самом деле вы можете также использовать ant's exec task для выполнения вашего подрывной фиксации файла.

Чтобы отправить электронное письмо за час до фактического строительства, вы должны установить два задания, которые запланированы на один час. Но я не думаю, что это хорошая практика, чтобы уведомить вас перед тем, как строить, подумайте о том, чтобы строить чаще, возможно, даже за фиксацию svn.

+0

Благодаря @Markus. В настоящее время мы не планируем использовать CI. Наша сборка проекта Flex занимает почти 15 минут, и большинство изменений - это простые изменения пользовательского интерфейса. В настоящее время мы делаем запланированную сборку в день. – user418836

+0

Было бы неплохо, если бы вы приняли ответ, если он действителен для вас. – Markus

+0

Как получить имя пользователя и пароль для svn.Я знаю, что jenkins хранит эти учетные данные для каждой работы. Как передать эти учетные данные для создания файла. – user418836

1

Вы также можете использовать плагин Post build Task (https://wiki.jenkins-ci.org/display/JENKINS/Post+build+task) для выполнения svn в качестве сценария оболочки (svn должен быть установлен и аутентифицирован из оболочки один раз для пользователя, который запускает Jenkins).

Затем svn commit работает как действие пост-сборки. Плагин имеет опцию (флажок) для запуска скрипта только в том случае, если предыдущие шаги сборки/выполнения были успешными.

Плагины также упоминается здесь: Execute Shell Script after post build in Jenkins

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