Skip to content

Add a CI workflow that publishes prebuilt desktop bundles for ShinyApps (no app code changes) - #31

Open
fentouxungui wants to merge 1 commit into
glotaran:mainfrom
fentouxungui:add-workflow
Open

fentouxungui wants to merge 1 commit into
glotaran:mainfrom
fentouxungui:add-workflow

Conversation

@fentouxungui

Copy link
Copy Markdown

What is ShinyApps?

ShinyApps is a free, community-run desktop app store for Shiny applications
(https://github.com/fentouxungui/ShinyApps, catalog: https://fentouxungui.github.io/ShinyApps/catalog.json).
It packages an app with a pinned R runtime into a self-contained desktop bundle
(Windows x64 and macOS arm64), so people without R can install and run it in one click.

Why this PR?

paramGUI is listed in the store, which needs a reproducible prebuilt artifact.
This PR adds one CI-only workflow file (.github/workflows/build-app-bundle.yml).
It does not touch application code, DESCRIPTION, tests, or data.

On each v* tag it installs the dependency closure into a private library, builds
self-contained bundles for Windows x64 and macOS arm64 (R 4.6.1), runs a smoke test that
actually starts the app, and attaches both zips to a GitHub Release.

Impact

  • One YAML file; no source changes and no app-logic review.
  • Runs only on tag pushes (about 10-20 minutes per platform).
  • The store entry links back to this repository as the source.

Test evidence

The app is launched from its directory with shiny::runApp(); it does not depend on
runApp() being called inside the bundle.

If accepted

The catalog entry can point at this official repository instead of the mirror. If you would
rather not have this in your repository, close the PR and I will remove the store entry.

Licensing

The workflow only builds and redistributes the project's own source under its existing license.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant