[OpenShift origin] GitHubとの連携(Webhook)

OpenShift origin

OpenShift originをインストールしてやってみたかったこと
GitHubと連携したポッドのビルド(Webhook)

簡単に言うと、GitHub内のソースをコミットした段階でそれがOenshift側に通知され
ポッドが自動的にリビルドされ最新のソースで動作する。というもの

今回は簡単にコーディングできるPHPで試してみました。

まずは管理画面を表示します。予めtestプロジェクトを作成しています。
OpenShiftの管理画面を表示します。予めtestプロジェクトを作成しています。

phpのポッドを立ち上げるべく設定を行います。
phpのポッドを立ち上げるべく設定を行います。

まずは標準設定で作成しています。

まずは標準設定で作成しています。

まずは標準設定で作成しています。

testプロジェクトを開きます。
testプロジェクトを開きます。

Overviewで見ると既にBuildが始まっています。
(httpは気にしないでください)
Buildが始まっています。httpは気にしないでください。

Build》Buildから状況を確認します。
Build》Buildから状況を確認します。

Last Buildの数字をクリックします。
Last Buildの数字をクリックします。

表示された詳細画面でLogsをクリックし状況を確認します。
表示された詳細画面でLogsをクリックします。

Pull successfulが表示されれば完了です。

Overviewでpodが青〇で表示されていることを確認します。
Overviewメニューをクリックし現在のPodの状況を確認します。

実際のpodにアクセスするには右上にあるURLをクリックします。
右上に表示されているURLをクリックするとサンプルが表示されます。

次にWebhook用のURLを取得するための手順です。
Build画面でNameをクリックします。
BuildでNameをクリックします。

次にConfigurationをクリックします。
次にConfigurationをクリックします。

下段のGit Webhook URLをコピーします。これをGitHubのWebhookURLに登録すればOKなんですが…
下段のGit Webhook URLをコピーします。

コピーしました。

次にGitHubにログインします。
GitHubにログイン

GitHubにログイン

新しいプロジェクトを作ります。
新しいプロジェクトを作成します。

新しいプロジェクトを作成します。

新しいプロジェクトを作成します。

新しいプロジェクトを作成します。

まずはお約束のREADME.mdを作成します。
まずはお約束README.mdを作成します。

README.mdを登録します。

登録したところ

登録したところ

次にコンテンツとなるphpソースを作成します。
今回は簡単なphp.iniを表示するプログラムにしてみました。
簡単なPHPプログラムをindex.phpとして作成します。

index.phpを登録します。

できました。簡単なサンプルPHPプロジェクト

ここで先ほどコピーしたWebhookのURLを登録します。
プロジェクトのSettingsを表示します。
再びGitHubに戻ってSettingsを表示します。

WebhooksメニューをクリックしAdd webhookをクリックします。
WebhooksメニューをクリックしAdd webhookをクリックします。

Payload URLに先ほどコピーしたURLを貼り付けます。
Payload URLに先ほどコピーしたURLを貼り付けます。

登録します。

登録されました。

続いてソースを更新します。
次に何でも良いのでソースを更新します。

今回はコンテンツと関係ないREADME.mdを編集しました。
今回はコンテンツとは無関係なREADME.mdを編集しました。

README.mdを編集しました

README.mdを登録します。


これでPod側が更新されるはずだが…更新されません。
WebhookのURLをコピーした時に確認すべきでしたが、IPが127.0.0.1となっていました。
なので、GitHubからWebhookの通知が届くはずなく更新されていませんでした。
さてこれでWebhookの流れはokです(涙


どうやら内部的にGitLabを立てる必要がありますね…。
関連記事
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。