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

Officially supported or recommended way to use aptly with git #1426

Open
nullromo opened this issue Jan 24, 2025 · 1 comment
Open

Officially supported or recommended way to use aptly with git #1426

nullromo opened this issue Jan 24, 2025 · 1 comment
Assignees
Labels

Comments

@nullromo
Copy link

I am working on a project where multiple developers need to tweak the same aptly repo. What is the recommended way to do this?

For example, I have 2 mirrors that I set up, and I created a repo. I imported a bunch of packages from the mirrors into my repo. Now my coworker needs to replicate this setup, so they follow the same steps of creating the mirrors, creating a repo, and importing the same list of packages into their repo. But oops! They updated their mirrors today and I updated my mirror a few days ago, so now we actually have different versions of the mirrors.

What I tried was to create (A) a merged snapshot of all my mirrors, and (B) a repo with all the packages I want. Now I want to add either (A) or (B) to git so that my coworker can pull it and set up their repo with the exact same packages.

Is this possible? Should I use (A) or (B)? And how would I export either of them so that another person can use them?

Note: I also tried publishing the repo and adding the entire thing to git, but then the coworker cannot "import" that published repo into their aptly for further modification

@neolynx neolynx self-assigned this Jan 25, 2025
@nullromo
Copy link
Author

nullromo commented Mar 6, 2025

I did come up with a solution for now that I am working on implementing. I will post again to confirm it works.

  1. Push my entire downloaded mirror(s) to a remote server (currently in progress, will take a while).
  2. Create a snapshot or repo or published repo in the remote server (not sure which yet).
  3. Make the files in the remote server available via a webserver application. Basically hosting my own archive.
  4. Coworkers can use aptly to create their own mirrors from the server. They can use --filter-with-deps to avoid downloading the entire (100+ GB) mirror.
  5. Any coworker that creates their local mirror in this way should be able to create an identical repo. Each coworker can create their repo locally, modify it, publish it, and add the published repo to git.

The downside is that I require 100+ GB of server space to host this "frozen" version of the mirror. However, I think this is unavoidable. But at least we have the --filter and --filter-with-deps flags for mirrors, meaning each coworker does not need 100GB of aptly on their computer.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants