1. takamii228

    Posted

    takamii228
Changes in title
+JenkinsとCloudFoundry(Pivotal Cloud Foundry)を連携する方法
Changes in tags
Changes in body
Source | HTML | Preview
@@ -0,0 +1,64 @@
+JenkinsとCloudFoundry(Pivotal Cloud Foundry)のCDの連携設定を備忘録としてまとめました。
+
+以下のシリーズのCF/PCF版です。
+
+- [JenkinsとGitLabを連携する方法](https://qiita.com/takamii228/items/3598f403518c296f93f3)
+- [JenkinsとGitLabとMattermostを連携する方法](https://qiita.com/takamii228/items/a0f4b2ef8107d6d3cd34)
+
+# 1. CloudFoundry Pluginをインストールする
+
+Jenkinsに[Jenkins CloudFoundry Plugin](https://github.com/jenkinsci/cloudfoundry-plugin)をインストールします。
+インストールは管理者権限のあるユーザでJenkinsにログインし、`Jenkinsの管理`→`プラグインの管理`→`利用可能`なタブを選択、Mattermost Pluginにチェックをいれてインストールを実行します。
+
+# 2. CloudFoundry / Pivotal Cloud Foundryの認証設定
+
+JenkinsにCF/PCFの認証情報を設定します。Jenkinsの左のメニューの`認証情報`→`System`→`グローバルドメイン`を選択、左にある`認証情報の追加`を選択し、以下の内容で追加します。
+
+- 種類 : ユーザ名とパスワード
+- ユーザ名 : CF/PCFのユーザ名
+- パスワード : CF/PCFのパスワード
+- ID : 空欄(あとで自動発行される)
+- 説明欄 : CF/PCF認証用のユーザである説明を記載
+
+# 3. Jenkinsfileの設定と動作確認
+
+`Jenkinsfile`のPipline Scriptには`pushToCloudFoundry`を使って以下の内容を設定します。
+
+- `target` : CloudFoundry APIのドメイン
+- `organization` : 対象のorganization
+- `cloudSpace` : 対象のスペース
+- `credentialsId` : 2で設定した認証情報のID(英数字文字列)
+- `manifestChoice`(optional) : manifestの情報
+ - たくさんあるので省略、`manifest.yml`に内容を記載して、インポートする形がよいと思います。
+- `pluginTimeout`(optional) : timeout設定、デフォルトは`120`
+- `selfSigned`(optional) : 自己証明書の設定、デフォルトは`false`
+- `serviceToCreate`(optional) : コマンド実行時に作成するサービス
+
+以下にサンプルを記載しました。
+
+```groovy
+pipeline {
+ agent any
+
+ stages {
+ stage('deploy'){
+ steps {
+ pushToCloudFoundry(
+ target: 'xxxxxxxxx',
+ organization: 'yyyyyyy',
+ cloudSpace: 'zzzzz',
+ credentialsId: 'wwwwwwwwwwwwwwwwwww',
+ manifestChoice: [manifestFile: 'manifest.yml']
+ )
+
+ }
+ }
+ }
+}
+```
+
+# 参考情報
+
+- https://github.com/jenkinsci/cloudfoundry-plugin
+- https://jenkins.io/doc/pipeline/steps/cloudfoundry/
+- https://jenkins.io/doc/book/pipeline/syntax/