PXFLOW 공유·게시·HTML 삽입
이 페이지는 계산 흐름과 승인된 결과를 링크 또는 외부 HTML로 전달하는 V2 제품 흐름을 설명합니다.
V2 제품 계획
Share·Publish·Embed는 V2 협업·게시·전달 계획에 포함됩니다. 이 페이지는 사람·링크 접근, immutable Publication Version, Viewer와 EmbedDelivery의 제품 사용 절차를 정의합니다.
V2 제품 흐름에서는 아래 표에서 목적에 맞는 Share, Publish 또는 Embed를 고릅니다.
Publication·Embed UI
| UI 위치 | 관리하는 것 | 원본과의 관계 |
|---|---|---|
| PXFLOW 상단 Share → People & link | 최신 원본에 대한 사람·링크 접근 | 같은 Flow의 current head 사용 |
| Share → Publish | 바뀌지 않는 읽기 전용 게시본 | 선택한 Flow 저장 상태와 공개 결과를 고정 |
| Share → Embed | View/App 종류, 사용할 게시본, 허용 site와 표시 설정 | 읽기 전용 Viewer 또는 실행 가능한 App을 전달 |
| Viewer·Embed 상태 | Published, Uses older version, Suspended 등 | 원본 저장 상태와 별도 lifecycle |
게시본과 앱 배포 기록은 history에서 확인합니다. 내용을 바꾸려면 원본 Flow에서 시작해 새 게시본이나 배포를 만들고, 기존 Embed를 바꿀 때는 Use this version을 직접 선택합니다.
공유, 게시와 앱 배포는 서로 다른 작업입니다.
| 하고 싶은 일 | 선택할 기능 | 상대방이 할 수 있는 일 |
|---|---|---|
| 같은 Project에서 계속 함께 작업 | Share → Viewer, Commenter 또는 Editor | 부여받은 권한 범위에서 최신 상태 열기 |
| 검토할 버전을 바뀌지 않게 전달 | Publish → View only | 고정된 PXFLOW 보기 |
| 블로그나 위키에 계산 흐름 표시 | Embed → PXFLOW View | 팬·줌·검색과 설명 확인 |
| 웹페이지에서 값을 입력하고 계산 실행 | Embed → PXFLOW App | 허용된 입력과 실행 사용 |
| 다른 사용자가 자기 작업으로 수정 | Make a copy 또는 Use as template | 별도 사본 편집 |
Marketplace에서 독립 사본을 만들 템플릿을 확보하려면 템플릿 시작하기를 따르세요. source Project를 함께 편집할 때는 Share를 사용합니다.
실행 가능한 화면은 Active App Deployment를 공유하고, 계산 흐름만 보여 줄 때는 읽기 전용 Publication을 선택합니다.
화면에서 바로 공유하기
같은 Project에서 함께 작업
Share → People & link에서 사람을 초대하고 Viewer, Commenter 또는 Editor 역할을 고릅니다. 같은 링크에서 저장된 최신 상태를 계속 보게 됩니다.
검토할 내용을 바뀌지 않게 전달
Share → Publish에서 포함할 Flow와 결과를 확인한 뒤 Publish version을 선택합니다. 상태가 Published가 되면 읽기 전용 Viewer 링크를 복사합니다.
웹 페이지에 표시
Share → Embed에서 다음 중 하나를 선택합니다.
- PXFLOW View: 고정된 Flow와 결과를 읽기 전용으로 표시합니다.
- PXFLOW App: 사용자가 값을 입력하고 계산할 수 있는 배포된 앱을 표시합니다.
사용할 게시본 또는 앱 배포와 허용 사이트를 확인한 뒤 미리 보기에서 검토하고 코드를 복사합니다.
개발자·운영자 참고
읽기 전용 게시 주소 관리하기
SDK/API 기술 이름은 Publication입니다. 하나의 읽기 전용 게시 주소와 공개 범위, lifecycle, 현재 활성 Publication Version을 관리합니다. 원본 PXFLOW를 계속 편집해도 같은 publicationKey 아래에서 검토한 게시본만 공개할 수 있습니다.
| 만들기·관리 경로 | 사용자가 하는 일 | 화면에서 확인하는 것 |
|---|---|---|
| Share → Publish | Flow revision, 포함할 결과·근거와 audience 검토 후 Publish version | Publication 이름·Published 상태·현재 version·viewer link |
pxlab publication plan | exact Flow와 public-safe closure, 권한·license 영향 검토 | planRef와 planDigest |
pxlab publication publish | 검토한 digest로 게시 요청 | stable Publication과 새 immutable version |
pxlab publication plan \
--workspace <workspace_key> \
--project <project_key> \
--flow <flow_key> \
--publication-key <publication_key> \
--audience <workspace|unlisted|public>
pxlab publication publish <plan_ref> \
--confirm-digest sha256:<reviewed_plan_digest>
pxlab publication status <publication_key>2
3
4
5
6
7
8
9
10
11
V2 UI 계약: Share → Publish 상단은 stable Publication의 이름, audience와 상태를 보여 주고, 그 아래 version history에서 현재 viewer가 사용하는 exact version을 표시합니다.
특정 시점의 게시본 확인하기
SDK/API 기술 이름은 PublicationVersion입니다. 게시 시점의 exact PXFLOW revision과 공개 가능한 dependency·result·evidence를 고정한 변경되지 않는 전달본입니다. 같은 Publication에서 Publish new version을 실행할 때마다 새 기록이 추가되고, 검증이 끝나면 현재 게시본이 한 번에 전환됩니다.
pxlab publication versions <publication_key>새 version을 만들 때는 위 Publication의 plan과 publish를 같은 publicationKey로 다시 실행합니다. Plan은 현재 활성 version과 새 후보의 차이를 보여 줍니다.
| Share → Publish의 version 행 | 의미 |
|---|---|
| version·게시 시각·작성자 | 검토할 전달본 식별 |
| exact Flow revision·포함 결과 | Viewer가 표시하는 고정 내용 |
| Current·Older version 상태 | 현재 링크가 가리키는 version과 이전 기록 구분 |
| Viewer link | 그 version의 읽기 전용 화면 확인 |
외부 웹 페이지 전달 설정 확인하기
SDK/API 기술 이름은 EmbedDelivery입니다. 외부 웹페이지가 exact PublicationVersion 또는 Active DeploymentRevision을 iframe으로 열도록 관리하는 전달 설정입니다. target, 접근 방식, 허용 HTTPS origin, 표시 설정과 lifecycle을 하나의 embedKey로 관리합니다.
Share → Embed에서 다음 순서로 만듭니다.
- PXFLOW View 또는 PXFLOW App을 선택합니다.
- 사용할 exact Publication Version 또는 Active Deployment Revision을 고릅니다.
- access와 Allowed websites를 확인합니다.
- Preview와 설정 저장을 마친 뒤 Copy embed code를 선택합니다.
CLI에서는 target 종류에 맞는 Plan을 만든 뒤 검토한 digest로 적용합니다.
읽기 전용 PXFLOW View
pxlab embed plan \
--workspace <workspace_key> \
--embed-key <embed_key> \
--publication <publication_key> \
--version <publication_version> \
--access <public|unlisted|authenticated> \
--origin <https_origin>...2
3
4
5
6
7
실행 가능한 PXFLOW App
pxlab embed plan \
--workspace <workspace_key> \
--project <project_key> \
--flow <flow_key> \
--embed-key <embed_key> \
--app <surface_key> \
--environment <environment_key> \
--access <public|unlisted|authenticated> \
--origin <https_origin>...2
3
4
5
6
7
8
9
pxlab embed apply <plan_ref> \
--confirm-digest sha256:<reviewed_plan_digest>
pxlab embed snippet <embed_key>2
3
4
View Plan은 --version으로 지정한 Publication Version을 고정합니다. App Plan은 선택한 Workspace·Project·Flow·App·environment의 현재 Active Deployment Revision을 resolve해 exact target을 Plan에 표시합니다.
V2 UI 계약: Embed detail은 target kind와 exact version, access, allowed origins, Active·Uses older version·Suspended 상태를 함께 표시합니다. 새 버전을 Preview하고 Use this version을 선택하면 같은 embedKey가 참조하는 exact target이 선택한 version으로 바뀝니다. SDK/API의 CAS 동시성 제어에서는 이 변경 때 내부 generation이 증가합니다.
읽기 전용으로 공유하기
최신 상태를 계속 보여 주기
Project 구성원이나 지정한 사람에게 현재 PXFLOW를 계속 보여 주려면 다음 순서로 공유합니다.
- PXFLOW Studio 상단에서 Share를 선택합니다.
- People with access에서 사람을 초대하거나 Link access를 켭니다.
- 역할을 Viewer로 선택합니다.
- 다운로드를 허용할지 확인합니다. 기본값은 Off입니다.
- 설정 저장이 완료된 뒤 링크를 복사합니다.
Viewer는 저장된 최신 버전을 열 때마다 권한을 다시 확인받습니다. 나중에 편집 내용이 바뀌면 같은 링크에서도 새 상태가 보입니다. 정확한 검토 기록이 필요하다면 최신 상태 링크 대신 고정 버전을 게시하세요.
특정 버전을 고정해서 보여 주기
설계 검토, 승인 기록이나 외부 전달처럼 내용이 바뀌면 안 되는 경우에는 읽기 전용 버전을 게시합니다.
- PXFLOW Studio 상단에서 Share를 선택합니다.
- Publish 탭으로 이동합니다.
- 포함할 Flow revision과 결과를 확인합니다.
- 실행 기능이 고정된 View only 표시를 확인합니다.
- 공개 범위를 선택합니다.
- Publish version을 선택합니다.
- 상태가 Published가 되면 보기 링크를 복사합니다.
게시한 버전은 exact PXFLOW revision과 결과를 유지합니다. 새 내용을 반영하려면 Publish new version으로 변경 사항과 포함 범위를 다시 확인합니다.
읽기 전용 화면에서 가능한 작업
읽기 전용 PXFLOW Viewer는 공유를 위해 구성된 전용 화면입니다.
| 가능 | 불가능 |
|---|---|
| 캔버스 팬·줌과 전체 보기 | Node 이동·추가·삭제 |
| Node와 연결 선택 | 연결 변경과 저장 |
| Node 설명, input·result 타입과 단위 확인 | Flow 실행 |
| 이름으로 Node·input·result 검색 | AI 편집 명령 |
| 게시할 때 포함한 결과와 근거 확인 | 비밀값·서버 경로·원본 소스 열기 |
| 키보드용 목록 보기와 전체 화면 | 권한 없이 복사·다운로드 |
보기 화면은 게시자가 선택한 Result와 공개 가능한 dependency만 표시하고 결과 위치를 설명합니다.
HTML에 PXFLOW 삽입하기
1. 삽입할 화면 선택하기
PXFLOW Studio 상단에서 Share → Embed를 엽니다.
- PXFLOW View: 계산 구조를 읽기 전용으로 보여 줍니다. 고정된 View-only Publication을 사용합니다.
- PXFLOW App: 사용자가 값을 입력하고 계산을 실행할 수 있습니다. Active 상태의 App Deployment가 필요합니다.
2. 사용할 버전 선택하기
PXFLOW View에서는 게시된 버전 중 하나를 선택합니다. 아직 게시된 버전이 없다면 현재 상태를 확인한 뒤 Publish view-only version을 선택합니다.
PXFLOW App에서는 Active 상태의 Deployment Revision을 선택합니다. 현재 PXFLOW에 배포되지 않은 변경 사항이 있으면 다음 두 상태가 함께 표시됩니다.
- App is active — 지금 웹에서 실행 중인 버전
- Changes not deployed — 원본에는 있지만 실행 주소에 반영되지 않은 변경
임베드는 선택한 exact 버전을 사용합니다. 새 버전으로 바꿀 때는 Preview한 뒤 Use this version을 선택합니다.
기존 App Embed는 고정한 버전을 계속 제공합니다. 새 App 버전을 배포한 뒤 Use this version으로 확인하고 전환하세요. 소유자가 이전 배포 버전을 종료하려고 하면 영향받는 Embed가 먼저 표시됩니다.
3. 접근 범위와 허용 사이트 정하기
| 화면 표시 | 의미 |
|---|---|
| Public | 누구나 열 수 있습니다. 검색 노출은 별도 설정입니다. |
| Anyone with link | 주소를 아는 사람만 열 수 있습니다. 민감한 자료 보호 수단으로 사용하지 않습니다. |
| Signed in | 로그인하고 권한이 있는 사람만 열 수 있습니다. |
그다음 PXFLOW를 삽입할 사이트를 등록합니다.
https://docs.example.com
https://engineering.example.com:84432
경로는 넣지 않고 https scheme, host와 필요한 port만 입력합니다. 실행 가능한 PXFLOW App은 허용 사이트 목록이 반드시 필요합니다. 공개 읽기 전용 Viewer에 한해 Allow any website를 명시적으로 선택할 수 있습니다.
4. 표시 방법 정하기
기본 설정은 대부분의 문서에 맞도록 구성되어 있습니다.
- 너비: 부모 영역에 맞춤
- 높이: 520px
- 시작 화면: 전체 Flow 맞춤
- 도구 모음: Compact
- 테마: 페이지 설정 따르기
- 전체 화면: 허용
작은 영역에서도 Viewer가 먼저 전체 Flow를 맞춰 보여 주고, 사용자가 팬·줌으로 세부 내용을 확인할 수 있습니다.
5. 코드 복사하기
Copy embed code를 선택하고 HTML을 허용하는 게시물에 붙여 넣습니다. 화면에 생성된 코드를 그대로 사용하는 것이 가장 안전합니다.
<iframe
src="https://embed.pipelinexlab.com/e/ed_7Km2pQ9vR4"
title="Girder design PXFLOW"
loading="lazy"
style="width:100%;min-height:520px;border:0"
sandbox="allow-scripts allow-same-origin"
referrerpolicy="strict-origin-when-cross-origin"
allowfullscreen>
</iframe>2
3
4
5
6
7
8
9
ed_7Km2pQ9vR4는 설명을 위한 불투명 임베드 주소 예시입니다. 관리 화면에서 보이는 embedKey나 PXFLOW 이름을 주소로 사용하지 않습니다. 주소가 노출되었거나 접근 범위를 바꾸면 제품에서 새 주소로 교체할 수 있습니다.
PXFLOW App에는 입력 제출에 필요한 권한이 반영된 별도 코드가 생성됩니다. View용 코드의 URL이나 sandbox 값을 수동으로 바꿔 App처럼 실행시키지 마세요.
HTML을 허용하지 않는 게시 도구에서는 Copy viewer link를 사용합니다. iframe을 표시할 수 없는 브라우저를 위해 삽입 화면에도 항상 Open PXFLOW in a new tab 링크가 제공됩니다.
게시한 버전 업데이트하기
임베드 주소는 유지하면서 내용을 바꾸려면 다음 순서로 진행합니다.
- 원본 PXFLOW에서 변경 사항을 저장합니다.
- Share → Publish에서 Publish new version을 선택합니다.
- dependency, 결과와 공개 범위를 다시 확인합니다.
- Share → Embed에서 새 버전을 Preview합니다.
- Use this version을 선택합니다.
새 버전은 한 번에 전환됩니다. 문제가 있으면 이전 게시 버전으로 다시 전환할 수 있습니다.
게시 공개 범위를 바꿀 때는 그 버전을 사용하는 Embed도 함께 확인합니다. 새 범위보다 넓은 Embed가 있으면 제품이 목록을 보여 주며, 각 Embed의 접근 범위를 함께 줄이거나 일시 중지해야 변경을 완료할 수 있습니다. 공개 범위를 넓혀도 기존 Embed가 자동으로 더 공개되지는 않습니다.
공유와 임베드 상태 확인하기
Share 화면은 상태를 다음 영역별 badge로 보여 줍니다.
| 영역 | 화면에 보이는 상태 | 의미와 다음 작업 |
|---|---|---|
| People & link | No access, People invited, Viewer link active | 사람·역할·링크 만료와 다운로드 권한 관리 |
| Publication | Draft, Published, Suspended, Withdrawn · Changes not published | stable 게시 주소·audience·현재 version 관리 |
| Publication version build | Preparing, Pending, Ready, Failed, Cancelled | 다음 immutable version의 준비·검증 상태 확인 |
| Embed | Draft, Active, Suspended, Withdrawn · Uses older version, Expired | 허용 사이트·고정 target·만료 확인, 갱신 또는 새 Embed 생성 |
| App deployment | Not deployed, Provisioning, Active, Changes not deployed, Failed, Withdrawn | 실행 버전·사용량 확인, 재배포 또는 복구 |
예를 들어 Published Publication은 Viewer link를 제공하고, 외부 사이트 삽입은 EmbedDelivery를 만들 때 시작됩니다. 앱 배포와 읽기 전용 Publication은 각각의 lifecycle로 관리되며 원본 PXFLOW도 별도로 유지됩니다.
Local 파일을 공유할 때
컴퓨터에만 저장된 .pxflow에서 Share, Publish 또는 Embed를 선택하면 먼저 Cloud에 올릴 고정 사본을 준비합니다.
- Cloud Workspace에 올릴 고정 사본과 dependency를 보여 줍니다.
- 제외되는 로컬 경로, 비밀값과 권한을 알려 줍니다.
- 업로드할 버전을 사용자가 확인합니다.
- 업로드가 끝나면 처음 선택한 작업으로 돌아갑니다.
- People & link: Cloud 사본에 사람 또는 링크 권한을 설정합니다.
- Publish: 읽기 전용 Publication Version을 만듭니다.
- PXFLOW View Embed: Publication Version을 만든 뒤 EmbedDelivery를 설정합니다.
- PXFLOW App Embed: 배포된 앱 버전을 선택하거나 App 배포를 먼저 완료한 뒤 EmbedDelivery를 설정합니다.
원래 Local 파일과 Cloud 사본은 각각 유지됩니다. 이후 Local 변경을 게시할 때는 새 버전을 명시적으로 업로드하세요.
공유를 중지하거나 사이트를 변경하기
- 사람의 접근을 끊으려면 Share → People with access에서 권한을 제거합니다.
- 링크를 무효화하려면 Link access → Turn off를 선택합니다.
- 읽기 전용 게시를 종료하려면 Publication → Withdraw를 선택합니다.
- 특정 사이트에서만 제거하려면 Embed → Allowed websites에서 그 origin을 삭제합니다.
- 모든 사이트의 임베드를 즉시 멈추려면 Embed → Suspend 또는 Withdraw를 선택합니다.
- 실행 화면을 중지하려면 Deployment → Withdraw를 사용합니다. 읽기 전용 Publication은 자동으로 함께 종료되지 않습니다.
철회가 완료되면 이미 열린 Viewer와 iframe도 권한을 다시 확인하고 종료 화면으로 전환합니다. 브라우저 cache나 이전 세션이 계속 내용을 제공하도록 두지 않습니다.
문제가 있을 때
웹페이지에서 빈 화면이 보입니다
사이트 주소가 Allowed websites에 정확히 등록되어 있는지 확인하세요. http와 https, port가 다르면 서로 다른 origin입니다.
임베드 허용 사이트를 확인하세요
현재 부모 사이트가 Allowed websites 목록에서 빠져 있습니다. 임베드 설정에 사이트를 추가하거나 Viewer 링크를 새 탭으로 여세요.
로그인 화면이 반복됩니다
브라우저가 iframe 안의 로그인 session을 제한할 수 있습니다. Open in new tab에서 한 번 로그인한 뒤 돌아오거나 조직의 브라우저 정책을 확인하세요.
예전 계산 흐름이 보입니다
원본 저장과 게시 버전 변경은 별도입니다. Share 화면에서 Changes not published와 Embed가 사용하는 version을 확인하세요.
PXFLOW App 실행 문제 해결하기
Embed가 선택한 앱 버전이 아직 제공 중인지, 계정에 실행 권한과 남은 사용량이 있는지 확인하세요. 읽기 전용 Viewer는 정상적으로 Run 버튼을 제공하지 않습니다.
저장 위치 확인
.pxflow에는 Flow와 선택적인 App Surface 정의가 들어 있습니다.- 공유 URL, 허용 사이트, token, 사용자 권한과 현재 배포 상태는 서비스가 관리합니다.
- Share·Publish·Embed 화면에서 전달 설정을 만들고 변경합니다. 별도 YAML이나 sidecar manifest는 필요하지 않습니다.
- 원본 소스 공개, 편집 권한, 결과 공개와 실행 권한은 각각 별도로 확인합니다.