Skip to content

Stage examples/ and compat/ in app deploy scripts - #500

Closed
sundarleads wants to merge 1 commit into
databrickslabs:mainfrom
sundarleads:fix/deploy-app-stage-examples-compat
Closed

sundarleads wants to merge 1 commit into
databrickslabs:mainfrom
sundarleads:fix/deploy-app-stage-examples-compat

Conversation

@sundarleads

Copy link
Copy Markdown

The app crashes on start after deploying with scripts/deploy_app.sh. start.sh builds the wheel with setup.py, and setup.py now needs examples/ (for the MCP templates) and compat/. The deploy scripts don't copy either folder, so the build fails with:

error: Cannot package MCP examples: expected examples/json and examples/yml ... missing ['json', 'yml'].

This adds both folders to the list in deploy_app.sh and deploy_app.ps1, plus a small test that checks the lists against setup.py so this doesn't drift again.

Tested by deploying the app before and after the change. I haven't run the .ps1 on Windows, but it's the same two entries.

setup.py needs both folders to build the wheel, but deploy_app.sh and deploy_app.ps1 only copied src, demo, integration_tests and databricks_app. The wheel build in start.sh then fails on missing examples/json and examples/yml, and the app crashes right after deploy.

Added both folders to the list in each script and a test that checks the lists against setup.py.
@CLAassistant

CLAassistant commented Oct 22, 2026 •

Copy link
Copy Markdown

CLA assistant check
All committers have signed the CLA.

@ravi-databricks

Copy link
Copy Markdown
Contributor

Thank you for the contribution and for adding coverage for the staging allow-lists.

Could you please retarget this PR to the issue_500 branch instead of main? That branch contains the related app-deployment work and will make it easier to validate the complete fix together.

There is one additional issue to address before this can resolve the startup failure: both examples/ and compat/ are currently excluded in .databricksignore. Because the deployment scripts stage .databricksignore and databricks sync honors it, adding these directories to APP_RUNTIME_DIRS / $RuntimeDirs alone can still omit them from the deployed App filesystem.

Please also remove the following exclusions from .databricksignore:

-compat/
-examples/

It would be useful to extend the new staging test to verify that every directory required by the wheel build is not excluded by the staged .databricksignore, so this cannot regress through the sync layer.

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.

3 participants