Skip to content

add model picker page cli and wiki upload and customer deployment interface #162

Open
Cemberk wants to merge 1 commit into
developfrom
model_picker
Open

add model picker page cli and wiki upload and customer deployment interface #162
Cemberk wants to merge 1 commit into
developfrom
model_picker

Conversation

@Cemberk

@Cemberk Cemberk commented Jul 22, 2026

Copy link
Copy Markdown

@Cemberk
Cemberk requested a review from gargrahul as a code owner July 22, 2026 16:01
Copilot AI review requested due to automatic review settings July 22, 2026 16:01

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a new “setup picker” HTML page generator to madengine, exposed via a madengine setup-page CLI command and a GitHub Actions workflow to publish a generated page to GitHub Pages (including support for external target repos). It also introduces a workload entrypoint dispatcher and wires it into the run workflow’s scripts/common copy/cleanup behavior.

Changes:

  • Introduces madengine setup-page to generate a self-contained model/context “setup picker” HTML page.
  • Adds a workload entrypoint dispatcher (run_workload.sh) and ensures scripts/common/entrypoints/ is copied/cleaned during runs.
  • Adds a GitHub Actions workflow to generate and deploy a setup page for an external repo to GitHub Pages.

Reviewed changes

Copilot reviewed 10 out of 10 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
src/madengine/setup_page/templates/setup_page.html.j2 New self-contained UI that builds a madengine run command from schema-driven selections.
src/madengine/setup_page/schema.py Defines the context-variable schema, sections, and workload definitions used by the generator/UI.
src/madengine/setup_page/generator.py Collects models and renders the template into a single HTML page payload.
src/madengine/setup_page/init.py Exposes setup-page generator APIs from the new package.
src/madengine/scripts/common/entrypoints/run_workload.sh Adds an agnostic workload dispatcher intended for use via encapsulate_script.
src/madengine/orchestration/run_orchestrator.py Ensures scripts/common/entrypoints/ is copied into model dirs and cleaned up.
src/madengine/cli/commands/setup_page.py New Typer command implementation for madengine setup-page.
src/madengine/cli/commands/init.py Exports the new setup_page command.
src/madengine/cli/app.py Registers the setup-page command with the CLI app.
.github/workflows/setup-page-external.yml Workflow to generate a setup page for an external repo and deploy it to GitHub Pages.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +144 to +147
env = Environment(
loader=FileSystemLoader(_TEMPLATE_DIR),
autoescape=select_autoescape(["html", "xml"]),
)
Comment on lines +49 to +52
--workload)
WORKLOAD="${2:-run}"
shift 2
;;
Comment on lines +58 to +64
- name: Checkout target repo
uses: actions/checkout@v4
with:
repository: ${{ inputs.target_repo }}
ref: ${{ inputs.target_ref }}
token: ${{ secrets.SETUP_PAGE_TOKEN || github.token }}
path: target
Comment on lines +27 to +31
def setup_page(
output: Annotated[
str,
typer.Option("--output", "-o", help="Output HTML file path"),
] = "index.html",
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.

2 participants