🤖

GitLab CI: ディレクトリ構成

2023/11/12に公開

ほぼGitLab CI/CD初心者ですが、GitLab CIのディレクトリ構成について書いています。本家GitLabのディレクトリ構成を参考にしつつ、最終的にこんな感じの構成になりましたというまとめ記事です。もちろんこれが正しいとは思っておらず、もっと良い構成などあればフィードバックを頂ければ幸いです。

基本的なディレクトリ構成

.gitlab-ci.ymlファイルはGitLabプロジェクトレポジトリ直下に配置するしかないと思いますが、その中に1ファイルで全てのステージやジョブの情報を記載するのではなく、必要最低限の情報のみ記載し、各ジョブもしくは各ステージ毎に.gitlab/ci/ディレクトリにymlファイルを分割して配置します。

.
.gitlab-ci.yaml
├── .gitlab/
│   └── ci/
│   │   └── build.gitlab-ci.yml
│   │   └── deploy.gitlab-ci.yml

.gitlab-ci.ymlファイル

以下の例のように、各ジョブを定義しているymlファイルをincludeして対応します。

stages:
  - build-stage
  - deploy-stage

include:
  - local: /.gitlab/ci/build.gitlab-ci.yml
  - local: /.gitlab/ci/deploy.gitlab-ci.yml

各ジョブのymlファイル

ここは普通に各ジョブでやりたいことを記載するだけです。

build:
  stage: build-stage
  script:
    - echo "hello"

Discussion