bottlerocket-os / bottlerocket-os/twoliter

better support for multiple go.mod files

Open
#418 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Rust
Stars
34
Forks
43
Avg merge
11h 13m
Merged PRs (30d)
16

Description

In [soci-snapshotter](https://github.com/bottlerocket-os/bottlerocket-core-kit/blob/develop/packages/soci-snapshotter/Cargo.toml#L17) we have an example of a project with multiple `go.mod` files.

The way this is currently implemented in `buildsys`, we end up making two passes over the same unpacked external file, which is inefficient. Listing the same file twice is also not an obvious approach to packagers.

Fixing this might entail taking a list of paths in `bundle-root-path` instead of just one.

Contributor guide

Open the contributing guide

Research direction

Start with packages/soci-snapshotter/Cargo.toml#L17 to understand the multiple-go.mod example, then trace how buildsys handles bundle-root-path and unpacked external files. Done means one external file is not processed twice and packagers can express multiple paths without listing the same file twice.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, rust
Domain
build-system, tooling
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.