GitLab CI-파일 내용이 변경 될 때 파이프 라인 실행

RC

여러 프로젝트가있는 단일 저장소가 있습니다 (내 디자인 선택이 아님).

각 프로젝트에는 .gitlab-ci.yml"버전"파일이 변경 될 때 파이프 라인을 실행 하는 설정이 있습니다. 이것은 사용자가 stage또는 master(핫픽스의 경우) 체크인 할 수 있고 빌드가 생성되어 테스트 환경에 배포되기 때문에 좋습니다.

문제는 사용자가에서 병합 master을 수행 stage하고 stage(핫픽스를 가져 오기 위해) 다시 커밋 할 때 입니다. 이로 인해 모든 파이프 라인이 실행됩니다. 실제 내용이 변경되지 않은 프로젝트도 마찬가지입니다.

어떻게 파이프 라인에서 실행을 허용 할 master및 / 또는 stage만 할 때 "버전"파일의 내용이 변경? 사용자가 버전 번호를 변경할 때와 같습니다.

다음은 .gitlab-ci.yml(나는 이들 중 5 개, 모노 리포지토리의 각 프로젝트에 대해 1 개)

#
# BUILD-AND-TEST - initial build
#
my-project-build-and-test:
  stage: build-and-test
  script:
    - cd $MY_PROJECT_DIR
    - dotnet restore
    - dotnet build
  only:
    changes:
      - "MyProject/.gitlab-ci.VERSION.yml"
  # no needs: here because this is the first step

#
# PUBLISH
#
my-project-publish:
  stage: publish
  script:
    - cd $MY_PROJECT_DIR
    - dotnet publish --output $MY_PROJECT_OUTPUT_PATH --configuration Release
  only:
    changes:
      - "MyProject/.gitlab-ci.VERSION.yml"
  needs:
    - my-project-build-and-test

... 등등 ...

나는 여전히 git, GitLab 및 CI / pipelines를 처음 사용합니다. 어떤 도움을 주시면 감사하겠습니다! (저는 모노 리포지토리를 변경하는 것에 대해 거의 말하지 않습니다)

Aleksey Tsalolikhin

다음 .gitlab-ci.yml은 파일이 version변경된 경우에만 test_job을 실행합니다 .

test_job:
  script: echo hello world
  rules:
    - changes:
      - version

참조 https://docs.gitlab.com/ee/ci/yaml/#ruleschanges를

작업 만 실행 / 경로 또는 파일 수정 제외를 참조하십시오.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

sh 파일이 Gitlab 파이프 라인에서 실행될 때 변수 값 숨기기

분류에서Dev

gitlab ci cd 파이프 라인을 사용할 때 노드 js 앱의 환경 변수에 액세스

분류에서Dev

파일이 변경 될 때마다 파일을 실행하고 싶습니다.

분류에서Dev

Gitlab CI 파이프 라인 작업

분류에서Dev

Gitlab CI 파이프 라인 실패 : 태그 문제

분류에서Dev

gitlab-ci에서 트리거 파이프 라인 실패

분류에서Dev

udpsrc 파이프 라인 이전에 udpsink 파이프 라인이 실행될 때 Gstreamer 1.0 비디오 없음

분류에서Dev

Jenkins 파이프 라인이 중지 될 때 JUnit @After가 실행되지 않음

분류에서Dev

gitlab-CI 파이프 라인 : 파일을 삭제하려고 할 때 lftp 오류 550

분류에서Dev

Gitlab CI : Docker 및 Shell Runner를 사용하여 파이프 라인에서 테스트를 실행하는 방법

분류에서Dev

GitLab CI의 다중 프로젝트 파이프 라인에서 작업 간 연결을 실행하는 방법

분류에서Dev

SonarQube를 추가 할 때 Azure Devops CI 파이프 라인 실패

분류에서Dev

다른 파이프 라인이 완료 될 때까지 실행될 때까지 대기 할 Azure DevOps 파이프 라인 작업

분류에서Dev

gitlab 파이프 라인 작업 실행 후 codemagic 빌드 실행

분류에서Dev

citrix 환경에서 Excel 파일이 실행될 때 vba 프로그램 실행 중지

분류에서Dev

Gitlab은 이전 작업이 실행 된 경우에만 파이프 라인 작업을 실행합니다.

분류에서Dev

ssh가 서버 + 명령 인수로 실행될 때 어떤 시작 프로파일이 실행됩니까?

분류에서Dev

내 함수가 파이프 라인에서 호출 될 때 환경 변수가 설정되지 않음

분류에서Dev

Gitlab CI : 특정 사용자가 커밋 할 때 파이프 라인을 트리거하지 않음

분류에서Dev

파이프 라인 실행을 클릭 할 때 Azure YAML 파이프 라인 변수가 표시되지 않음

분류에서Dev

목록 상자에 파일 내용을 입력하려고 할 때 프로그램이 실행될 때 멈춤

분류에서Dev

파이프 라인 객체에 래핑 될 때 PySpark StringIndexer input_col 매개 변수 변경

분류에서Dev

하위 모듈이 변경 될 때 파이프 라인을 트리거하는 방법은 무엇입니까?

분류에서Dev

GitLab CI-파이프 라인 단계의 pg_dump 오류

분류에서Dev

webpack2 및 webpack dev server-파일이 변경 될 때마다 쉘 명령 실행

분류에서Dev

React-native iOS 앱을위한 CI / CD 파이프 라인 빌드 : gitlab-ci에서 expo 빌드를 실행하는 방법은 무엇입니까?

분류에서Dev

모든 gitlab 내부 단계가 완료 될 때까지 gitlab 파이프 라인의 외부 단계를 "대기"하는 방법은 무엇입니까?

분류에서Dev

CI 파이프 라인이 예상대로 수행하는 경우에도 실패합니다.

분류에서Dev

gitlab CI / CD 파이프 라인에서 라이선스 검사 자동화

Related 관련 기사

  1. 1

    sh 파일이 Gitlab 파이프 라인에서 실행될 때 변수 값 숨기기

  2. 2

    gitlab ci cd 파이프 라인을 사용할 때 노드 js 앱의 환경 변수에 액세스

  3. 3

    파일이 변경 될 때마다 파일을 실행하고 싶습니다.

  4. 4

    Gitlab CI 파이프 라인 작업

  5. 5

    Gitlab CI 파이프 라인 실패 : 태그 문제

  6. 6

    gitlab-ci에서 트리거 파이프 라인 실패

  7. 7

    udpsrc 파이프 라인 이전에 udpsink 파이프 라인이 실행될 때 Gstreamer 1.0 비디오 없음

  8. 8

    Jenkins 파이프 라인이 중지 될 때 JUnit @After가 실행되지 않음

  9. 9

    gitlab-CI 파이프 라인 : 파일을 삭제하려고 할 때 lftp 오류 550

  10. 10

    Gitlab CI : Docker 및 Shell Runner를 사용하여 파이프 라인에서 테스트를 실행하는 방법

  11. 11

    GitLab CI의 다중 프로젝트 파이프 라인에서 작업 간 연결을 실행하는 방법

  12. 12

    SonarQube를 추가 할 때 Azure Devops CI 파이프 라인 실패

  13. 13

    다른 파이프 라인이 완료 될 때까지 실행될 때까지 대기 할 Azure DevOps 파이프 라인 작업

  14. 14

    gitlab 파이프 라인 작업 실행 후 codemagic 빌드 실행

  15. 15

    citrix 환경에서 Excel 파일이 실행될 때 vba 프로그램 실행 중지

  16. 16

    Gitlab은 이전 작업이 실행 된 경우에만 파이프 라인 작업을 실행합니다.

  17. 17

    ssh가 서버 + 명령 인수로 실행될 때 어떤 시작 프로파일이 실행됩니까?

  18. 18

    내 함수가 파이프 라인에서 호출 될 때 환경 변수가 설정되지 않음

  19. 19

    Gitlab CI : 특정 사용자가 커밋 할 때 파이프 라인을 트리거하지 않음

  20. 20

    파이프 라인 실행을 클릭 할 때 Azure YAML 파이프 라인 변수가 표시되지 않음

  21. 21

    목록 상자에 파일 내용을 입력하려고 할 때 프로그램이 실행될 때 멈춤

  22. 22

    파이프 라인 객체에 래핑 될 때 PySpark StringIndexer input_col 매개 변수 변경

  23. 23

    하위 모듈이 변경 될 때 파이프 라인을 트리거하는 방법은 무엇입니까?

  24. 24

    GitLab CI-파이프 라인 단계의 pg_dump 오류

  25. 25

    webpack2 및 webpack dev server-파일이 변경 될 때마다 쉘 명령 실행

  26. 26

    React-native iOS 앱을위한 CI / CD 파이프 라인 빌드 : gitlab-ci에서 expo 빌드를 실행하는 방법은 무엇입니까?

  27. 27

    모든 gitlab 내부 단계가 완료 될 때까지 gitlab 파이프 라인의 외부 단계를 "대기"하는 방법은 무엇입니까?

  28. 28

    CI 파이프 라인이 예상대로 수행하는 경우에도 실패합니다.

  29. 29

    gitlab CI / CD 파이프 라인에서 라이선스 검사 자동화

뜨겁다태그

보관