38 lines
951 B
Groovy
38 lines
951 B
Groovy
|
import jenkins.model.*
|
||
|
import hudson.security.*
|
||
|
import jenkins.install.InstallState
|
||
|
|
||
|
def instance = Jenkins.getInstance()
|
||
|
|
||
|
// プラグインの自動インストール
|
||
|
def pluginManager = instance.getPluginManager()
|
||
|
def updateCenter = instance.getUpdateCenter()
|
||
|
updateCenter.updateAllSites()
|
||
|
|
||
|
// インストールするプラグインのリスト
|
||
|
def plugins = [
|
||
|
"git",
|
||
|
"workflow-aggregator",
|
||
|
"credentials-binding",
|
||
|
"docker-plugin",
|
||
|
"docker-workflow",
|
||
|
"blueocean",
|
||
|
"slack-notification",
|
||
|
"pipeline-stage-view",
|
||
|
"email-ext"
|
||
|
]
|
||
|
|
||
|
// プラグインがインストールされていない場合はインストール
|
||
|
plugins.each {
|
||
|
if (!pluginManager.getPlugin(it)) {
|
||
|
def plugin = updateCenter.getPlugin(it)
|
||
|
if (plugin) {
|
||
|
plugin.deploy()
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// 初期セットアップの完了状態に設定
|
||
|
instance.setInstallState(InstallState.INITIAL_SETUP_COMPLETED)
|
||
|
instance.save()
|