Support reading/writing Publisher `.posit/` deployment records (in addition to `rsconnect-python/*.json`)
維護者通常 1 天內回覆
評估
這個 Issue 還沒有評估資料。
描述
Summary
rsconnect-python and the Posit Publisher (VS Code extension) currently track deployments in two mutually exclusive, incompatible formats. A directory deployed with one tool is invisible to the other, so the two toolchains can't collaborate on the same content. I'd like rsconnect-python to be able to read (and eventually write) the Publisher's .posit/ records so all of our deployment tooling speaks the same language.
Current behavior
Deploying the same app two ways produces two independent record sets that neither tool reconciles:
Publisher (.posit/publish/) — TOML, with a public versioned schema:
.posit/publish/<config>.toml— configuration (posit-publishing-schema-v3.json).posit/publish/deployments/<deployment>.toml— deployment record (posit-publishing-record-schema-v3.json), includingserver_url, contentid/GUID,bundle_id,dashboard_url,direct_url, deployed files, requirements, etc.
rsconnect-python (rsconnect-python/<name>.json) — JSON keyed by server URL, with app_id, app_guid, app_url, app_mode, app_store_version.
Because rsconnect-python only knows about its own rsconnect-python/*.json store, a re-deploy via the CLI won't find or update the Publisher's record (and creates a separate piece of content rather than updating the existing one).
Requested behavior
- On deploy/redeploy, have
rsconnect-pythondetect an existing.posit/directory and use those records to resolve the target server + existing content (GUID/id) for update-in-place. - Treat this as an addition, not a replacement of the existing
rsconnect-python/*.jsonbehavior initially, so we can begin transitioning without breaking existing workflows. - The Publisher schema is public and versioned, which makes it a good shared source of truth:
- Config:
https://cdn.posit.co/publisher/schemas/posit-publishing-schema-v3.json - Record:
https://cdn.posit.co/publisher/schemas/posit-publishing-record-schema-v3.json
- Config:
Why
The Publisher approach is considered the better/preferred way of recording deployments, and aligning rsconnect-python on it means the CLI, the VS Code extension, and other tooling share one deployment source of truth instead of drifting into incompatible records for the same content.
Related issues / prior art
| # | Repo · Issue | State | Why it's relevant |
|---|---|---|---|
| 1 | posit-dev/connect#36981 — feat: Support Publisher configuration files | open | The closest match. Proposes Connect natively consuming the Publisher .posit/ config + deployment-record TOML (same v3 schema) and building manifest.json from it — the server-side counterpart to making all tools speak the Publisher format. |
| 2 | posit-dev/publisher#3376 — feat: Integrate credential storage with rsconnect-python |
closed | Direct precedent for Publisher ↔ rsconnect-python interoperability (sharing credential state). Shows the two tools are already being aligned; this issue extends the same idea to deployment records. |
| 3 | posit-dev/connect#29965 — Feat: Include provenance of deployment in metadata and UI | open | About tracking which tool/source produced a deployment — relevant to reconciling multiple record sources into one source of truth. |
| 4 | posit-dev/rsconnect-python#817 — Add support for publishing to Posit Connect Cloud | open | Adjacent: expands rsconnect-python's deployment targets/records, which intersects with how/where deployment state is stored. |
- 主要語言
- Python
- 星號
- 38
- 分支
- 28
- 平均合併
- 1 天 7 小時
- 30 天內合併 PR
- 14
環境準備
- 沒有 Dockerfile 或 Docker Compose 檔案
- 有 Pull Request 範本
- 閱讀貢獻指南
從這裡開始
- 先讀完整個 Issue,再讀專案的貢獻指南。
- 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
- Fork 儲存庫,在一個分支上完成修改。
- 送出 Pull Request,並在描述裡引用這個 Issue 編號。
posit-dev/rsconnect-python 的其他 Issue
-
難度 2/5 1-3 小時 新手友好度 78/100
posit-dev/rsconnect-python#786 · 1 個 reaction ·
維護者通常 1 天內回覆
-
難度 2/5 1-3 小時 新手友好度 62/100
posit-dev/rsconnect-python#543 · 2 則留言 ·
維護者通常 1 天內回覆
-
難度 1/5 1 小時以內 新手友好度 72/100
posit-dev/rsconnect-python#513 ·
維護者通常 1 天內回覆
-
難度 2/5 1-3 小時 新手友好度 65/100
posit-dev/rsconnect-python#178 ·
維護者通常 1 天內回覆
-
難度 3/5 1-2 天 新手友好度 45/100
posit-dev/rsconnect-python#872 · 1 則留言 ·
維護者通常 1 天內回覆
查看 posit-dev/rsconnect-python 的全部 Issue
相似的 Issue
-
Edit tool converts CRLF files to LF可能已有人在做 @RaphaelFakhri 今天認領。 未關閉
難度 2/5 1-3 小時 新手友好度 68/100
huggingface/tau#774 ·
維護者通常 1 天內回覆
-
show ignores the row limit when a column or table name contains "limit"可能已有人在做 @RaphaelFakhri 今天認領。 未關閉
難度 2/5 1-3 小時 新手友好度 88/100
維護者通常 1 天內回覆
-
難度 2/5 1-3 小時 新手友好度 84/100
維護者通常 2 天內回覆
-
documentation good first issue
難度 2/5 1-3 小時 新手友好度 82/100
維護者通常 1 天內回覆
-
難度 2/5 1-3 小時 新手友好度 74/100
eclipse-score/inc_someip_gateway#356 ·
維護者通常 2 天內回覆