공부하면서/Azure

[Azure] DevOps Service TF401019

omelette master 2022. 10. 26. 00:16

[TF401019]

yaml
remote: TF401019: The Git repository with name or identifier {SUBMODULE} does not exist or you do not have permissions for the operation you are attempting.
  • 상황: DevOps 서비스에서 git submodule을 사용하는 프로젝트에서 발생했음



- submodule 활성화 방법은 checkout 설정하는 부분에 submodules: true를 해준다.

steps:
  - checkout: self
    submodules: true
    persistCredentials: true
  • 사용할 소스에도 submodule 추가 해준다 (참고로 상대 경로를 입력해도 적용된다)
git submodule add --name {SUBMODULE_NAME} {SUBMODULE_REPO} {SUBMODULE_DIR}
# submodule에 대한 파일이 생성 된다
git add .
git commit ~
git push {Azure Repos}
  • 이후 pipeline을 실행하면 TF401019 오류가 발생


[해결 방법]

  • Organization Settings → Pipelines → Settings(General) 에 접근 후 두개 의 슬라이드 비활성화

(disable) Limit job authorization scope to current project for non-release pipelines
(disable) Protect access to repositories in YAML pipelines

  • Project Settings → Pipelines → Settings(General) 에 접근 후 두개 의 슬라이드 비활성화

(disable) Limit job authorization scope to current project for non-release pipelines
(disable) Protect access to repositories in YAML pipelines

  • 이후 파이프라인 재 실행

나의 경우에는 Protect access to repositories in YAML pipelines만 해제 해줘도 돌아갔음



심심해서 비활성화 한후 실행되는거 보고 다시 활성화 해봤을때 .git에 정보가 남아 있어서 그런지 이후로 잘 된다
물론 .git 까지 삭제 해버리면 다시 해줘야 한다ㅋㅋ