0
0

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 3 years have passed since last update.

GitlabRunner成果物作成

Posted at

GitLabRunner環境設定 https://qiita.com/Fune_TA/private/8a9049e11152a5b3f8a5)

上記の方法でRunnerでイメージを登録した後、ymlファイルをプロジェクトに追加することでパイプライン処理の設定を行うことができます。
実際のファイルでの処理を簡易にまとめます。

.gitlab-ci.yml

stages:
  - make-artifact

make-artifact_job:
  type: make-artifact
  image: $CI_REGISTRY/<group_ID>/<subgroup_ID>/<project_name>:<tag>
  script:
    - source /opt/dey/3.0-r4/ccimx6qpsbc/environment-setup-cortexa9t2hf-neon-dey-linux-gnueabi
    - make clean
    - echo ${CI_COMMIT_REF_NAME} >> ver_integ.txt
    - make archive
  artifacts:
    name: "${CI_COMMIT_REF_NAME}"
    expire_in: 1 week
    paths:
      - radarupdate.tgz
      - radarupdate_all.tgz
      - install.sh

source-code:
  type: make-artifact
  image: $CI_REGISTRY/<group_ID>/<subgroup_ID>/<project_name>:<tag>
  script:
    - ./release.sh "${CI_COMMIT_REF_NAME}"
  only:
    - tags
  artifacts:
    name: "${CI_COMMIT_REF_NAME}"
    expire_in: 1 week
    paths:
      - integ_${CI_COMMIT_REF_NAME}.tar.bz2

stages:

処理の段階を決めることができます。
順番に処理をしたい場合は

stages:
    - A
    - B
    - C

のように設定して順番ごとにjobに割りふることで三段階(A→B→Cの順)で処理を行うことができます。
今回はすべて並列で処理を行ったため、一つになっています。

job:

処理の大きな枠組みとなります。
今回では
make-artifact_job
source-code
の二つでビルド成果物の作成とソースコードの取得という二つの枠組みで分けています。

type:

stagesで定義した段階をここで設定します。

image:

jobの実行で使用するimageを指定します。ここでは前回の登録時に設定したもの使用しています。

script:

jobで実行する処理をここに記載します。
今回はmake-artifact_jobでプロジェクト内でビルド処理を
source-codeではプロジェクト内のファイルをまとめるスクリプトを起動しています。

only:

jobが実行される条件を記載します。今回ソースコードは毎回必要ではなかったため、タグをつけた際のみsource-codeが処理されるようにしています。

artifacts:

成果物の詳細を記載します。

  • name:
    成果物の名前を記載します。今回はcommitIDを参照して名前をつけるようにしています。
  • expire_in:
    成果物をダウンロードできる期限を記載します。今回は一週間にしています。
    期限を過ぎた場合は再実行が必要になります。  
WARNING: Uploading artifacts as "archive" to coordinator... failed  id=1682384872 responseStatus=524 Origin Time-out status=524 token=Wux8XQsD
WARNING: Retrying...                                context=artifacts-uploader error=invalid argument
  • paths:
    成果物として送信するアイテムのパスを指定します。

成果物のダウンロード

Gitlabのプロジェクトを開き、左のバーからCI/CD>Pipelinesを開きます。
CICD1.PNG
パイプライン処理の一覧が表示されます。成果物のダウンロードしたいcommitIDのStagesをクリックします。

CICD.PNG

Job一覧が表示されるのでダウンロードしたい成果物を選びます。

CICD2.PNG

処理のログと詳細が表示されます。詳細のDownloadから成果物をダウンロードできます。
CICD3.PNG

Commit履歴から直接指定することもできます。
commit1.PNG
commit2.PNG

Stagesを選択した後は同様の操作でダウンロードが行えます。

参考

GitLab CI/CD パイプライン設定リファレンス https://gitlab-docs.creationline.com/ee/ci/yaml/

0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?