IBM Cloud Docs
GitLab の構成

GitLab の構成

GitLab は、Git リポジトリーの Web ベースのホスティング・サービスです。 リポジトリーのローカルとリモートの両方のコピーを持つことができるので、共同作業が容易になります。

GitLab.com または会社の GitLab インスタンスの新規または既存のリポジトリーでソース・コードを管理できるように、ツールチェーン内の 1 つのツール統合として GitLab を構成できます。 Wiki、問題のトラッキング、マージ・リクエストを介してソーシャル・コーディングに参加します。

ツールチェーンの作成時にこのツール統合を構成する場合は、次の手順を実行します。

  1. GitLab リポジトリーにソース・コードを格納している場合は、「構成可能な統合」セクションで**「GitLab」**をクリックします。 IBM Cloud Public でこのツール統合を構成する場合、 OAuth または 「個人用アクセス・トークン」 のいずれかを選択して、 GitLab へのアクセスを IBM Cloud に許可する必要があります。

    • OAuth を選択した場合は、 「Authorize」 をクリックして GitLab Web サイトに移動します。 アクティブな GitLab セッションがない場合は、ログインするよう求められます。 「アプリケーションを許可 (Authorize Application)」 をクリックして、IBM Cloud が GitLab アカウントにアクセスできるようにします。 アクティブな GitLab セッションはあるものの、最近パスワードを入力していない場合は、確認のために GitLab パスワードの入力を求められることがあります。

    • 「個人アクセス・トークン (Personal Access Token)」を選択した場合は、リポジトリーを複製して他のアクションを実行するために GitLab での許可に使用する個人アクセス・トークンを入力する必要があります。 個人用アクセス・トークンがない場合は、 GitLab Web サイトの資料に従って作成することができます。 個人用アクセス・トークンに api 権限があることを確認します。

  2. 独自の GitLab サーバー上でリポジトリーを使用している場合は、「構成可能な統合」セクションで**「カスタム・サーバーの追加」**をクリックします。

    a. カスタム GitHub サーバーのタイトルを入力し、サーバーのルート URL を指定し、個人用アクセス・トークンを入力します。

    b. 個人用アクセス・トークンがない場合は、 GitLab Web サイトの資料に従って作成することができます。

    c. GitHub サーバーがエアギャップされていたり、公共のインターネットからアクセスできない場合は、Delivery Pipeline Private Worker を接続して統合し、独自の Kubernetes インフラストラクチャ上で実行することで、内部またはオンプレミスのリソースにアクセスすることができます。 Delivery Pipelineプライベート・ワーカーについての詳細は、Delivery Pipelineプライベート・ワーカーでの作業 を参照してください。

  3. GitLab リポジトリーのデフォルトのターゲット・リポジトリーの場所を確認します。 これらのリポジトリーは、サンプル・リポジトリーのクローンです。 必要に応じて、ターゲット・リポジトリーの名前を変更します。

既存のツールチェーンにツール統合を追加する場合は、以下の手順に従います。

  1. IBM Cloudコンソールから、メニューアイコンハンバーガーアイコン>Platform Automation>Toolchains をクリックします。 「ツールチェーン」ページで、ツールチェーンをクリックしてその「概要」ページを開きます。 あるいは、アプリの「概要」ページの「継続的デリバリー」カードで、**「ツールチェーンの表示」をクリックします。 次に、「概要」**をクリックします。

  2. **「ツールの追加」**をクリックします。

  3. 「ツール統合」セクションで**「GitLab」**をクリックします。

  4. 使用する GitLab サーバーをクリックします。

  5. 既存の GitLab リポジトリーを使用する場合は、リポジトリーのタイプとして**「既存」**をクリックし、URL を入力します。

  6. 新しい GitLab リポジトリーを使用する場合は、そのリポジトリーに付ける名前を入力し、複製またはフォークするリポジトリーの URL を入力し、リポジトリー・タイプを次のように選択します。

    a. 空のリポジトリーを作成する場合は、**「新規」**をクリックします。

    b. GitLab リポジトリーのコピーを作成する場合は、**「クローンを作成する (Clone)」**をクリックします。

    c. GitLab リポジトリーをフォークし、マージ・リクエストで変更内容を提供できるようにする場合は、**「フォーク (Fork)」**をクリックします。

  7. サーバー上にパブリック・リポジトリーを作成する場合は、**「このリポジトリーをプライベートにする (Make this repository private)」**チェック・ボックスをクリアします。

  8. 問題のトラッキングに GitLab Issues を使用する場合は、**「GitLab Issues を使用可能にする (Enable GitLab Issues)」**チェック・ボックスにチェック・マークを付けます。

  9. コミットに対するタグおよびコメントと、コミットで参照される問題に対するラベルおよびコメントを作成することによって、コード変更のデプロイメントをトラッキングしたい場合は、**「コード変更のデプロイメントを追跡する (Track deployment of code changes)」**チェック・ボックスにチェック・マークを付けます。 詳しくは、ツールチェーンでコードがどこにデプロイされたかを追跡するを参照のこと。

  10. 「統合の作成」 をクリックします。

  11. ツールチェーンの「概要」ページの**「リポジトリー」**カードで、処理する GitLab リポジトリーをクリックします。 選択したリポジトリーに応じて、GitLab Web サイトか会社の GitLab リポジトリーが開きます。ここで、リポジトリーのコンテンツを表示できます。

  12. GitLab Issues を使用可能にした場合、**「GitLab Issues」**をクリックして開きます。 ツールチェーンに複数の GitLab リポジトリーが含まれれている場合でも、GitLab Issues のこのインスタンスをツールチェーン全体に使用できます。

    リンクしようとしているリポジトリーに対する所有者またはマスター特権がない場合は、Web フックを使用できないので統合は制限されます。 リポジトリーにコミットがプッシュされたときにパイプラインが自動的に実行されるようにするには、Web フックが必要です。 Web フックがない場合、パイプラインを手動で開始する必要があります。

APIを使ってGitLabを設定する

GitLab ツール統合は、 read、および update ツール統合を作成するときに、 ツールチェーン HTTP API および SDK で使用できる以下の構成パラメーターをサポートします。

gitlab 値を使用して、要求本体に tool_type_id プロパティーを指定する必要があります。

GitLabツール統合パラメータ
パラメーター 使用法 タイプ Terraform 引数 説明
API のルート URL オプション、更新可能 ストリング API のルート URL GitLabAPIのURL。
API トークン オプション、更新可能 パスワード API トークン 個人用アクセス・トークン (PAT)。 このパラメーターは、 auth_typepat に設定されている場合にのみ必要です。それ以外の場合は無視されます。
auth_type オプション、更新可能、 Default: oauth ストリング auth_type Git プロバイダーへのアクセスに使用する認証方式を設定します。
ブラインド・コネクション オプション、更新可能、 Default: false ブール値 ブラインド・コネクション IBM Cloudは、あなたが提供する接続の詳細を検証することができないので、この値をtrueに設定すると、サーバーが公共のインターネット上でアドレス指定できないことを示します。 Git サーバーへの API アクセスを必要とする一部の機能は無効になります。Delivery Pipeline は、Git サーバーにネットワークアクセスできるプライベートワーカーを使うことでのみ動作します。
デフォルト・ブランチ オプション、更新可能 ストリング デフォルト・ブランチ Git リポジトリーのデフォルト・ブランチの名前です。
enable_traceability オプション、更新可能、 Default: false ブール値 enable_traceability この値を'true に設定すると、コミット、プルリクエスト、参照された課題に対してタグ、ラベル、コメントを作成し、コード変更のデプロイメントを追跡します。
Git_id オプション、不変 ストリング Git_id この値を gitlab ( gitlab.comの場合)、またはカスタム GitLab サーバーの GUID に設定します。
has_issues オプション、更新可能、 Default: true ブール値 ツールチェーンの発行が有効 この値を true に設定すると、 GitLab リポジトリーで Issues が有効になり、Issues ツール統合カードがツールチェーンに追加されます。 ツールチェーンからツール統合カードを削除するには、この値を false に設定します。 このアクションは、 GitLab リポジトリー自体で問題が有効になっているかどうかには影響しません。
統合所有者 オプション、更新可能 ストリング 統合所有者 Git 操作を実行するユーザーを選択します。
owner_id オプション、不変 ストリング owner_id リポジトリーを所有する GitLab のユーザーまたはグループ。 このパラメーターは、リポジトリーを作成する場合、またはリポジトリーを複製またはフォークする場合に必要です。 この値は、既存のリポジトリーにリンクすると計算されます。
プライベート・リポジトリー オプション、不変、 Default: true ブール値 プライベート・リポジトリー リポジトリーを作成するとき、またはリポジトリーを複製またはフォークするときに、リポジトリーをプライベートにするには、この値を true に設定します。 既存のリポジトリーにリンクする場合、このパラメーターは使用されません。
リポジトリー ID オプション、不変 ストリング リポジトリー ID GitLabプロジェクトのID。
repo_name オプション、不変 ストリング repo_name 作成するGitLabリポジトリの名前。 このパラメーターは、リポジトリーを作成する場合、またはリポジトリーを複製またはフォークする場合に必要です。 この値は、既存のリポジトリーにリンクすると計算されます。
repo_url オプション、不変 ストリング repo_url このツール統合のための GitLab リポジトリーの URL。 既存のリポジトリーにリンクする場合、このパラメーターは必須です。 この値は、リポジトリーを作成するとき、またはリポジトリーを複製またはフォークするときに計算されます。
ソース repo_URL オプション、不変 ストリング ソース repo_URL フォークまたはクローンの対象となるリポジトリーの URL。 このパラメーターは、リポジトリーをフォークまたはクローン作成するときには必須ですが、リポジトリーまたは既存のリポジトリーへのリンクを作成するときには使用されません。
トークン URL オプション、更新可能 ストリング トークン URL GitLab サーバーでの許可に使用されるトークン URL。
タイプ 必須、変更不可能 ストリング タイプ 新規ツール統合を初期化するために実行する操作。 new を使用して Git リポジトリーを作成します。 clone を使用して既存のリポジトリーを新しい Git リポジトリーに複製します。 fork を使用して既存の Git リポジトリーをフォークするか、 link を使用して既存の Git リポジトリーにリンクします。