github / gh-gei

Migration CLI for GitHub to GitHub migrations
MIT License
303 stars 81 forks source link

Print hyperlink to newly created repo #1132

Open begonaguereca opened 10 months ago

begonaguereca commented 10 months ago

Description

I was very excited to see that my logs indicated a successful repo migration! I was left to scramble to remember what GitHub org I had indicated that I wanted my repo migrated into.

I see that a migration log is hyperlinked. @timrogers have you found that this is useful to customers?

Perhaps another easy feature upgrade would be to hyperlink the URL of the newly migrated repository in GitHub. Feels like an easy click to see your newly migrated repo <3

This is currently what we output:

begonaguereca@Begonas-MacBook-Pro Octoshift % gh ado2gh migrate-repo --ado-org "valet-testing" --ado-team-project "build-playground" --ado-repo "forecast-regression-test" --github-org "import-testing" --github-repo "build-playground-forecast-regression-test"
[2023-10-12 10:57:57] [INFO] You are running the latest version of the ado2gh CLI [v1.2.0]
[2023-10-12 10:57:57] [INFO] ADO ORG: valet-testing
[2023-10-12 10:57:57] [INFO] ADO TEAM PROJECT: build-playground
[2023-10-12 10:57:57] [INFO] ADO REPO: forecast-regression-test
[2023-10-12 10:57:57] [INFO] GITHUB ORG: import-testing
[2023-10-12 10:57:57] [INFO] GITHUB REPO: build-playground-forecast-regression-test
[2023-10-12 10:57:57] [INFO] Migrating Repo...
[2023-10-12 10:58:02] [INFO] Migration in progress (ID: RM_kgDaACQxYmE5MTM1YS1iNTczLTRkNmMtOGU2OS04MTU0NmVhOTM0ZTc). State: PENDING_VALIDATION. Waiting 10 seconds...
[2023-10-12 10:58:12] [INFO] Migration in progress (ID: RM_kgDaACQxYmE5MTM1YS1iNTczLTRkNmMtOGU2OS04MTU0NmVhOTM0ZTc). State: IN_PROGRESS. Waiting 10 seconds...
[2023-10-12 10:58:23] [INFO] Migration in progress (ID: RM_kgDaACQxYmE5MTM1YS1iNTczLTRkNmMtOGU2OS04MTU0NmVhOTM0ZTc). State: IN_PROGRESS. Waiting 10 seconds...

[2023-10-12 11:00:39] [INFO] Migration completed (ID: RM_kgDaACQxYmE5MTM1YS1iNTczLTRkNmMtOGU2OS04MTU0NmVhOTM0ZTc)! State: SUCCEEDED
[2023-10-12 11:00:39] [INFO] Migration log available at https://objects-origin.githubusercontent.com/octoshiftmigrationlogs/import-testing/build-playground-forecast-regression-test-1ba9135a-b573-4d6c-8e69-81546ea934e7-logs.txt?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=octoshiftstoragedev%2F20231012%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20231012T180030Z&X-Amz-Expires=432000&X-Amz-Signature=cb6b264c9aab9ebc8679eb4bebbfdea3c6c8b204b5fbd06c9b28dd6fc118496f&X-Amz-SignedHeaders=host or by running `gh ado2gh download-logs --github-target-org import-testing --target-repo build-playground-forecast-regression-test`
begonaguereca commented 10 months ago

Here is what the current "migration logs" look like:

[2023-10-12T18:38:26Z] INFO -- Migration started by begonaguereca from https://dev.azure.com/valet-testing/ethanis-labs/_git/ethanis-labs to import-testing/ethanis-labs-ethanis-labs
[2023-10-12T18:38:26Z] INFO -- Migration ID: 25050c8b-5f55-4f94-9e35-20402ad29556
[2023-10-12T18:38:26Z] INFO -- -----------------------------
[2023-10-12T18:38:27Z] INFO -- Git source migration started
[2023-10-12T18:38:34Z] INFO -- Git source migration completed
[2023-10-12T18:38:34Z] INFO -- -----------------------------
[2023-10-12T18:38:34Z] INFO -- Extraction started
[2023-10-12T18:39:36Z] INFO -- Extraction complete
[2023-10-12T18:39:36Z] INFO -- -----------------------------
[2023-10-12T18:39:36Z] INFO -- Transformation started
[2023-10-12T18:39:43Z] INFO -- Transformation complete
[2023-10-12T18:39:43Z] INFO -- -----------------------------
[2023-10-12T18:39:44Z] INFO -- Import started
[2023-10-12T18:39:57Z] INFO -- Import complete
[2023-10-12T18:39:57Z] INFO -- -----------------------------
[2023-10-12T18:39:57Z] INFO -- Migration complete
[2023-10-12T18:39:57Z] INFO -- -----------------------------

They look the same for single and bulk migration. Unsure if it is useful for a customer.

I think printing hyperlink to the org in a bulk migration would be another easy win!

dylan-smith commented 10 months ago

IMO for the migration log hyperlink I'd rather us link to the issue in the target repo that contains the migration log (instead of a file on blob storage). That might kill 2 birds with one stone as now you also have a hyperlink to the newly migrated repo also.

timrogers commented 10 months ago

I think linking to the newly-created repo would be a really nice idea - and very easy to implement ❤️

I also like the idea of linking to the Migration Log issue rather than the raw blob - although maybe having the raw blob is useful in case people want to programatically download it and ingest it? 🤔 I also have a feeling that there might have been something hard about doing that - like maybe the creation of the log issue was some kind of async process in the background?