1
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

OpenShift Origin v3.9 でGitLab からビルド

Posted at

始めに

OpenShift Origin v3.9 の環境構築とアプリケーションのデプロイ(後編)
の続きです。
GitHub からのビルドからデプロイまでの方法を紹介しましたが、今回は認証付きのGitLab にあるソースからのビルド方法を書きます。
違いはビルドの定義だけですので、その部分のみ書きます。

ビルドの定義と実行

[master-01]
まず、認証のためのsecret を作成する。
<user>, <password> はそれぞれGitLab のユーザー名、パスワード。
例として、telnetman という名前で作成する。

oc create secret generic telnetman \
    --from-literal=username=<user> \
    --from-literal=password=<password> \
    --type=kubernetes.io/basic-auth

Web コンソールで作成する場合は、Resources → Secrets から作成する。
openshift-secret.png

次に、ビルドコンフィグファイルを作成する。
例として、telnetman2-web コンテナの場合。

telnetman2-web-buildconfig.yaml
apiVersion: "v1"
kind: "BuildConfig"
metadata:
  name: "telnetman2-web"
spec:
  runPolicy: "Serial"
  source:
    type: "Git"
    git:
      uri: "https://gitlab.example.com/telnetman/telnetman2.git"
      ref: "master"
    sourceSecret:
      name: "telnetman"
    contextDir: "./"
  strategy:
    type: "Docker"
    dockerStrategy:
      dockerfilePath: "Dockerfile-web"
      env:
        - name: "DBSERVER"
          value: "telnetman2"
  output:
    to:
      kind: "ImageStreamTag"
      name: "telnetman2-web:latest"
  triggers:
    - type: "GitLab"
      gitlab:
        secret: "XXXYYYZZZ"

前記事のGitHub のときと違う点は以下の2点だけ。

  • 認証のためにspec.source.sourceSecret.name でsecret を指定
  • triggers でGitHub, github となっていた部分をそれぞれGitLab, gitlab に変更

そして、定義済のビルドコンフィグを入れ替えてビルドを実行する。
未定義の場合はoc create -f telnetman2-web-buildconfig.yaml
コマンドラインではなくWeb コンソールのImport YAML / JSON からでも行える。

oc replace -f telnetman2-web-buildconfig.yaml
oc start-buil telnetman2-web

前記事のGitHub のときとの違いはこれだけ。
あとはGitLab でWebhook の設定をすれば、GitLab 上のイベントをトリガーにしてビルド、デプロイが自動で行われる。

参考

Build Inputs
Install input secret into OpenShift build configuration

1
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?