posit-dev / posit-dev/connect-actions

Investigate Quarto installation needs for `quarto-shiny` app mode

Open
#65 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
1
Forks
0
Avg merge
1h 44m
Merged PRs (30d)
4

Description

Context

In #64, we added Quarto installation support for quarto-static content (the quarto deploy subcommand requires quarto inspect locally). The quarto-shiny app mode currently maps to the shiny deploy subcommand, so we don't install Quarto for it.

However, it's unclear whether rsconnect-python (via posit connect deploy shiny) needs a local Quarto installation to render/inspect the .qmd before deploying a quarto-shiny app, or whether Connect handles that entirely server-side.

Questions to answer

  • Does posit connect deploy shiny for a quarto-shiny app require a local Quarto installation (e.g., for quarto inspect or rendering)?
  • If so, should we install Quarto when the app_mode is quarto-shiny in addition to quarto-static?

Current behavior

In src/connect_actions/apptype.py, quarto-shiny maps to deploy type shiny with needs_quarto=False:

APP_MODE_TO_TYPE: dict[str, str] = {
    ...
    "quarto-static": "quarto",
    "quarto-shiny": "shiny",
}

Action items

  • Test deploying a quarto-shiny app through the deploy action without Quarto installed locally
  • If it fails, update resolve_app_type() to set needs_quarto=True for quarto-shiny
  • Add an e2e test for quarto-shiny if support is needed

References

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start in src/connect_actions/apptype.py and review how quarto-shiny currently maps to the shiny deploy type with needs_quarto=False. Test a quarto-shiny deployment through the deploy action without a local Quarto installation; done means either confirming the current behavior or updating resolve_app_type() and adding the requested end-to-end test if Quarto is required.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
devops
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
50/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.