Skip to content

fix(apps): deploy every function when an App is split across files - #710

Merged
KAJdev merged 4 commits into
mainfrom
zeke/con-2067-directory-deploy-drops-every-resource-when-the
Nov 11, 2026
Merged

KAJdev merged 4 commits into
mainfrom
zeke/con-2067-directory-deploy-drops-every-resource-when-the

Conversation

@KAJdev

@KAJdev KAJdev commented Nov 10, 2026 •

Copy link
Copy Markdown
Contributor

Splitting an App across files could deploy it with none of its functions.

# app.py
app = runpod.App("svc")

# workers.py
from app import app

@app.queue(cpu="cpu3c-1-2")
def gen(x): ...

rp flash deploy . on this project could exit 0 with zero functions and delete the live endpoints. app.py was loaded twice under two module names, which made two Apps, and the empty one was deployed.

Now project files load under their normal Python import names, so every file shares one App and gen deploys. A package keeps its folder in the artifact, so from .app import app also works on the worker.

Deploy now stops before building when a file fails to import, when two files create separate Apps with the same name, or when an App has no functions. Each of those previously shipped a partial app, and a partial deploy removes whatever endpoints are missing from it.

rp flash dev now takes a folder the same way deploy does, so both commands see the same functions. A local entrypoint is optional, and --entrypoint module:function picks one when a project has several. A broken edit during a session keeps the current endpoints up until the next good save.

Refs CON-2067.

Comment thread runpod/apps/discovery.py Resolved
Comment thread runpod/apps/discovery.py Resolved
@KAJdev KAJdev changed the title fix(apps): preserve project identity across dev and deploy fix(apps): deploy every function when an App is split across files Nov 10, 2026
Comment thread runpod/apps/discovery.py Resolved
Comment thread runpod/apps/discovery.py Resolved
Comment thread runpod/apps/discovery.py Resolved
Comment thread runpod/apps/discovery.py Resolved
@KAJdev
KAJdev requested a review from deanq November 10, 2026 23:28
Comment thread runpod/apps/source.py Resolved
@KAJdev
KAJdev merged commit b71bd96 into main Nov 11, 2026
9 checks passed
@KAJdev
KAJdev deleted the zeke/con-2067-directory-deploy-drops-every-resource-when-the branch November 11, 2026 00:49
@promptless

promptless Bot commented Nov 11, 2026

Copy link
Copy Markdown

Promptless documentation updates

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