1.2. ソース定義


次のフィールドの値を設定することで、Build カスタムリソース (CR) でビルドのソース情報を設定できます。

  • source.git.url: Git リポジトリーで利用可能なイメージのソースの場所を定義します。
  • source.git.cloneSecret: プライベート Git リポジトリーの SSH 秘密鍵を含む namespace 内のシークレットを参照します。
  • source.git.revision: ソース Git リポジトリーから選択する特定のリビジョンを定義します。たとえば、コミット、タグ、ブランチ名などです。このフィールドのデフォルトは、Git リポジトリーのデフォルトブランチです。
  • source.contextDir: ルートフォルダーにソースコードが存在しないリポジトリーのコンテキストパスを指定します。

ビルドコントローラーは、イメージをプルするために指定した Git リポジトリーが存在するかどうかを自動検証しません。検証する必要がある場合は、次の例に示すように、build.shipwright.io/verify.repository アノテーションの値を true に設定します。

apiVersion: shipwright.io/v1beta1
kind: Build
metadata:
  name: buildah-golang-build
  annotations:
    build.shipwright.io/verify.repository: "true"
spec:
  source:
    git:
      url: https://github.com/shipwright-io/sample-go
    contextDir: docker-build

ビルドコントローラーは、以下のシナリオで Git リポジトリーの存在を検証します。

  • HTTP または HTTPS プロトコルでエンドポイント URL を使用する場合。
  • git@ などの SSH プロトコルを定義しているが、source.git.cloneSecret などの参照シークレットを定義していない場合。

以下の例は、異なるソース入力セットでビルドを設定する方法を示しています。

例: 認証情報を使用したビルドの設定

次の例に示すように、認証情報を指定してソースを使用してビルドを設定できます。

apiVersion: shipwright.io/v1beta1
kind: Build
metadata:
  name: buildah-build
spec:
  source:
    git:
      url: https://github.com/sclorg/nodejs-ex
      cloneSecret: source-repository-credentials

例: コンテキストパスを使用したビルドの設定

次の例に示すように、Git リポジトリー内のコンテキストパスを指定するソースを使用してビルドを設定できます。

apiVersion: shipwright.io/v1beta1
kind: Build
metadata:
  name: buildah-custom-context-dockerfile
spec:
  source:
    git:
      url: https://github.com/userjohn/npm-simple
    contextDir: docker-build

例: タグを使用したビルドの設定

次の例に示すように、Git リポジトリーのタグ v.0.1.0 を指定するソースを使用してビルドを設定できます。

apiVersion: shipwright.io/v1beta1
kind: Build
metadata:
  name: buildah-golang-build
spec:
  source:
    git:
      url: https://github.com/shipwright-io/sample-go
      revision: v0.1.0

例: 環境変数を使用したビルドの設定

次の例に示すように、環境変数を指定するビルドを設定することもできます。

apiVersion: shipwright.io/v1beta1
kind: Build
metadata:
  name: buildah-golang-build
spec:
  source:
    git:
      url: https://github.com/shipwright-io/sample-go
    contextDir: docker-build
  env:
    - name: <example_var_1>
      value: "<example_value_1>"
    - name: <example_var_2>
      value: "<example_value_2>"
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.