CodeCargo logo

Migration Plan

Decide Destinations

Decide Destinations

Decide destinations shows where the plan's repositories land. You see how many already have a destination org, a tile for each org, and the projects as a table or a flow. Names that more than one repository would take in the same org are settled here, before a move.

Opening the step

You need the Migration Assistant manage permission. The Migration Plan is available on CodeCargo plans that include it. If you do not see it, contact your CodeCargo administrator.

What Has a Destination

You see how many repositories and projects the plan holds, and how many repositories have no destination org yet. The projects with the most of those are listed. Open one and send it to an org from its panel.

A repository can wait without a destination until it is in a wave. Done when counts how many are still open.

Org Tiles

Each destination org is a tile. It shows the org's name and color, the same state as on the org layout, how many repositories it takes, and the projects that send it the most. When a wave needs the org, the tile shows that date and why. The plan's building block home is marked.

Select a tile to focus the page on that org.

95% of repositories have a destination org: tiles for acme-platform 11, acme-data 12, acme-commerce 10, acme-oss 1, acme-mobile (planned) 7 and Not decided yet 2, each with its share, and a note that 2 projects reference other orgs a lot, with Show the 2.

The Projects

The projects are a paged table, or a flow of where they go.

Open a project to see its panel, and send it to an org from there, as on Plan Projects. Filter the table by Names used twice in its org to see projects that share a name in the org they land in.

The flow shows the 12 biggest projects and the orgs their repositories go to. Smaller projects are shown together. Repositories with no destination yet are shown with no org.

Projects that reference another org a lot are listed with those links. Resolve one on Cross-org References.

Names Used Twice

GitHub keeps one repository of a given name in an org. When more than one repository headed to the same org would get one name, that org is listed here. The check is among the plan's repositories. It does not include names GitHub already has in an org nothing has moved into.

The name is the one the move would give the repository, from the naming pattern on its source connection. Change the pattern, and these names follow it. With no pattern, the name is the repository's own. GitHub ignores case, and keeps only letters, digits, ., _, and -, so Order Service and order-service are the same name. The same name in two orgs is not a clash.

Each repository that would share a name gets its project's name in front when it moves. A common-lib in the payments project becomes payments-common-lib. For each org you see how many names are used twice, an example of that rename, and how many names would still be shared after it.

Keep the project names in front for that org. The org is settled when you keep them and no name is still used twice. Done when counts the orgs that are not settled yet.

When the project name is not enough

Putting the project name in front cannot separate two repositories in the same project, and a renamed repository can match a name another repository already has. Give one of them a different destination on Plan Repositories.

Plan Repositories can list the repositories that share a name in an org.