mirror of
https://github.com/RGBCube/GitHub2Forgejo
synced 2025-07-25 20:27:45 +00:00
Fix deleting private repos on Gitea if we can't see private repos on GitHub
This commit is contained in:
parent
6b96755546
commit
fd315bdff5
1 changed files with 10 additions and 6 deletions
16
migrate.nu
16
migrate.nu
|
@ -36,7 +36,6 @@ def main [] {
|
|||
-H [ Authorization $"token ($github_token)" ])
|
||||
} else {
|
||||
http get $"https://api.github.com/users/($github_user)/repos?per_page=100?page=($page_nr)"
|
||||
exit
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -65,6 +64,7 @@ def main [] {
|
|||
http get $"($gitea_url)/api/v1/user/repos"
|
||||
-H [ Authorization $"token ($gitea_token)" ]
|
||||
| filter { get mirror }
|
||||
| filter { ($github_token != "") and not $in.private }
|
||||
)
|
||||
|
||||
let gitea_not_on_github = ($gitea_mirrored_repos | filter { not ($in.name in $github_repo_names) })
|
||||
|
@ -75,20 +75,24 @@ def main [] {
|
|||
(http delete $"($gitea_url)/api/v1/repos/($gitea_repo.full_name)"
|
||||
-H [ Authorization $"token ($gitea_token)" ])
|
||||
|
||||
print $" (ansi green)Success!(ansi reset)"
|
||||
print $" (ansi green_bold)Success!(ansi reset)"
|
||||
}
|
||||
}
|
||||
|
||||
# Mirror repos that do exist on GitHub to Gitea.
|
||||
$github_repos | each {|github_repo|
|
||||
print --no-newline $"(ansi blue)(
|
||||
$strategy | str capitalize | str replace "ed" "ing"
|
||||
) (
|
||||
[ $"(ansi green)public(ansi blue)(char space)" $"(ansi red)private(ansi blue)" ] | get ($github_repo.private | into int)
|
||||
) repository (ansi purple)($github_repo.html_url)(ansi blue) to (ansi white_bold)($gitea_url)/($gitea_user)/($github_repo.name)(ansi blue)...(ansi reset)"
|
||||
|
||||
let github_repo_url = if not $github_repo.private {
|
||||
$github_repo.html_url
|
||||
} else {
|
||||
$"https://($github_token)@github.com/($github_user)/($github_repo.name)"
|
||||
$"https://($github_token)@github.com/($github_repo.full_name)"
|
||||
}
|
||||
|
||||
print --no-newline $"(ansi blue)($strategy | str capitalize | str replace "ed" "ing") ([ public private ] | get ($github_repo.private | into int)) repository ($github_repo_url) to ($gitea_url)/($gitea_user)/($github_repo.name)...(ansi reset)"
|
||||
|
||||
let response = (
|
||||
http post $"($gitea_url)/api/v1/repos/migrate"
|
||||
--allow-errors
|
||||
|
@ -111,7 +115,7 @@ def main [] {
|
|||
} else if ($error_message != null) {
|
||||
print $" (ansi red)Unknown error: ($error_message)(ansi reset)"
|
||||
} else {
|
||||
print $" (ansi green)Success!(ansi reset)"
|
||||
print $" (ansi green_bold)Success!(ansi reset)"
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue