기능 설명:
워크플로우 단계를 복사하고 붙여 넣을 때, 단계 이름을 유지합니다.
이렇게 하면 워크플로우에서 복사한 내용을 사용할 때 작업량이 줄어듭니다.
현재 동작:
새로운 “Workflows” 코어 플러그인을 사용하면서, 다른 워크플로우나 같은 워크플로우의 다른 곳에서 했던 것과 유사한 내용을 구현해야 하는 경우가 자주 발생했습니다. 다행히도 이 플러그인은 단계의 복사 및 붙여 넣기를 지원합니다.
불행히도, 붙여 넣을 때 단계 이름은 기본값으로 초기화됩니다. 단계의 기능을 명확하게 전달하기 위해 사용자 지정 단계 이름을 사용하는 것을 선호합니다. 따라서 붙여 넣기 작업을 수행한 후 추가된 각 단계를 다시 이름 붙여야 합니다. 이는 워크플로우에 오류를 도입할 위험도 있습니다. 왜냐하면 단계 이름은 후속 단계에서 해당 단계의 출력을 참조하는 데 사용되는 식별자이기 때문입니다(예: $("Foo step").first().json.bar).
재현 단계:
- 새 “Workflows” 플러그인이 활성화된 사이트에서 관리자 권한이 있는 Discourse 포럼 계정으로 로그인합니다.
- “Workflows” 페이지(
/admin/plugins/discourse-workflows/workflows)를 엽니다. - “+ New workflow” 버튼을 클릭합니다.
새 워크플로우가 생성됩니다. - + 버튼을 클릭합니다.
“Add step” 패널이 열립니다. - 패널에서 Flow > If를 선택합니다.
ⓘ 이 특정 단계 유형을 임의로 선택했습니다. 이름 초기화 동작은 모든 단계 유형에서 발생합니다. - 새로 추가된 “If” 단계를 더블 클릭합니다.
단계의 구성 다이얼로그가 열립니다. - 다이얼로그의 왼쪽 위 모서리 근처, 단계 이름 오른쪽의 연필 아이콘(“Edit”)을 클릭합니다.
단계 이름이 편집 가능한 텍스트 필드가 됩니다. - 단계 이름 필드에
Foo step을 입력합니다. - 필드 오른쪽의 ✓ 아이콘을 클릭합니다.
이름 변경이 커밋됩니다. - 다이얼로그의 오른쪽 위 모서리에서 X 아이콘을 클릭합니다.
다이얼로그가 닫힙니다. - “Foo step” 단계를 마우스 오른쪽 버튼으로 클릭합니다.
컨텍스트 메뉴가 열립니다. - 메뉴에서 "Copy"를 선택합니다.
- 페이지 상단 근처의 “Workflows” 탭을 선택합니다.
“Workflows” 페이지가 열립니다. - “+ New workflow” 버튼을 클릭합니다.
새 워크플로우가 생성됩니다. - 워크플로우 캔버스를 마우스 오른쪽 버튼으로 클릭합니다.
컨텍스트 메뉴가 열립니다. - 메뉴에서 "Paste"를 선택합니다.
붙여 넣은 단계의 이름은 기본값인 "If"입니다.
Discourse 버전:
1a47bbf0af779342d6762eadb6da07f9ecf68717
추가 컨텍스트:
단계가 소스 워크플로우에 붙여 넣어지는 경우, 단계 이름을 그대로 유지하면 이름 충돌이 발생한다는 점을 이해하고 있습니다. Workflows 플러그인은 일반적으로 단계를 추가할 때 충돌할 수 있는 단계 이름에 숫자 접미사를 추가하여 고유한 이름을 보장합니다. 이 방식을 붙여 넣기 기능에도 적용할 수 있습니다. 대안적으로, 사용자가 단계에서 고유하지 않은 이름을 수동으로 설정할 때 이미 수행되고 있는 것처럼, 충돌을 알리는 다이얼로그를 표시할 수도 있습니다:
An error occurred: Node names must be unique within a workflow. Duplicates: Foo step