YouTrack 워크플로 API의 현황

Read this post in other languages:

2018년 9월, 기존 워크플로에 대한 지원이 YouTrack 2019.1에서 중단될 것이라고 알려드린 바 있습니다.

“기존” 워크플로라는 말은 버전 2018.3에서 지원 중단된 외부 애플리케이션인 이전 워크플로 에디터에서 작성된 워크플로를 의미합니다.

당사 고객 중 일부가 아직 이 기존 워크플로를 사용 중인 것으로 알고 있습니다. 당사의 기능 사용 통계에 따르면 YouTrack InCloud 인스턴스의 약 6.5%에서 하나 이상의 기존 워크플로가 사용되고 있습니다. 이 워크플로를 6개월 더 유지하기로 결정했습니다. 즉, 이러한 워크플로는 버전 2019.3을 시작으로 더 이상 작동하지 않습니다.

따라서, 가능한 빨리 기존 워크플로를 업그레이드할 것을 권장합니다. 이전 편집기를 더 이상 사용할 수 없게 되는(즉, 이전 규칙에서 어떤 내용도 변경할 수 없음) 이유에서만이 아니라 새로운 API가 훨씬 더 강력하고 편리하다는 점도 업그레이드가 필요한 이유입니다. 이전 API에서는 일부 새로운 기능이 지원되지 않습니다. 예를 들어, 액션 규칙을 실행할 수 없습니다.

워크플로 업그레이드를 하려면 다음 단계를 따라하시면 됩니다.

1. 현재 사용 중인 기존 워크플로가 있는지 확인해주세요. 이를 위해, YouTrack 서버의 Workflows 페이지로 이동하여 제목이 링크가 아닌 일반 텍스트로 보이는 워크플로가 있는지 확인합니다.

LegacyWorkflows

2. 이러한 기존 워크플로 중 일부에는 버전 2017.3 이전의 각 YouTrack 설치를 제공하는 데 사용된 워크플로가 포함될 수 있습니다. 이러한 워크플로의 이름은 “jetbrains-youtrack-“으로 시작합니다. 가능한 경우 새로운 워크플로 API로 자동 업그레이드를 수행하고 있지만, 이전 워크플로 에디터에서 편집된 일부 워크플로는 업그레이드할 수 없습니다.

수정하려고 한 적이 없었던 워크플로를 확인해주세요. 이러한 워크플로를 업그레이드하려면 해당 항목을 선택하고 “Restore Selected(선택 항목 복원)” 버튼을 클릭합니다.

RestoreWorkflow

3. 어떤 이유로 수정을 했었던 디폴트 워크플로가 있는 경우, 설명서의 Default Workflows(디폴트 워크플로) 섹션에서 해당 JS 워크플로를 가져와 적절하게 업데이트할 것을 권장합니다.

예를 들어, 수정된 메시지가 있는 “Due Date” 워크플로에서 “ “Don’t allow to submit issue without Due date set” rule(만료일 설정 없이 이슈를 제출하도록 허용 안 함)” 규칙을 사용하는 경우, 다음을 수행해야 합니다.

  • 당사의 웹 기반 에디터에서 워크플로를 만듭니다.
  • 새 모듈을 추가합니다.
  • 다음 규칙의 텍스트를 복사합니다.
  • 메시지를 편집합니다.
  • 워크플로를 저장하고 해당 프로젝트에 첨부합니다.

DueDateDefaultWorkflow

4. 다른 기존 워크플로는 공개 워크플로 저장소에서 올 수도 있습니다. 이러한 워크플로를 업그레이드하려면 저장소를 방문하여 해당 워크플로를 찾고, 이전 워크플로를 새 워크플로로 대체합니다.

Repository

5. 다른 기존 워크플로가 더 남아 있으면 이를 새 API로 다시 작성해야 합니다. 아직 이러한 워크플로로 작업하지 않은 경우, 웨비나를 시청하고 Quick Start Guide(빠른 시작 가이드)를 읽어볼 것을 권장합니다.

6. 재작성을 보다 빠르게 수행하도록 돕기 위해 워크플로 컨버터를 구현했습니다. 하지만 이 컨버터는 완전히 자동화되어 있기 때문에 여기서 생성되는 워크플로는 수작업으로 작성한 코드보다 품질이 낮습니다.

기존 워크플로를 업그레이드하려면:

WorkflowConverter

워크플로와 관련하여 질문이 있거나 도움이 필요한 경우, 당사 지원 팀에 연락하거나 YouTrack 커뮤니티 슬랙에 참여하세요. 언제나 도움을 받을 수 있습니다!

이 게시물은 Mariya Davydova가 작성한State of YouTrack Workflow APIs를 번역한 글입니다.

Discover more