【Jenkins】TFSのGitリポジトリをJnekinsでビルドする

(TFS Team Foundation Server Git Build Jenkins)

もはや今更感しかないですが、GitレポジトリのビルドをJenkinsのJOBで行います。
今回は、TFSのGitレポジトリを対象をしてビルドを行います。

GitHubではなく、TFSのGit

いま時点(2016/05/29)では、Jnekinsは2.6がリリースされていますが、今回はあえて1.6で解説します。
Jnekins2.6では、必要なプラグインが初期状態でインストールされていますが、1.6ではユーザが追加する必要があります。

環境

実行環境 Windows
Jenkins 1.651.2
TFS Team Foundation Server 2013 Update2

Jenkinsは、1.6をインストールした素の状態です。

手順

  1. JenkinsにGitPluginをインストール
  2. 認証情報の設定
  3. プロジェクトのソース管理の設定
  4. ビルドの設定
続きを読む

【JobScheduler格闘戦記】祝日カレンダーの作成

(JobScheduler Run Time No Working Days Include Files)
Windows標準のタスクスケジューラでも、実行する曜日を指定することはもちろん可能です。平日のみ実行させたいのであれば、月~金のチェックを入れて実行時刻を指定するだけです。

しかし、祝日の設定は出来ません。しかも、日本の場合は結構祝日が増えるので、祝日カレンダーの設計は必須事項

「JobSchedulerでカレンダーを持つことが出来て、祝日もバッチリですっ!」って思ってたらなんか出来ない、出来るけど想像したのと違う

f:id:orzmakoto:20160403185653p:plain
"Run Time" -> "No Working Days"の設定で実行しない日(祝日)を指定すればその日は実行しない。
これ全部の"Run Time"や"Scheduler"に記載するのはメンテナンス性を考えて論外。

続きを読む

【JobScheduler格闘戦記】JOEを使って単独JOBを作成

(JobScheduler new job create JOE Windows)
まず、躓いたのがJOEを使っての新規JOB作成方法。
超、第一歩ですね。いろいろな解説サイトでは、XMLを書いて所定のフォルダに保存ってのはありました。

<?xml version="1.0" encoding="ISO-8859-1"?>
<job >
  <script language="shell">
    <![CDATA[
#!/bin/sh
LANG=C
echo "$SCHEDULER_JOB_NAME is running"
echo "now - `date`"
exit $?
    ]]>
  </script>
</job>

以下のディレクトリ、ファイル名で保存する

ディレクトリ C:\ProgramData\sos-berlin.com\jobscheduler\#インストール時に設定した名前#\config\live
ファイル名 now.job.xml

小規模なのJOB構成であればXMLを書いてもいいが、今回はJP1を使いたいと思うほどの規模を想定しているのでGUIの支援ツール(JOE)がないとキツイ

で、JOEでどーするの?
出来ないの? 探し方がよくないの?

結果:調べ方が下手、英語が読めない、よく読むとちゃんと書いている

続きを読む

JobScheduler格闘戦記

(JobScheduler Job)
Winodws上でJOB実行といえば、タスクスケジューラが手軽で便利
とりあえず、バッチファイルでも作って定期実行には簡単でよいのですが、JOBの数が多くなってきたり依存関係ガー、祝日ガーとか一定規模を超えると非常に厳しくなります。
※というかなって、死にかけた

予算があれば、JP1!
それか使ったことはないけど、Microsoft System Center Orchestratorもいいかなっと思いましたが今回は、これも使ったことはないがOSSのJobSchedulerでJOB制御を行うことにしました。

www.atmarkit.co.jp
これを読む限りは、やりたいことは全部できそう
(これでイケマス!と断言したが記事読んだ程度、何とかなるだろ感覚)

やりたいこと

  1. JOBの単体実行
  2. 依存関係の設定
  3. 休日、祝日の定義
  4. JOBエラー時にエラーJOBからの再実行、スキップ
  5. JOBフローの可視化

などなど、JP1を使えば簡単に...ってことばかりです。

今回のシステムでは、Windowsです。
Windows環境にJobSchedulerを構築して、WindowsServerに対してJOB実行を行います。

日本語の情報が少なく苦労したので、日々格闘の戦記を残します。

【JobScheduler格闘戦記】JOEを使って単独JOBを作成 - orzmakoto’s blog
【JobScheduler格闘戦記】祝日カレンダーの作成 - orzmakoto’s blog