Connect dependencies of projects to `docker_build` ignore/only (possible integration with Nx Monorepo)
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 10.1k
- Forks
- 413
- Avg merge
- 1d 10h
- Merged PRs (30d)
- 6
Description
Describe the Feature You Want
Hey! I have a question.
Has anyone here tried Nx + PNPM workspaces + making sub packages + using those packages in your NodeJS app + tilt?
Nx gives you ways to manage your monorepo by building out a dependency graph, caching nodes, using that cache during builds, and exposes nice tooling for accessing this stuff (e.g. nx watch , nx build, nx run).
PNPM gives you a way to make relate packages across your repo (e.g. package.json + the workspace:* syntax).
We make packages and reuse them in our NodeJS projects, and we would like to be k8s native during local dev, and, naturally, that led us to Tilt.
Tilt's docker_build seems to be great at noticing the builds (tilt seems to be watching the Context window for Docker), but my shared package files exist in different places in the monorepo. This makes me have to push the monorepo root as context, which means i rebuild when any file changes.
I can try to control it with only or ignore but now i have to list the exact subpackages in the repo that it cares about. Ideally, tilt would already know.
(Possible Feature Request here)
Luckily, nx does know, and it would be great if i could pipe my project and its dependent subpackages automatically to tilt's ignore or only fields so it only rebuilds when it should, instead of whenever literally anything in the repo changes.
Has anyone faced this? How did you solve it? Is my feature request possible?
Current Behavior
Tilt has only/ignore which works, but users must manually manage dependencies rather than being automatic.
Why Do You Want This?
I would like to reduce the complexity of the Tiltfile management process for teams.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No files or tests are named. Start by examining Tilt's docker_build handling of the only and ignore fields, then compare that with the Nx dependency graph and PNPM workspace structure described here. Done would mean a clearly defined way to derive the relevant dependent packages automatically and verify that unrelated repository changes do not trigger rebuilds.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- nodejs
- Domain
- build-system, tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100