본문으로 바로가기

[gitlab].gitlab-ci.yml 설정

category gitlab 5년 전
728x90
반응형
# deploy:테스트환경
deploy_staging:
  stage: deploy
  before_script:
    - cd $WORKING_DIR
    - rm -Rf $WORKING_DIR/.git*
  script:
    - git clone --no-checkout https://gitlab-ci-token:${CI_JOB_TOKEN}@gitlab.com/{해당 gitlaburl}.git $WORKING_DIR/bk && mv $WORKING_DIR/bk/.git . && rm -rf $WORKING_DIR/bk && git checkout --force develop
  tags:
    - staging(gitlab-runner에서 선언한 태그)
  only:
    - develop
  environment: staging
  when: on_success
# deploy:real
deploy_prod:
  stage: deploy
  before_script:
    - cd $WORKING_DIR
    - rm -Rf $WORKING_DIR/.git*
  script:
    - git clone --no-checkout https://gitlab-ci-token:${CI_JOB_TOKEN}@gitlab.com/{해당 gitlaburl}.git $WORKING_DIR/bk && mv $WORKING_DIR/bk/.git . && rm -rf $WORKING_DIR/bk && git checkout --force master
  tags:
    - prod(gitlab-runner에서 선언한 태그)
  only:
    - master
  when: manual
  allow_failure: false
  environment: production

$WORKING_DIR는 CI/CD variable에서 선언해둠.

https://docs.gitlab.com/ee/ci/variables/README.html

 

GitLab CI/CD environment variables | GitLab

GitLab CI/CD environment variables An environment variable is a dynamically-named value that can affect the way running processes behave on an operating system. Environment variables are part of the environment in which a process runs. For example, a runni

docs.gitlab.com

staging환경은 성공할 시에 소스를 git clone해서 나두고 prod환경은 manual로 하여 직접 파이프라인에서 실행하도록 설정하였다.

참고사이트

gitlab공식사이트

https://docs.gitlab.com/ee/ci/yaml/

728x90
반응형

gitlab카테고리의 다른글

[gitlab]gitlab-runner 가 느려졌을 경우 대처방법  (0) 2021.04.08
[centos]gitlab runner 설치  (0) 2020.07.06