continuous_integration:gitlab-ci

継続インテグレーション(CI)ツール

GitLab CI/CD

https://docs.gitlab.com/ce/ci/README.html

GitLab環境で使えるCI/CDツール
以前はGitLab本体とGitLabCIというツールがあったが,GitLabのVer8.0以降この2つは完全に統合される.
GitLab CI/CDはUIの・ようなもので,実際にビルドとかの各種ジョブを走らせるのはGitlab Runnerというツール
GitLab CI/CDが呼び出しているとう認識でいいだろうか?
.gitlab-ci.ymlというファイルにジョブの設定を記述する.このあたりはTravis CIと似てる.
GitLab自身は自前のサーバに入れて運用できるし,これに一緒にGitLab Runnerもインストールすれば自前のサーバがテストを回しくてくれる.
Gitlab.comならデフォルトで使える状態にある.しばらくはGitlab.comばかり使うと思ってる.

stages:
  - build
 
#before_script:

make_test:
    stage: build
    script:
      - pushd .
      - cd ~ 
      - mkdir arm-gcc-toolchain
      - wget -O $HOME/arm-gcc-toolchain/gcc.tar.bz2 https://developer.arm.com/-/media/Files/downloads/gnu-rm/7-2018q2/gcc-arm-none-eabi-7-2018-q2-update-linux.tar.bz2?revision=bc2c96c0-14b5-4bb4-9f18-bceb4050fee7?product=GNU%20Arm%20Embedded%20Toolchain,64-bit,,Linux,7-2018-q2-update
      - cd arm-gcc-toolchain
      - tar -jxf gcc.tar.bz2 --strip=1
      - popd
      - export PATH=$HOME/arm-gcc-toolchain/bin:$PATH
      - arm-none-eabi-gcc --version
      - make

ジョブ名を最上位に定義可能,最低限scriptを定義しておく必要あり.
ジョブ名は任意の適当な名前でOK.stageで分類される.
stagesにこの名前を登録しておく.
複数のジョブ名を定義してあっても,ジョブ内にあるstageで分類されてるものが同時に実行され,それらのstageに分類されるジョブがすべて成功するとstagesに登録されてる次のジョブが実行される.

参考文献

  • continuous_integration/gitlab-ci.txt
  • 最終更新: 2020/08/10
  • by yuqlid