Research Request: Remote and Virtual Repositories
What’s this issue all about?
Most organizations pull (and push) packages to several different remote repositories. It's difficult for them to use GitLab's offering because it limits them to one local repository and forces developers to use the GitLab URL structure in scoping and naming all of their packages.
Artifactory and Nexus allow you to define an ordered list of these remote repositories in which to look for a given package and they each will cache previously fetched packages for faster, more reliable access in the future. These remote repositories then sit behind a virtual view called e.g. central. As an example, you can setup a virtual remote repository which Maven only asks once for https://artifactory.ourcompany.com/artifactory/central/. If it finds the GAV in local-releases, it will deliver it from there and otherwise walk through the remaining locals and caches
What hypotheses and/or assumptions do you have?
- By providing you with a view of several local and remote repositories, we will greatly simplify the life of the Admin, who no longer has to worry about development teams not correctly resolving their dependencies.
- Developers don't want to think about which remote they should pull a package from, they want to use a single endpoint and have the logic work seamlessly behind the scenes.
Assumptions
- That our competitors have similar offerings and our large customers ask us for this feature makes it a validated problem.
What questions are you trying to answer?
- What is the value for our customers of being able to proxy and cache dependencies from multiple repositories?
- Who is expected to manage and monitor the ordered list of remotes?
- What do developers want/expect from such a feature?
Additional questions
- How can we help folks migrate from Artifactory to GitLab?
- How should we handle duplicate package names on self-managed and on GitLab.com?
What persona, persona segment, or customer type experiences the problem most acutely?
Erin does not want to pay for Artifactory and wants to consolidate on GitLab. Sidney knows that their development teams rely on Artifactory to define and order a list of remote repositories so that developers can correctly resolve their dependencies, no matter where they are hosted. Erin is frustrated that they are forced to go another year before they can cancel Artifactory.
What business decisions will be made based on this information?
- Focus the Package team on building these new use cases and workflows into the Package Registry.
What, if any, relevant prior research already exists?
- Admin discussing why they can't rely on GitLab's Package Registry
- Admin discussing remote and virtual repositories
- Admin an enterprise customer explaining why it's hard for their team to adopt the Maven Repository 24:00
- Issue describing the challenge of adopting the NPM Registry due to the custom scopes we require
What timescales do you have in mind for the research?
Completed by April 15th
Who will be leading the research?
@trizzi (Product Manager Package)
Relevant links (opportunity canvas, discussion guide, notes, etc.)
WIP:Checklist
-
Product Manager: Draft the discussion guide. -
Product Designer: Create a screening survey in Qualtrics. -
Product Designer: Open a Recruiting request
issue. Assign it to the relevant Research Coordinator. -
Research Coordinator: Recruit and schedule participants. -
Product Manager: Invite the UX Research calendar and any other interested parties to the interviews. -
Product Manager: Conduct the interviews. -
Product Manager: Open an Incentives request
. Assign it to the relevant Research Coordinator. -
Research Coordinator: Pay participants. -
Product Manager and Product Designer: Synthesize the data and identify trends, resulting in findings. -
UX Researcher: Review findings and provide feedback, if needed. -
Product Manager or Product Designer: Create issues in the UXR_Insights project documenting the findings. -
UX Researcher: Sense check the documented findings. -
UX Researcher: Update the Problem validation
research issue. Link to findings in the UXR_Insights project. Unmark asconfidential
if applicable. Close issue.