Repository navigation
fix: Skip draft verification for rendered and static content - #883
Merged
Merged
Conversation
|
☂️ Python Coverage
Overall Coverage
New FilesNo new covered files... Modified Files
|
nealrichardson
commented
Oct 27, 2026
Activating a draft makes Connect render it again, so verify-before-activate rendered documents twice. Rendered and static content is deployed and activated in one step, as with --no-verify; Connect reverts to the previous bundle if the activating render fails. --draft still verifies the draft. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The draft preview URL only serves what the deploy task already rendered, so verifying it can't catch anything. Rendered and static content is deployed as a draft with --draft but never verified. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
nealrichardson
force-pushed
the
npr-872
branch
from
November 5, 2026 00:02
c536dc8 to
f465c4e
Compare
joshyam-k
approved these changes
Nov 5, 2026
nealrichardson
added a commit
that referenced
this pull request
Nov 5, 2026
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
nealrichardson
added a commit
that referenced
this pull request
Nov 5, 2026
…#915) * Require GUIDs for Connect content; add --guid to deploy and preflight Remove the legacy numeric content ID path (app_get, get_content_by_id, ContentItemV0) and use content_get directly. An explicit --app-id for a Connect target must be a content GUID. Add --guid to the deploy commands and preflight as the Connect-specific way to target existing content. It conflicts with --app-id and --new, and is rejected for Connect Cloud and shinyapps.io targets. Fixes #881 Fixes #885 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * fix: isolate shinyapps --guid test from CONNECT_API_KEY env Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * review: clarify deploy git error when the given content GUID is not found The GUID may come from --guid or --app-id, and --new cannot be combined with either, so suggest omitting the ID instead. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * review: cover and document the SPCS --app-id/--guid fix Deploying to Connect in SPCS with an explicit content GUID failed on main with "Unable to infer Connect client." because validate_app_mode() did not treat SPCSConnectServer as Connect. Add tests for the GUID lookup, the app-mode mismatch check, and numeric-ID rejection on SPCS, plus a CHANGELOG entry. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * test: use the content GUID from the shared deploy routes in #883's test Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #872.
What
Since #805,
rsconnect deployof rendered content renders twice by default: once when the draft is deployed, and again when the draft is activated. The verify request in between can't catch anything the first render didn't.Rendered and static content (
rmd-static,quarto-static,jupyter-static,static) is now deployed and activated in one step, the same as with--no-verify. This is safe because Connect reverts to the previous bundle if an activating render fails.--draftstill deploys a draft, but doesn't verify it: the draft URL only serves what the deploy task already rendered. Apps and APIs keep the draft → verify → activate flow.Changes
api.py:RSConnectExecutor.is_rendered_contentreads the app mode from the bundle's manifest, not the mode passed on the command line. The command-line mode can be wrong here:deploy notebook --staticproduces astaticbundle, anddeploy quartopassesquarto-staticeven for Shiny documents.should_verify(), whichshould_deploy_as_draft()now uses. It returns false for rendered content, with or without--draft.verify_and_activate()replaces the verify/activate block that was duplicated across 10 deploy commands inmain.py. It activates only when a draft was actually deployed.main.py: the deploy commands callverify_and_activate(), and the--no-verifyand--drafthelp text mention the rendered-content behavior.test_deploy_rendered_content_without_verifying, which runs with and without--draft.Promoting the preview render on activation (option 2 in the issue) would need a Connect change. It would also fix the UI's "Activate Draft" button, which this PR doesn't affect.
🤖 Generated with Claude Code