HEXA BLOG
ヘキサブログ
プログラム
Jenkins のリモートビルド
私事で恐縮ですが、先日、ダーツの合同ハウストーナメント(複数の店舗で開催されるダーツの試合)に参加させてもらって、なんと優勝してきました!

まさかの展開で驚いているシラッチです。(いぇーい😄)
前回のブログで、大阪開発ではダーツが流行っていることをお伝えして、『DartsDrive(仮)』の進捗報告をさせて頂いていましたが…サスペンドしております!😅
…何故か?
会社に家庭用ダーツボード「DARTSLIVE-200S」が導入されたからです!(爆)

おかげで練習が捗ります!!右肘を痛めるくらいに…(あかん)
さて、というわけで(?)ダーツはコレくらいにしておいて、今回は開発業務の工程を自動化の一部を紹介したいと思います。
(というか自分の備忘録デス…😂)
担当のプロジェクトで、CI として Jenkins を導入しているのですが、
開発のワークフローを構築してく中で「Jenkinsに登録されているジョブを、Jenkinsの外部の環境から実行したい」ということがありました。
Jenkinsに触るのが久しぶりだったのでいろいろ調べていたのですが
正攻法では Jenkins CLI を使う方法、
その他に wget や curl を使用して、リモートからのビルドを実現されている記事を見つけました。
ただ…回り回って、動かしたい環境の都合で Python2.7 でスクリプトを作成することにしました。😅
まずはJenkinsのトップページから、「Jenkinsの管理」を選択します。
管理画面から「ユーザーの管理」を選択、ログインを想定しているユーザーのページを開き、「設定」から「ユーザーID」と「APIトークン」を表示させて確認します。
次にリモートで実行したいジョブの設定画面を開き、「ビルド・トリガ」の「リモートからビルド (例: スクリプトから)」にチェックを入れて、任意の認証トークンを設定します。

あとは以下のようにスクリプトを用意して、好きなタイミング、トリガーで実行するとジョブのビルドが行われます。
# -*- coding:utf-8 -*-
import sys
import urllib2, base64
JENKINS_URL = <Jenkins の URL を記述します>
JENKINS_USER = <設定画面で確認したユーザーID>
JENKINS_TOKEN = <設定画面で確認したAPIトークン>
JOB_TOKEN = 'sample_job_token' # ジョブの認証トークン
# URLは[jenkins]/job/[ジョブ名]/build?token=[認証トークン]
url = '%s/job/SampleJob/build?token=%s' % (JENKINS_URL, JOB_TOKEN)
# 設定画面で表示されたユーザID、APIトークンでベーシック認証
username = JENKINS_USER
password = JENKINS_TOKEN
request = urllib2.Request(url)
base64string = base64.encodestring('%s:%s' % (username, password)).replace('\n', '')
request.add_header("Authorization", "Basic %s" % base64string)
result = urllib2.urlopen(request)
塵積かもですが、細かい自動化、効率化を進めていってチーム全体がクリエイティブに使える時間をどんどん増やしていきたいですね。😄
それではまたー🖐
CATEGORY
- about ヘキサ (166)
 - 部活動 (6)
 - CG (18)
 - プロジェクトマネジメント (1)
 - 研修 (5)
 - 美学 (1)
 - いいモノづくり道 (227)
 - 採用 -お役立ち情報も- (149)
 - プログラム (189)
 - デザイン (99)
 - ゲーム (273)
 - 日記 (1,104)
 - 書籍紹介 (113)
 - その他 (889)
- 就活アドバイス (20)
 - ラーメン (3)
 - ライフハック (25)
 - イベント紹介 (10)
 - 料理 (23)
 - TIPS (7)
 - 怖い話 (3)
 - サウンド (6)
 - 子育て (1)
 - 筋トレ (1)
 - NicO (3)
 - MakeS (9)
 - 商品紹介 (21)
 - アプリ紹介 (31)
 - ソフトウェア紹介 (33)
 - ガジェット紹介 (12)
 - サイト紹介 (10)
 - 研究・開発 (35)
 - 回路図 (4)
 - アナログゲーム (40)
 - 交流会 (21)
 - 報告会 (3)
 - インフラ (25)
 - グリとブラン (6)
 - カメラ (9)
 - クラフト (27)
 - 部活 (14)
 - 画伯 (15)
 - カレー (6)
 - 音楽(洋楽) (6)
 - 映画・舞台鑑賞 (43)
 - 飼育 (5)
 - いぬ (8)
 - ねこ (19)
 
 
ARCHIVE
- 2025年
 - 2024年
 - 2023年
 - 2022年
 - 2021年
 - 2020年
 - 2019年
 - 2018年
 - 2017年
 - 2016年
 - 2015年
 - 2014年
 - 2013年
 - 2012年
 - 2011年
 - 2010年
 - 2009年
 - 2008年
 - 2007年
 




