Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature: Explicit dependency management #801

Open
ewollesen opened this issue May 13, 2022 · 0 comments
Open

Feature: Explicit dependency management #801

ewollesen opened this issue May 13, 2022 · 0 comments

Comments

@ewollesen
Copy link
Contributor

At present, dependency management between projects is limited and implicit.

As an example, the harbor project is dependent on the distribution project. How is that dependency specified? It's a combination of non-obvious Makefile magic: Loc #1 and Loc #2 and Loc #3.

There is, at present, no way to specify any sort of version for the dependency. This means that Loc 3 above is ordering-dependent. If distribution isn't built before harbor, then harbor could be built with the incorrect version of distribution. That requirement isn't explicitly captured anywhere.

If the two projects are built in parallel, then the dependency is again possibly broken (e.g. make -j$(nproc) build-all-projects).

While the current system is functional, it seems very unlikely that it will be able to meet the future needs of the EKS-A Curated Packages team. Having the means to specify dependencies in an explicit manner, including versions or build identifiers will be important.

As an added bonus, we may be able to safely parallelize builds for a potential speedup.

/cc @jaxesn @vincentni

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

No branches or pull requests

1 participant