From 4e73d7c80f6613ad037294cd0d1e85a01b242fb8 Mon Sep 17 00:00:00 2001 From: "marco.locatelli@steamware.net" Date: Fri, 3 Oct 2025 11:09:05 +0200 Subject: [PATCH 1/8] Nuova Funzione RotateOldLog e introduzione in CheckGitlabMirroring --- ApiGit/ApiGitResources/ApiScriptsConfig.ps1 | 12 ++++++++---- ApiGit/ApiGitResources/ApiScriptsFunctions.ps1 | 18 ++++++++++++++++++ ApiGit/Mirrors/CheckGitlabMirroring.ps1 | 9 +++++++-- ApiGit/Mirrors/GitlabCreateMissingMirrors.ps1 | 4 ++-- ApiGit/Misc/CheckGitlabProtectedBranches.ps1 | 4 ++-- .../ReposCreationAzzanoNembro.ps1 | 12 ++++++------ ApiGit/ReposCreation/ReposCreationGitea.ps1 | 4 ++-- ApiGit/ReposCreation/ReposCreationGogs.ps1 | 4 ++-- 8 files changed, 47 insertions(+), 20 deletions(-) diff --git a/ApiGit/ApiGitResources/ApiScriptsConfig.ps1 b/ApiGit/ApiGitResources/ApiScriptsConfig.ps1 index 4fc048f..4b65d93 100644 --- a/ApiGit/ApiGitResources/ApiScriptsConfig.ps1 +++ b/ApiGit/ApiGitResources/ApiScriptsConfig.ps1 @@ -12,7 +12,7 @@ $userName = "replica" #### CONF GITLAB AZZANO #### #destinazione mirror per azzano $destinationAzzano = "gitlab-azzano.steamware.net" -#token autenticazione utente replica azzano creato a gennaio 2024, scadenza 31 dicembere 2024 +#token autenticazione utente replica azzano $tokenAzzano = "glpat-tCyVnkDQb3uB_yFywQtK" #access token per autenticazione gitlab-azzano $azzanoHead = @{"PRIVATE-TOKEN" = "$($tokenAzzano)" } @@ -20,7 +20,7 @@ $azzanoHead = @{"PRIVATE-TOKEN" = "$($tokenAzzano)" } #### CONF GITLAB NEMBRO #### #destinazione mirror per nembro $destinationNembro = "gitlab-nembro.steamware.net" -#token autenticazione utente replica nembro creato a gennaio 2024, scadenza 31 dicembere 2024 +#token autenticazione utente replica nembro $tokenNembro = "glpat--9NqsusKLmHdF8z1kU9t" #access token per autenticazione gitlab-nembro $nembroHead = @{"PRIVATE-TOKEN" = "$($tokenNembro)" } @@ -32,8 +32,10 @@ $giteaDestination = "gitea.steamware.net" $giteaUser = "replica" #autenticazione replica gitea $giteaPass = "viadante16" +#token autenticazione utente replica gitea +$tokenGitea = "e6e6944da93bbaf230e4223012035f2cd55d27a6" #access token per autenticazione gitea da profilo replica -$giteaHead = @{"Authorization" = "token 3619817f299bb3d92c8a8f86d5fddbe877b60ffa" } +$giteaHead = @{"Authorization" = "token $($tokenGitea)" } #### CONF gogs.steamware.net #### #destinazione mirror per gogs @@ -42,8 +44,10 @@ $gogsDestination = "gogs.steamware.net" $gogsUser = "replica" #password replica gogs $gogsPass = "viaDante16!" +#token autenticazione utente replica gogs +$tokenGogs = "bb6d8e9a4d76445e33b12e1664140043fdaa8d87" #access token per autenticazione gogs da profilo replica -$gogsHead = @{"Authorization" = "token bb6d8e9a4d76445e33b12e1664140043fdaa8d87" } +$gogsHead = @{"Authorization" = "token $($tokenGogs)" } #### CONF LOG #### #cartella file di log diff --git a/ApiGit/ApiGitResources/ApiScriptsFunctions.ps1 b/ApiGit/ApiGitResources/ApiScriptsFunctions.ps1 index 0c4581a..6d5af88 100644 --- a/ApiGit/ApiGitResources/ApiScriptsFunctions.ps1 +++ b/ApiGit/ApiGitResources/ApiScriptsFunctions.ps1 @@ -15,6 +15,24 @@ Function WriteLogOutput { } } +#rotazione file .log in .old +Function RotateOldLog { + $logPath = Join-Path $logFolder $logFile + $oldLogPath = Join-Path $logFolder $oldLogFile + #se file .old esiste sposto contenuto di attuale .log in coda a attuale .old e cancello attuale .log + if (Test-Path $logPath){ + if (Test-Path $oldLogPath) { + $from = Get-Content -Path $logPath + Add-Content -Path $oldLogPath -Value $from + Remove-Item -Path $logPath + } + #se file .old non esiste rinomino attuale file.log in file.old + else { + Get-ChildItem $logPath | Rename-Item -NewName { $_.Name -replace '.log','.old' } + } + } +} + #creazione nuovo mirror Function FreshMirrorCreation { Param ($projectNumber, $user, $auth, $destination, $path) diff --git a/ApiGit/Mirrors/CheckGitlabMirroring.ps1 b/ApiGit/Mirrors/CheckGitlabMirroring.ps1 index 7882040..791b7a7 100644 --- a/ApiGit/Mirrors/CheckGitlabMirroring.ps1 +++ b/ApiGit/Mirrors/CheckGitlabMirroring.ps1 @@ -15,7 +15,7 @@ $mainStopWatch = [system.diagnostics.stopwatch]::StartNew() #contatore ciclo do while $projectCount = 1 #numero massimo di progetti da analizzare -$projectNumber = 250 +$projectNumber = 10 #conteggio progetti trovati $existingProjects = 0 #conteggio mirroring in errore @@ -24,14 +24,19 @@ $mirrorErrorsCount = 0 $mirrorSuccessCount = 0 #nome file di log $logFile = "GitlabMirroring.log" +#nome file di log old +$oldLogFile = "GitlabMirroring.old" -#creazione folder di Log se non già esistente +#creazione folder di Log se non esiste if (Test-Path $logFolder) { } else { New-Item $logFolder -ItemType Directory } +#rotazione vecchio logFile da .log a .old se esiste +RotateOldLog + #scrivo intestazione e inizio analisi WriteLogOutput $logFile 0 "--------------------" Switch ($logLevel) { diff --git a/ApiGit/Mirrors/GitlabCreateMissingMirrors.ps1 b/ApiGit/Mirrors/GitlabCreateMissingMirrors.ps1 index 601f995..d7e4c20 100644 --- a/ApiGit/Mirrors/GitlabCreateMissingMirrors.ps1 +++ b/ApiGit/Mirrors/GitlabCreateMissingMirrors.ps1 @@ -13,9 +13,9 @@ $startTime = (Get-Date).toString("yyyy/MM/dd HH:mm:ss") # avvio stopwatch $mainStopWatch = [system.diagnostics.stopwatch]::StartNew() #contatore ciclo do while -$projectCount = 200 +$projectCount = 1 #numero massimo di progetti da analizzare -$projectNumber = 250 +$projectNumber = 300 #nome file di log $logFile = "NewMirrorsCreation.log" diff --git a/ApiGit/Misc/CheckGitlabProtectedBranches.ps1 b/ApiGit/Misc/CheckGitlabProtectedBranches.ps1 index 1fb19c5..3c0bbc9 100644 --- a/ApiGit/Misc/CheckGitlabProtectedBranches.ps1 +++ b/ApiGit/Misc/CheckGitlabProtectedBranches.ps1 @@ -47,9 +47,9 @@ WriteLogOutput $logFile 0 "Inizio Esecuzione Script: $startTime" WriteLogOutput $logFile 0 "" WriteLogOutput $logFile 0 "Gitlab di Destinazione: $gitlabIstance" -#specifica quale installazione di gitlab va controllata +#specifica quale installazione di gitlab va controllata (old) #$remote = "Nembro" -#$remote = "Azzano" +#$remote = "Azzano" $locations = @('Nembro','Azzano') diff --git a/ApiGit/ReposCreation/ReposCreationAzzanoNembro.ps1 b/ApiGit/ReposCreation/ReposCreationAzzanoNembro.ps1 index 955c725..a44927a 100644 --- a/ApiGit/ReposCreation/ReposCreationAzzanoNembro.ps1 +++ b/ApiGit/ReposCreation/ReposCreationAzzanoNembro.ps1 @@ -13,15 +13,15 @@ $startTime = (Get-Date).toString("yyyy/MM/dd HH:mm:ss") # avvio stopwatch $mainStopWatch = [system.diagnostics.stopwatch]::StartNew() #contatore ciclo do while -$projectCount = 200 +$projectCount = 1 #numero massimo di progetti da analizzare (messo a 1 per "sicura inserita" siccome questo script è potenzialmente pericoloso) -$projectNumber = 250 +$projectNumber = 300 #nome file di log $logFile = "AzzanoNembroReposCreation.log" #specifica quale installazione di gitlab va controllata -#$remote = "Nembro" -$remote = "Azzano" +$remote = "Nembro" +#$remote = "Azzano" if ($remote -eq "Nembro"){ $gitlabIstance = $destinationNembro @@ -65,9 +65,9 @@ do { #dichiaro un body da convertire in JSON con il nome del repo da creare $body = @{ - #name = $($parsedGitlabResponse.name); name = $($parsedGitlabResponse.path); - #(namespace_id 19 è Egalware) + #name = $($parsedGitlabResponse.name); + #namespace_id 19 è il gruppo Egalware namespace_id = 19 } #scrivo il nome del progetto nel terminale e su file diff --git a/ApiGit/ReposCreation/ReposCreationGitea.ps1 b/ApiGit/ReposCreation/ReposCreationGitea.ps1 index deb0afb..7b40652 100644 --- a/ApiGit/ReposCreation/ReposCreationGitea.ps1 +++ b/ApiGit/ReposCreation/ReposCreationGitea.ps1 @@ -12,9 +12,9 @@ $startTime = (Get-Date).toString("yyyy/MM/dd HH:mm:ss") # avvio stopwatch $mainStopWatch = [system.diagnostics.stopwatch]::StartNew() #contatore ciclo do while -$projectCount = 200 +$projectCount = 1 #numero massimo di progetti da analizzare -$projectNumber = 250 +$projectNumber = 300 #nome file di log $logFile = "GiteaReposCreation.log" diff --git a/ApiGit/ReposCreation/ReposCreationGogs.ps1 b/ApiGit/ReposCreation/ReposCreationGogs.ps1 index 3fab824..1d24570 100644 --- a/ApiGit/ReposCreation/ReposCreationGogs.ps1 +++ b/ApiGit/ReposCreation/ReposCreationGogs.ps1 @@ -12,9 +12,9 @@ $startTime = (Get-Date).toString("yyyy/MM/dd HH:mm:ss") # avvio stopwatch $mainStopWatch = [system.diagnostics.stopwatch]::StartNew() #contatore ciclo do while -$projectCount = 200 +$projectCount = 1 #numero massimo di progetti da analizzare -$projectNumber = 250 +$projectNumber = 300 #nome file di log $logFile = "GogsReposCreation.log" From 400114d6643755198e9a3151de085845ab361b52 Mon Sep 17 00:00:00 2001 From: "marco.locatelli@steamware.net" Date: Fri, 3 Oct 2025 12:42:23 +0200 Subject: [PATCH 2/8] minor fix --- ApiGit/Mirrors/CheckGitlabMirroring.ps1 | 12 +++---- ApiGit/Misc/CheckGitlabProtectedBranches.ps1 | 36 ++++++++------------ 2 files changed, 20 insertions(+), 28 deletions(-) diff --git a/ApiGit/Mirrors/CheckGitlabMirroring.ps1 b/ApiGit/Mirrors/CheckGitlabMirroring.ps1 index 791b7a7..f197919 100644 --- a/ApiGit/Mirrors/CheckGitlabMirroring.ps1 +++ b/ApiGit/Mirrors/CheckGitlabMirroring.ps1 @@ -13,9 +13,9 @@ $startTime = (Get-Date).toString("yyyy/MM/dd HH:mm:ss") # avvio stopwatch $mainStopWatch = [system.diagnostics.stopwatch]::StartNew() #contatore ciclo do while -$projectCount = 1 +$projFirst = 1 #numero massimo di progetti da analizzare -$projectNumber = 10 +$projLast = 250 #conteggio progetti trovati $existingProjects = 0 #conteggio mirroring in errore @@ -50,8 +50,9 @@ WriteLogOutput $logFile 0 "Percorso log: $logFolder" WriteLogOutput $logFile 0 "" WriteLogOutput $logFile 0 "Inizio Esecuzione Script: $startTime" -#ciclo principale do/while che cicla da 1 a N projectNumber -do { + +#ciclo principale for che cicla da projFirst a projLast +for ($projectCount = $projFirst; $projectCount -le $projLast; $projectCount++){ #chiamata api che restituisce informazioni sullo stato dei mirror $callUrl = "https://gitlab.steamware.net/api/v4/projects/" + $projectCount + "/remote_mirrors" WriteLogOutput $logFile 1 "" @@ -82,10 +83,7 @@ do { $parsedError = $_ | ConvertFrom-Json WriteLogOutput $logFile 3 $($parsedError.message) } - $projectCount = $projectCount + 1 } -#fine ciclo principale -while ($projectCount -le $projectNumber) #somma di mirrorSuccess e mirrorErrors $mirrorCount = $mirrorSuccessCount + $mirrorErrorsCount diff --git a/ApiGit/Misc/CheckGitlabProtectedBranches.ps1 b/ApiGit/Misc/CheckGitlabProtectedBranches.ps1 index 3c0bbc9..64c7e9b 100644 --- a/ApiGit/Misc/CheckGitlabProtectedBranches.ps1 +++ b/ApiGit/Misc/CheckGitlabProtectedBranches.ps1 @@ -13,9 +13,9 @@ $startTime = (Get-Date).toString("yyyy/MM/dd HH:mm:ss") # avvio stopwatch $mainStopWatch = [system.diagnostics.stopwatch]::StartNew() #contatore ciclo do while -$projectCount = 1 +$projFirst = 230 #numero massimo di progetti da analizzare -$projectNumber = 300 +$projLast = 232 #conteggio progetti trovati $existingProjects = 0 #conteggio progetti trovati @@ -24,6 +24,8 @@ $protectedProjects = 0 $deleteProtection = 1 #nome file di log $logFile = "GitlabProtectedBranches.log" +#nome file old log +$oldLogFile = "GitlabProtectedBranches.old" #creazione folder di Log se non già esistente if (Test-Path $logFolder) { @@ -32,6 +34,9 @@ else { New-Item $logFolder -ItemType Directory } +#rotazione vecchio logFile da .log a .old se esiste +RotateOldLog + #scrivo intestazione e inizio analisi WriteLogOutput $logFile 0 "--------------------" Switch ($logLevel) { @@ -44,30 +49,22 @@ WriteLogOutput $logFile 0 "" WriteLogOutput $logFile 0 "Percorso log: $logFolder" WriteLogOutput $logFile 0 "" WriteLogOutput $logFile 0 "Inizio Esecuzione Script: $startTime" -WriteLogOutput $logFile 0 "" -WriteLogOutput $logFile 0 "Gitlab di Destinazione: $gitlabIstance" - -#specifica quale installazione di gitlab va controllata (old) -#$remote = "Nembro" -#$remote = "Azzano" $locations = @('Nembro','Azzano') #ciclo for per lavorare su gitlab nembro e poi su gitlab azzano -for ( $i = 0; $i -le 1; $i++) +foreach ($remote in $locations) { - $projectCount = 1 - $remote = $locations[$i] if ($remote -eq "Nembro"){ - $gitlabIstance = $destinationNembro - $head = $nembroHead + $gitlabIstance = $destinationNembro + $head = $nembroHead } - if ($remote -eq "Azzano"){ - $gitlabIstance = $destinationAzzano - $head = $azzanoHead + elseif ($remote -eq "Azzano"){ + $gitlabIstance = $destinationAzzano + $head = $azzanoHead } - #ciclo principale do/while che cicla da 1 a N projectNumber - do { + #ciclo principale for che cicla da projFirst a projLast + for ($projectCount = $projFirst; $projectCount -le $projLast; $projectCount++) { #chiamata api che restituisce informazioni sullo stato dei mirror $callUrl = "https://" + $gitlabIstance + "/api/v4/projects/" + $projectCount + "/protected_branches" try { @@ -98,12 +95,9 @@ for ( $i = 0; $i -le 1; $i++) WriteLogOutput $logFile 3 "**ERRORE NEL PROGETTO $projectCount**" WriteLogOutput $logFile 3 $($parsedError.message) } - $projectCount = $projectCount + 1 } #fine ciclo principale - while ($projectCount -le $projectNumber) } - # fermo stopwatch e calcolo durata script $mainStopWatch.Stop() $durataScript = $mainStopWatch.Elapsed.TotalSeconds From a65dcfac8943e15868010cfc11a28507986dd00d Mon Sep 17 00:00:00 2001 From: "marco.locatelli@steamware.net" Date: Fri, 3 Oct 2025 14:43:29 +0200 Subject: [PATCH 3/8] Refactor script gitlab utilizzando funzioni checklogfolder e rotateoldlog --- .../ApiGitResources/ApiScriptsFunctions.ps1 | 9 +++++++++ .../UNFINISHED_CheckGitlabJobArtifact.ps1 | 13 +++++++------ ApiGit/Mirrors/CheckGitlabCommits.ps1 | 13 +++++++------ ApiGit/Mirrors/CheckGitlabMirroring.ps1 | 6 +----- ApiGit/Mirrors/GitlabCreateMissingMirrors.ps1 | 17 ++++++----------- ApiGit/Mirrors/GitlabForcePushMirror.ps1 | 13 +++++++------ ApiGit/Mirrors/GitlabRefreshMirrorToGitea.ps1 | 14 +++++++------- ApiGit/Mirrors/GitlabRenewTokensMirrors.ps1 | 14 +++++++------- ApiGit/Misc/CheckGitlabProtectedBranches.ps1 | 12 ++++-------- ApiGit/Misc/GitlabCreateDevelopBranch.ps1 | 17 ++++++----------- ApiGit/Misc/GitlabCreateTags.ps1 | 19 +++++++------------ ApiGit/Misc/GitlabEditReposNamespace.ps1 | 13 +++++++------ .../Pipelines/CheckGitlabAzzanoPipelines.ps1 | 15 ++++++++------- .../Pipelines/CheckGitlabNembroPipelines.ps1 | 15 ++++++++------- ApiGit/Pipelines/CheckGitlabPipelines.ps1 | 13 +++++++------ .../ReposCreationAzzanoNembro.ps1 | 15 ++++++++------- ApiGit/ReposCreation/ReposCreationGitea.ps1 | 17 ++++++----------- ApiGit/ReposCreation/ReposCreationGogs.ps1 | 17 ++++++----------- 18 files changed, 118 insertions(+), 134 deletions(-) diff --git a/ApiGit/ApiGitResources/ApiScriptsFunctions.ps1 b/ApiGit/ApiGitResources/ApiScriptsFunctions.ps1 index 6d5af88..7277628 100644 --- a/ApiGit/ApiGitResources/ApiScriptsFunctions.ps1 +++ b/ApiGit/ApiGitResources/ApiScriptsFunctions.ps1 @@ -15,6 +15,15 @@ Function WriteLogOutput { } } +#verifica esistenza folder di log +Function CheckLogFolder { + if (Test-Path $logFolder) { + } + else { + New-Item $logFolder -ItemType Directory + } +} + #rotazione file .log in .old Function RotateOldLog { $logPath = Join-Path $logFolder $logFile diff --git a/ApiGit/JobArtifacts/UNFINISHED_CheckGitlabJobArtifact.ps1 b/ApiGit/JobArtifacts/UNFINISHED_CheckGitlabJobArtifact.ps1 index 4dc2646..f39d450 100644 --- a/ApiGit/JobArtifacts/UNFINISHED_CheckGitlabJobArtifact.ps1 +++ b/ApiGit/JobArtifacts/UNFINISHED_CheckGitlabJobArtifact.ps1 @@ -22,13 +22,14 @@ $existingProjects = 0 $jobFound = 0 #nome file di log $logFile = "GitlabJobArtifacts.log" +#nome file di log old +$oldLogFile = "GitlabJobArtifacts.old" -#creazione folder di Log se non già esistente -if (Test-Path $logFolder) { -} -else { - New-Item $logFolder -ItemType Directory -} +#creazione folder di Log se non esiste +CheckLogFolder + +#rotazione vecchio logFile da .log a .old se esiste +RotateOldLog #scrivo intestazione e inizio analisi WriteLogOutput $logFile 0 "--------------------" diff --git a/ApiGit/Mirrors/CheckGitlabCommits.ps1 b/ApiGit/Mirrors/CheckGitlabCommits.ps1 index 3cb34e8..c13291f 100644 --- a/ApiGit/Mirrors/CheckGitlabCommits.ps1 +++ b/ApiGit/Mirrors/CheckGitlabCommits.ps1 @@ -30,13 +30,14 @@ $lastDays = 7 $requestDate = (Get-Date).AddDays(-$lastDays).toString("yyyy-MM-dd") #nome file di log $logFile = "GitlabCommits.log" +#nome file di log old +$oldLogFile = "GitlabCommits.old" -#creazione folder di Log se non già esistente -if (Test-Path $logFolder) { -} -else { - New-Item $logFolder -ItemType Directory -} +#creazione folder di Log se non esiste +CheckLogFolder + +#rotazione vecchio logFile da .log a .old se esiste +RotateOldLog #scrivo intestazione e inizio analisi WriteLogOutput $logFile 0 "--------------------" diff --git a/ApiGit/Mirrors/CheckGitlabMirroring.ps1 b/ApiGit/Mirrors/CheckGitlabMirroring.ps1 index f197919..bd8dbee 100644 --- a/ApiGit/Mirrors/CheckGitlabMirroring.ps1 +++ b/ApiGit/Mirrors/CheckGitlabMirroring.ps1 @@ -28,11 +28,7 @@ $logFile = "GitlabMirroring.log" $oldLogFile = "GitlabMirroring.old" #creazione folder di Log se non esiste -if (Test-Path $logFolder) { -} -else { - New-Item $logFolder -ItemType Directory -} +CheckLogFolder #rotazione vecchio logFile da .log a .old se esiste RotateOldLog diff --git a/ApiGit/Mirrors/GitlabCreateMissingMirrors.ps1 b/ApiGit/Mirrors/GitlabCreateMissingMirrors.ps1 index d7e4c20..dd00ddf 100644 --- a/ApiGit/Mirrors/GitlabCreateMissingMirrors.ps1 +++ b/ApiGit/Mirrors/GitlabCreateMissingMirrors.ps1 @@ -18,19 +18,14 @@ $projectCount = 1 $projectNumber = 300 #nome file di log $logFile = "NewMirrorsCreation.log" +#nome file di log old +$oldLogFile = "NewMirrorsCreation.old" -#creazione folder di Log se non già esistente -if (Test-Path $logFolder) { -} -else { - New-Item $logFolder -ItemType Directory -} +#creazione folder di Log se non esiste +CheckLogFolder -#chiedo all'utente il project ID su cui lavorare -#$projectCount = Read-Host -Prompt 'Project ID per eseguire lo script: ' - -#chiedo all'utente quante volte devo ciclare sui project ID -#$projectNumber = Read-Host -Prompt 'Contatore dei Project ID su cui lavorare: ' +#rotazione vecchio logFile da .log a .old se esiste +RotateOldLog #scrivo intestazione e inizio analisi WriteLogOutput $logFile 0 "--------------------" diff --git a/ApiGit/Mirrors/GitlabForcePushMirror.ps1 b/ApiGit/Mirrors/GitlabForcePushMirror.ps1 index d15eaba..3e12c43 100644 --- a/ApiGit/Mirrors/GitlabForcePushMirror.ps1 +++ b/ApiGit/Mirrors/GitlabForcePushMirror.ps1 @@ -21,13 +21,14 @@ $existingProjects = 0 $mirrorCount = 0 #nome file di log $logFile = "GitlabForcePushMirror.log" +#nome file di log old +$oldLogFile = "GitlabForcePushMirror.old" -#creazione folder di Log se non già esistente -if (Test-Path $logFolder) { -} -else { - New-Item $logFolder -ItemType Directory -} +#creazione folder di Log se non esiste +CheckLogFolder + +#rotazione vecchio logFile da .log a .old se esiste +RotateOldLog #scrivo intestazione e inizio analisi WriteLogOutput $logFile 0 "--------------------" diff --git a/ApiGit/Mirrors/GitlabRefreshMirrorToGitea.ps1 b/ApiGit/Mirrors/GitlabRefreshMirrorToGitea.ps1 index ff273b8..be04a9f 100644 --- a/ApiGit/Mirrors/GitlabRefreshMirrorToGitea.ps1 +++ b/ApiGit/Mirrors/GitlabRefreshMirrorToGitea.ps1 @@ -20,16 +20,16 @@ $mirrorId = "" $mirrorUrl = "" $body = "" $jsonBody = "" - #nome file di log $logFile = "GitlabMirroringGitea.log" +#nome file di log old +$oldLogFile = "GitlabMirroringGitea.old" -#creazione folder di Log se non già esistente -if (Test-Path $logFolder) { -} -else { - New-Item $logFolder -ItemType Directory -} +#creazione folder di Log se non esiste +CheckLogFolder + +#rotazione vecchio logFile da .log a .old se esiste +RotateOldLog #scrivo intestazione e inizio analisi WriteLogOutput $logFile 0 "--------------------" diff --git a/ApiGit/Mirrors/GitlabRenewTokensMirrors.ps1 b/ApiGit/Mirrors/GitlabRenewTokensMirrors.ps1 index 9bd3787..3c0df7c 100644 --- a/ApiGit/Mirrors/GitlabRenewTokensMirrors.ps1 +++ b/ApiGit/Mirrors/GitlabRenewTokensMirrors.ps1 @@ -21,16 +21,16 @@ $mirrorId = "" $mirrorUrl = "" $body = "" $jsonBody = "" - #nome file di log $logFile = "GitlabRebuildMirroring.log" +#nome file di log old +$oldLogFile = "GitlabRebuildMirroring.old" -#creazione folder di Log se non già esistente -if (Test-Path $logFolder) { -} -else { - New-Item $logFolder -ItemType Directory -} +#creazione folder di Log se non esiste +CheckLogFolder + +#rotazione vecchio logFile da .log a .old se esiste +RotateOldLog #scrivo intestazione e inizio analisi WriteLogOutput $logFile 0 "--------------------" diff --git a/ApiGit/Misc/CheckGitlabProtectedBranches.ps1 b/ApiGit/Misc/CheckGitlabProtectedBranches.ps1 index 64c7e9b..aeac0de 100644 --- a/ApiGit/Misc/CheckGitlabProtectedBranches.ps1 +++ b/ApiGit/Misc/CheckGitlabProtectedBranches.ps1 @@ -28,11 +28,7 @@ $logFile = "GitlabProtectedBranches.log" $oldLogFile = "GitlabProtectedBranches.old" #creazione folder di Log se non già esistente -if (Test-Path $logFolder) { -} -else { - New-Item $logFolder -ItemType Directory -} +CheckLogFolder #rotazione vecchio logFile da .log a .old se esiste RotateOldLog @@ -53,8 +49,7 @@ WriteLogOutput $logFile 0 "Inizio Esecuzione Script: $startTime" $locations = @('Nembro','Azzano') #ciclo for per lavorare su gitlab nembro e poi su gitlab azzano -foreach ($remote in $locations) -{ +foreach ($remote in $locations){ if ($remote -eq "Nembro"){ $gitlabIstance = $destinationNembro $head = $nembroHead @@ -95,8 +90,9 @@ foreach ($remote in $locations) WriteLogOutput $logFile 3 "**ERRORE NEL PROGETTO $projectCount**" WriteLogOutput $logFile 3 $($parsedError.message) } + #fine ciclo dei progetti } - #fine ciclo principale +#fine ciclo remote nembro/azzano } # fermo stopwatch e calcolo durata script $mainStopWatch.Stop() diff --git a/ApiGit/Misc/GitlabCreateDevelopBranch.ps1 b/ApiGit/Misc/GitlabCreateDevelopBranch.ps1 index 99aa00c..2cda610 100644 --- a/ApiGit/Misc/GitlabCreateDevelopBranch.ps1 +++ b/ApiGit/Misc/GitlabCreateDevelopBranch.ps1 @@ -18,19 +18,14 @@ $projectCount = 1 $projectNumber = 300 #nome file di log $logFile = "GitlabDevelopCreation.log" +#nome file di log old +$oldLogFile = "GitlabDevelopCreation.old" -#creazione folder di Log se non già esistente -if (Test-Path $logFolder) { -} -else { - New-Item $logFolder -ItemType Directory -} +#creazione folder di Log se non esiste +CheckLogFolder -#chiedo all'utente il project ID su cui lavorare -#$projectCount = Read-Host -Prompt 'Project ID per eseguire lo script: ' - -#chiedo all'utente quante volte devo ciclare sui project ID -#$projectNumber = Read-Host -Prompt 'Contatore dei Project ID su cui lavorare: ' +#rotazione vecchio logFile da .log a .old se esiste +RotateOldLog #scrivo intestazione e inizio analisi WriteLogOutput $logFile 0 "--------------------" diff --git a/ApiGit/Misc/GitlabCreateTags.ps1 b/ApiGit/Misc/GitlabCreateTags.ps1 index b529b78..79206b7 100644 --- a/ApiGit/Misc/GitlabCreateTags.ps1 +++ b/ApiGit/Misc/GitlabCreateTags.ps1 @@ -19,13 +19,14 @@ $projectCount = 1 $projectNumber = 300 #nome file di log $logFile = "GitlabTagCreation.log" +#nome file di log old +$oldLogFile = "GitlabTagCreation.old" -#creazione folder di Log se non già esistente -if (Test-Path $logFolder) { -} -else { - New-Item $logFolder -ItemType Directory -} +#creazione folder di Log se non esiste +CheckLogFolder + +#rotazione vecchio logFile da .log a .old se esiste +RotateOldLog #scrivo intestazione e inizio analisi WriteLogOutput $logFile 0 "--------------------" @@ -40,12 +41,6 @@ WriteLogOutput $logFile 0 "Percorso log: $logFolder" WriteLogOutput $logFile 0 "" WriteLogOutput $logFile 0 "Inizio Esecuzione Script: $startTime" -#chiedo all'utente il project ID su cui lavorare -#$projectCount = Read-Host -Prompt 'Project ID per eseguire lo script: ' - -#chiedo all'utente quante volte devo ciclare sui project ID -#$projectNumber = Read-Host -Prompt 'Contatore dei Project ID su cui lavorare: ' - #ciclo principale do/while che cicla da 1 a N projectNumber do { #compongo chiamata api per lavorare sui tag diff --git a/ApiGit/Misc/GitlabEditReposNamespace.ps1 b/ApiGit/Misc/GitlabEditReposNamespace.ps1 index 7e51f99..87cd0e9 100644 --- a/ApiGit/Misc/GitlabEditReposNamespace.ps1 +++ b/ApiGit/Misc/GitlabEditReposNamespace.ps1 @@ -18,13 +18,14 @@ $projectCount = 1 $projectNumber = 300 #nome file di log $logFile = "EditReposNamespace.log" +#nome file di log old +$oldLogFile = "EditReposNamespace.old" -#creazione folder di Log se non già esistente -if (Test-Path $logFolder) { -} -else { - New-Item $logFolder -ItemType Directory -} +#creazione folder di Log se non esiste +CheckLogFolder + +#rotazione vecchio logFile da .log a .old se esiste +RotateOldLog #scrivo intestazione e inizio analisi WriteLogOutput $logFile 0 "--------------------" diff --git a/ApiGit/Pipelines/CheckGitlabAzzanoPipelines.ps1 b/ApiGit/Pipelines/CheckGitlabAzzanoPipelines.ps1 index 2328903..29bed26 100644 --- a/ApiGit/Pipelines/CheckGitlabAzzanoPipelines.ps1 +++ b/ApiGit/Pipelines/CheckGitlabAzzanoPipelines.ps1 @@ -20,14 +20,15 @@ $pipelineErrorsCount = 0 #conteggio pipeline riusciti $pipelineSuccessCount = 0 #nome file di log -$logFile = "Gitlab-AzzanoPipeline.log" +$logFile = "GitlabAzzanoPipeline.log" +#nome file di log old +$oldLogFile = "GitlabAzzanoPipeline.old" -#creazione folder di Log se non già esistente -if (Test-Path $logFolder) { -} -else { - New-Item $logFolder -ItemType Directory -} +#creazione folder di Log se non esiste +CheckLogFolder + +#rotazione vecchio logFile da .log a .old se esiste +RotateOldLog #scrivo intestazione e inizio analisi WriteLogOutput $logFile 0 "--------------------" diff --git a/ApiGit/Pipelines/CheckGitlabNembroPipelines.ps1 b/ApiGit/Pipelines/CheckGitlabNembroPipelines.ps1 index 2c6f192..6bc4a2f 100644 --- a/ApiGit/Pipelines/CheckGitlabNembroPipelines.ps1 +++ b/ApiGit/Pipelines/CheckGitlabNembroPipelines.ps1 @@ -20,14 +20,15 @@ $pipelineErrorsCount = 0 #conteggio pipeline riusciti $pipelineSuccessCount = 0 #nome file di log -$logFile = "Gitlab-NembroPipeline.log" +$logFile = "GitlabNembroPipeline.log" +#nome file di log old +$oldLogFile = "GitlabNembroPipeline.old" -#creazione folder di Log se non già esistente -if (Test-Path $logFolder) { -} -else { - New-Item $logFolder -ItemType Directory -} +#creazione folder di Log se non esiste +CheckLogFolder + +#rotazione vecchio logFile da .log a .old se esiste +RotateOldLog #scrivo intestazione e inizio analisi WriteLogOutput $logFile 0 "--------------------" diff --git a/ApiGit/Pipelines/CheckGitlabPipelines.ps1 b/ApiGit/Pipelines/CheckGitlabPipelines.ps1 index 156cca1..bbb34a3 100644 --- a/ApiGit/Pipelines/CheckGitlabPipelines.ps1 +++ b/ApiGit/Pipelines/CheckGitlabPipelines.ps1 @@ -24,13 +24,14 @@ $pipelineErrorsCount = 0 $pipelineSuccessCount = 0 #nome file di log $logFile = "GitlabPipeline.log" +#nome file di log old +$oldLogFile = "GitlabPipeline.old" -#creazione folder di Log se non già esistente -if (Test-Path $logFolder) { -} -else { - New-Item $logFolder -ItemType Directory -} +#creazione folder di Log se non esiste +CheckLogFolder + +#rotazione vecchio logFile da .log a .old se esiste +RotateOldLog #scrivo intestazione e inizio analisi WriteLogOutput $logFile 0 "--------------------" diff --git a/ApiGit/ReposCreation/ReposCreationAzzanoNembro.ps1 b/ApiGit/ReposCreation/ReposCreationAzzanoNembro.ps1 index a44927a..44e65ab 100644 --- a/ApiGit/ReposCreation/ReposCreationAzzanoNembro.ps1 +++ b/ApiGit/ReposCreation/ReposCreationAzzanoNembro.ps1 @@ -18,6 +18,14 @@ $projectCount = 1 $projectNumber = 300 #nome file di log $logFile = "AzzanoNembroReposCreation.log" +#nome file di log old +$oldLogFile = "AzzanoNembroReposCreation.old" + +#creazione folder di Log se non esiste +CheckLogFolder + +#rotazione vecchio logFile da .log a .old se esiste +RotateOldLog #specifica quale installazione di gitlab va controllata $remote = "Nembro" @@ -32,13 +40,6 @@ $gitlabIstance = $destinationAzzano $destinationHead = $azzanoHead } -#creazione folder di Log se non già esistente -if (Test-Path $logFolder) { -} -else { - New-Item $logFolder -ItemType Directory -} - #scrivo intestazione e inizio analisi WriteLogOutput $logFile 0 "--------------------" Switch ($logLevel) { diff --git a/ApiGit/ReposCreation/ReposCreationGitea.ps1 b/ApiGit/ReposCreation/ReposCreationGitea.ps1 index 7b40652..7ff6257 100644 --- a/ApiGit/ReposCreation/ReposCreationGitea.ps1 +++ b/ApiGit/ReposCreation/ReposCreationGitea.ps1 @@ -17,19 +17,14 @@ $projectCount = 1 $projectNumber = 300 #nome file di log $logFile = "GiteaReposCreation.log" +#nome file di log old +$oldLogFile = "GiteaReposCreation.old" -#creazione folder di Log se non già esistente -if (Test-Path $logFolder) { -} -else { - New-Item $logFolder -ItemType Directory -} +#creazione folder di Log se non esiste +CheckLogFolder -#chiedo all'utente il project ID su cui lavorare -#$projectCount = Read-Host -Prompt 'Project ID per eseguire lo script: ' - -#chiedo all'utente quante volte devo ciclare sui project ID -#$projectNumber = Read-Host -Prompt 'Contatore dei Project ID su cui lavorare: ' +#rotazione vecchio logFile da .log a .old se esiste +RotateOldLog #scrivo intestazione e inizio analisi WriteLogOutput $logFile 0 "--------------------" diff --git a/ApiGit/ReposCreation/ReposCreationGogs.ps1 b/ApiGit/ReposCreation/ReposCreationGogs.ps1 index 1d24570..2c5b3f3 100644 --- a/ApiGit/ReposCreation/ReposCreationGogs.ps1 +++ b/ApiGit/ReposCreation/ReposCreationGogs.ps1 @@ -17,19 +17,14 @@ $projectCount = 1 $projectNumber = 300 #nome file di log $logFile = "GogsReposCreation.log" +#nome file di log old +$oldLogFile = "GogsReposCreation.old" -#creazione folder di Log se non già esistente -if (Test-Path $logFolder) { -} -else { - New-Item $logFolder -ItemType Directory -} +#creazione folder di Log se non esiste +CheckLogFolder -#chiedo all'utente il project ID su cui lavorare -#$projectCount = Read-Host -Prompt 'Project ID per eseguire lo script: ' - -#chiedo all'utente quante volte devo ciclare sui project ID -#$projectNumber = Read-Host -Prompt 'Contatore dei Project ID su cui lavorare: ' +#rotazione vecchio logFile da .log a .old se esiste +RotateOldLog #scrivo intestazione e inizio analisi WriteLogOutput $logFile 0 "--------------------" From 35cc6630cdd33e130f907d30f1bc8b9a8479dae2 Mon Sep 17 00:00:00 2001 From: "marco.locatelli@steamware.net" Date: Fri, 3 Oct 2025 17:21:41 +0200 Subject: [PATCH 4/8] minor fix --- ApiGit/Mirrors/CheckGitlabMirroring.ps1 | 4 ++-- ApiGit/Mirrors/GitlabForcePushMirror.ps1 | 2 +- ApiGit/Misc/CheckGitlabProtectedBranches.ps1 | 6 +++--- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/ApiGit/Mirrors/CheckGitlabMirroring.ps1 b/ApiGit/Mirrors/CheckGitlabMirroring.ps1 index bd8dbee..c7ed9e5 100644 --- a/ApiGit/Mirrors/CheckGitlabMirroring.ps1 +++ b/ApiGit/Mirrors/CheckGitlabMirroring.ps1 @@ -23,9 +23,9 @@ $mirrorErrorsCount = 0 #conteggio mirroring riusciti $mirrorSuccessCount = 0 #nome file di log -$logFile = "GitlabMirroring.log" +$logFile = "GitlabCheckMirrors.log" #nome file di log old -$oldLogFile = "GitlabMirroring.old" +$oldLogFile = "GitlabCheckMirrors.old" #creazione folder di Log se non esiste CheckLogFolder diff --git a/ApiGit/Mirrors/GitlabForcePushMirror.ps1 b/ApiGit/Mirrors/GitlabForcePushMirror.ps1 index 3e12c43..8b09f3a 100644 --- a/ApiGit/Mirrors/GitlabForcePushMirror.ps1 +++ b/ApiGit/Mirrors/GitlabForcePushMirror.ps1 @@ -14,7 +14,7 @@ $mainStopWatch = [system.diagnostics.stopwatch]::StartNew() #contatore ciclo do while $projectCount = 1 #numero massimo di progetti -$projectNumber = 300 +$projectNumber = 250 #conteggio progetti trovati $existingProjects = 0 #contatore mirror trovati diff --git a/ApiGit/Misc/CheckGitlabProtectedBranches.ps1 b/ApiGit/Misc/CheckGitlabProtectedBranches.ps1 index aeac0de..7200e34 100644 --- a/ApiGit/Misc/CheckGitlabProtectedBranches.ps1 +++ b/ApiGit/Misc/CheckGitlabProtectedBranches.ps1 @@ -13,9 +13,9 @@ $startTime = (Get-Date).toString("yyyy/MM/dd HH:mm:ss") # avvio stopwatch $mainStopWatch = [system.diagnostics.stopwatch]::StartNew() #contatore ciclo do while -$projFirst = 230 +$projFirst = 1 #numero massimo di progetti da analizzare -$projLast = 232 +$projLast = 300 #conteggio progetti trovati $existingProjects = 0 #conteggio progetti trovati @@ -69,7 +69,7 @@ foreach ($remote in $locations){ #scrivo il numero del progetto WriteLogOutput $logFile 1 "" WriteLogOutput $logFile 1 "--------------------" - WriteLogOutput $logFile 1 "**PROGETTO $projectCount**" + WriteLogOutput $logFile 1 "**PROGETTO $projectCount $gitlabIstance**" foreach ($item in $parsedResponse) { WriteLogOutput $logFile 1 "Protected Branch Name: $($item.name) - Allow Force Push: $($item.allow_force_push)" $protectedProjects = $protectedProjects + 1 From bf3a6972fe0f3090066eb2200a530f8d59c890c5 Mon Sep 17 00:00:00 2001 From: "marco.locatelli@steamware.net" Date: Mon, 6 Oct 2025 10:40:49 +0200 Subject: [PATCH 5/8] minor fix nome variabili --- ApiGit/Mirrors/CheckGitlabMirroring.ps1 | 8 ++++---- ApiGit/Mirrors/GitlabForcePushMirror.ps1 | 12 +++++------- ApiGit/Misc/CheckGitlabProtectedBranches.ps1 | 8 ++++---- 3 files changed, 13 insertions(+), 15 deletions(-) diff --git a/ApiGit/Mirrors/CheckGitlabMirroring.ps1 b/ApiGit/Mirrors/CheckGitlabMirroring.ps1 index c7ed9e5..62b0fa8 100644 --- a/ApiGit/Mirrors/CheckGitlabMirroring.ps1 +++ b/ApiGit/Mirrors/CheckGitlabMirroring.ps1 @@ -13,9 +13,9 @@ $startTime = (Get-Date).toString("yyyy/MM/dd HH:mm:ss") # avvio stopwatch $mainStopWatch = [system.diagnostics.stopwatch]::StartNew() #contatore ciclo do while -$projFirst = 1 +$startProj = 1 #numero massimo di progetti da analizzare -$projLast = 250 +$endProj = 250 #conteggio progetti trovati $existingProjects = 0 #conteggio mirroring in errore @@ -47,8 +47,8 @@ WriteLogOutput $logFile 0 "" WriteLogOutput $logFile 0 "Inizio Esecuzione Script: $startTime" -#ciclo principale for che cicla da projFirst a projLast -for ($projectCount = $projFirst; $projectCount -le $projLast; $projectCount++){ +#ciclo principale for che cicla da startProj a endProj +for ($projectCount = $startProj; $projectCount -le $endProj; $projectCount++){ #chiamata api che restituisce informazioni sullo stato dei mirror $callUrl = "https://gitlab.steamware.net/api/v4/projects/" + $projectCount + "/remote_mirrors" WriteLogOutput $logFile 1 "" diff --git a/ApiGit/Mirrors/GitlabForcePushMirror.ps1 b/ApiGit/Mirrors/GitlabForcePushMirror.ps1 index 8b09f3a..a4eb2ac 100644 --- a/ApiGit/Mirrors/GitlabForcePushMirror.ps1 +++ b/ApiGit/Mirrors/GitlabForcePushMirror.ps1 @@ -12,9 +12,9 @@ $startTime = (Get-Date).toString("yyyy/MM/dd HH:mm:ss") # avvio stopwatch $mainStopWatch = [system.diagnostics.stopwatch]::StartNew() #contatore ciclo do while -$projectCount = 1 -#numero massimo di progetti -$projectNumber = 250 +$startProj = 1 +#numero massimo di progetti da analizzare +$endProj = 300 #conteggio progetti trovati $existingProjects = 0 #contatore mirror trovati @@ -43,8 +43,8 @@ WriteLogOutput $logFile 0 "Percorso log: $logFolder" WriteLogOutput $logFile 0 "" WriteLogOutput $logFile 0 "Inizio Esecuzione Script: $startTime" -#ciclo principale do/while che cicla da 1 a N projectNumber -do { +#ciclo principale for che cicla da 1 a N projectNumber +for ($projectCount = $startProj; $projectCount -le $endProj; $projectCount++) { #chiamata api che restituisce informazioni sullo stato dei mirror $callUrl = "https://gitlab.steamware.net/api/v4/projects/" + $projectCount + "/remote_mirrors" WriteLogOutput $logFile 1 "" @@ -74,10 +74,8 @@ do { $parsedError = $_ | ConvertFrom-Json WriteLogOutput $logFile 3 $($parsedError.message) } - $projectCount = $projectCount + 1 } #fine ciclo principale -while ($projectCount -le $projectNumber) # fermo stopwatch e calcolo durata script $mainStopWatch.Stop() diff --git a/ApiGit/Misc/CheckGitlabProtectedBranches.ps1 b/ApiGit/Misc/CheckGitlabProtectedBranches.ps1 index 7200e34..3b33ceb 100644 --- a/ApiGit/Misc/CheckGitlabProtectedBranches.ps1 +++ b/ApiGit/Misc/CheckGitlabProtectedBranches.ps1 @@ -13,9 +13,9 @@ $startTime = (Get-Date).toString("yyyy/MM/dd HH:mm:ss") # avvio stopwatch $mainStopWatch = [system.diagnostics.stopwatch]::StartNew() #contatore ciclo do while -$projFirst = 1 +$startProj = 1 #numero massimo di progetti da analizzare -$projLast = 300 +$endProj = 300 #conteggio progetti trovati $existingProjects = 0 #conteggio progetti trovati @@ -58,8 +58,8 @@ foreach ($remote in $locations){ $gitlabIstance = $destinationAzzano $head = $azzanoHead } - #ciclo principale for che cicla da projFirst a projLast - for ($projectCount = $projFirst; $projectCount -le $projLast; $projectCount++) { + #ciclo principale for che cicla da startProj a endProj + for ($projectCount = $startProj; $projectCount -le $endProj; $projectCount++) { #chiamata api che restituisce informazioni sullo stato dei mirror $callUrl = "https://" + $gitlabIstance + "/api/v4/projects/" + $projectCount + "/protected_branches" try { From c428c02edc36018a70eabf2998b94dd5a1275b9a Mon Sep 17 00:00:00 2001 From: "marco.locatelli@steamware.net" Date: Mon, 6 Oct 2025 12:23:40 +0200 Subject: [PATCH 6/8] Update script gitlab; rifatto ciclo principale con for invece di do/while --- ApiGit/Mirrors/CheckGitlabCommits.ps1 | 10 ++++------ ApiGit/Mirrors/CheckGitlabMirroring.ps1 | 1 - ApiGit/Mirrors/GitlabCreateMissingMirrors.ps1 | 10 ++++------ ApiGit/Mirrors/GitlabForcePushMirror.ps1 | 2 +- ApiGit/Mirrors/GitlabRefreshMirrorToGitea.ps1 | 12 +++++------- ApiGit/Mirrors/GitlabRenewTokensMirrors.ps1 | 12 +++++------- ApiGit/Misc/CheckGitlabProtectedBranches.ps1 | 5 ++--- ApiGit/Misc/GitlabCreateDevelopBranch.ps1 | 10 ++++------ ApiGit/Misc/GitlabCreateTags.ps1 | 10 ++++------ ApiGit/Misc/GitlabEditReposNamespace.ps1 | 10 ++++------ ApiGit/Pipelines/CheckGitlabAzzanoPipelines.ps1 | 10 ++++------ ApiGit/Pipelines/CheckGitlabNembroPipelines.ps1 | 10 ++++------ ApiGit/Pipelines/CheckGitlabPipelines.ps1 | 10 ++++------ ApiGit/ReposCreation/ReposCreationAzzanoNembro.ps1 | 12 +++++------- ApiGit/ReposCreation/ReposCreationGitea.ps1 | 10 ++++------ ApiGit/ReposCreation/ReposCreationGogs.ps1 | 10 ++++------ 16 files changed, 58 insertions(+), 86 deletions(-) diff --git a/ApiGit/Mirrors/CheckGitlabCommits.ps1 b/ApiGit/Mirrors/CheckGitlabCommits.ps1 index c13291f..3d86a7f 100644 --- a/ApiGit/Mirrors/CheckGitlabCommits.ps1 +++ b/ApiGit/Mirrors/CheckGitlabCommits.ps1 @@ -13,9 +13,9 @@ $startTime = (Get-Date).toString("yyyy/MM/dd HH:mm:ss") # avvio stopwatch $mainStopWatch = [system.diagnostics.stopwatch]::StartNew() #contatore ciclo do while -$projectCount = 1 +$startProj = 1 #numero massimo di progetti da analizzare -$projectNumber = 300 +$endProj = 250 #conteggio progetti trovati $projectsFound = 0 #conteggio progetti con commit negli ultimi giorni @@ -54,8 +54,8 @@ WriteLogOutput $logFile 0 "Inizio Esecuzione Script: $startTime" WriteLogOutput $logFile 0 "" WriteLogOutput $logFile 0 "RICERCA DA $requestDate | ULTIMI $lastDays GIORNI" -#ciclo principale do/while che cicla da 1 a N projectNumber -do { +#ciclo principale for che cicla da 1 a N projectNumber +for ($projectCount = $startProj; $projectCount -le $endProj; $projectCount++) { $callUrl = "https://gitlab.steamware.net/api/v4/projects/" + $projectCount + "/repository/commits?per_page=100&since=" + $requestDate try { $Response = Invoke-WebRequest -URI $callUrl -Headers $gitlabHead -ContentType "application/json" -UseBasicParsing @@ -86,10 +86,8 @@ do { WriteLogOutput $logFile 3 "**ERRORE NEL PROGETTO $projectCount**" WriteLogOutput $logFile 3 $($parsedError.message) } - $projectCount = $projectCount + 1 } #fine ciclo principale -while ($projectCount -le $projectNumber) #percentuale di projectWithCommits sul totale $projectWithCommitsPercentage = [math]::Round(($projectWithCommits / $projectsFound) * 100, 1) diff --git a/ApiGit/Mirrors/CheckGitlabMirroring.ps1 b/ApiGit/Mirrors/CheckGitlabMirroring.ps1 index 62b0fa8..bd962c8 100644 --- a/ApiGit/Mirrors/CheckGitlabMirroring.ps1 +++ b/ApiGit/Mirrors/CheckGitlabMirroring.ps1 @@ -46,7 +46,6 @@ WriteLogOutput $logFile 0 "Percorso log: $logFolder" WriteLogOutput $logFile 0 "" WriteLogOutput $logFile 0 "Inizio Esecuzione Script: $startTime" - #ciclo principale for che cicla da startProj a endProj for ($projectCount = $startProj; $projectCount -le $endProj; $projectCount++){ #chiamata api che restituisce informazioni sullo stato dei mirror diff --git a/ApiGit/Mirrors/GitlabCreateMissingMirrors.ps1 b/ApiGit/Mirrors/GitlabCreateMissingMirrors.ps1 index dd00ddf..c5688ff 100644 --- a/ApiGit/Mirrors/GitlabCreateMissingMirrors.ps1 +++ b/ApiGit/Mirrors/GitlabCreateMissingMirrors.ps1 @@ -13,9 +13,9 @@ $startTime = (Get-Date).toString("yyyy/MM/dd HH:mm:ss") # avvio stopwatch $mainStopWatch = [system.diagnostics.stopwatch]::StartNew() #contatore ciclo do while -$projectCount = 1 +$startProj = 1 #numero massimo di progetti da analizzare -$projectNumber = 300 +$endProj = 250 #nome file di log $logFile = "NewMirrorsCreation.log" #nome file di log old @@ -40,8 +40,8 @@ WriteLogOutput $logFile 0 "Percorso log: $logFolder" WriteLogOutput $logFile 0 "" WriteLogOutput $logFile 0 "Inizio Esecuzione Script: $startTime" -#ciclo principale do/while che cicla da 1 a N projectNumber -do { +#ciclo principale for che cicla da 1 a N projectNumber +for ($projectCount = $startProj; $projectCount -le $endProj; $projectCount++) { $callUrl = "https://gitlab.steamware.net/api/v4/projects/" + $projectCount + "/remote_mirrors" try { $gitlabResponse = Invoke-WebRequest -URI $callUrl -Headers $gitlabHead -ContentType "application/json" -UseBasicParsing @@ -86,10 +86,8 @@ do { WriteLogOutput $logFile 3 "**ERRORE NEL PROGETTO $projectCount**" WriteLogOutput $logFile 3 $($parsedError.message) } - $projectCount = $projectCount + 1 } #fine ciclo principale -while ($projectCount -le $projectNumber) # fermo stopwatch e calcolo durata script $mainStopWatch.Stop() diff --git a/ApiGit/Mirrors/GitlabForcePushMirror.ps1 b/ApiGit/Mirrors/GitlabForcePushMirror.ps1 index a4eb2ac..83e67fb 100644 --- a/ApiGit/Mirrors/GitlabForcePushMirror.ps1 +++ b/ApiGit/Mirrors/GitlabForcePushMirror.ps1 @@ -14,7 +14,7 @@ $mainStopWatch = [system.diagnostics.stopwatch]::StartNew() #contatore ciclo do while $startProj = 1 #numero massimo di progetti da analizzare -$endProj = 300 +$endProj = 250 #conteggio progetti trovati $existingProjects = 0 #contatore mirror trovati diff --git a/ApiGit/Mirrors/GitlabRefreshMirrorToGitea.ps1 b/ApiGit/Mirrors/GitlabRefreshMirrorToGitea.ps1 index be04a9f..65dbc6d 100644 --- a/ApiGit/Mirrors/GitlabRefreshMirrorToGitea.ps1 +++ b/ApiGit/Mirrors/GitlabRefreshMirrorToGitea.ps1 @@ -12,9 +12,9 @@ $startTime = (Get-Date).toString("yyyy/MM/dd HH:mm:ss") # avvio stopwatch $mainStopWatch = [system.diagnostics.stopwatch]::StartNew() #contatore ciclo do while -$projectCount = 1 -#numero massimo di progetti -$projectNumber = 250 +$startProj = 1 +#numero massimo di progetti da analizzare +$endProj = 250 #inizializzo variabili vuote $mirrorId = "" $mirrorUrl = "" @@ -44,8 +44,8 @@ WriteLogOutput $logFile 0 "Percorso log: $logFolder" WriteLogOutput $logFile 0 "" WriteLogOutput $logFile 0 "Inizio Esecuzione Script: $startTime" -#ciclo principale do/while che cicla da 1 a N projectNumber -do { +#ciclo principale for che cicla da startProj a endProj +for ($projectCount = $startProj; $projectCount -le $endProj; $projectCount++){ #chiamata api che restituisce informazioni sullo stato dei mirror $callUrl = "https://gitlab.steamware.net/api/v4/projects/" + $projectCount + "/remote_mirrors" try { @@ -104,10 +104,8 @@ do { WriteLogOutput $logFile 3 "**ERRORE NEL PROGETTO $projectCount**" WriteLogOutput $logFile 3 $($parsedError.message) } - $projectCount = $projectCount + 1 } #fine ciclo principale -while ($projectCount -le $projectNumber) # fermo stopwatch e calcolo durata script $mainStopWatch.Stop() diff --git a/ApiGit/Mirrors/GitlabRenewTokensMirrors.ps1 b/ApiGit/Mirrors/GitlabRenewTokensMirrors.ps1 index 3c0df7c..6fc0723 100644 --- a/ApiGit/Mirrors/GitlabRenewTokensMirrors.ps1 +++ b/ApiGit/Mirrors/GitlabRenewTokensMirrors.ps1 @@ -13,9 +13,9 @@ $startTime = (Get-Date).toString("yyyy/MM/dd HH:mm:ss") # avvio stopwatch $mainStopWatch = [system.diagnostics.stopwatch]::StartNew() #contatore ciclo do while -$projectCount = 1 -#numero massimo di progetti -$projectNumber = 250 +$startProj = 1 +#numero massimo di progetti da analizzare +$endProj = 250 #inizializzo variabili vuote $mirrorId = "" $mirrorUrl = "" @@ -45,8 +45,8 @@ WriteLogOutput $logFile 0 "Percorso log: $logFolder" WriteLogOutput $logFile 0 "" WriteLogOutput $logFile 0 "Inizio Esecuzione Script: $startTime" -#ciclo principale do/while che cicla da 1 a N projectNumber -do { +#ciclo principale for che cicla da startProj a endProj +for ($projectCount = $startProj; $projectCount -le $endProj; $projectCount++){ #chiamata api che restituisce informazioni sullo stato dei mirror $callUrl = "https://gitlab.steamware.net/api/v4/projects/" + $projectCount + "/remote_mirrors" try { @@ -120,10 +120,8 @@ do { WriteLogOutput $logFile 3 "**ERRORE NEL PROGETTO $projectCount**" WriteLogOutput $logFile 3 $($parsedError.message) } - $projectCount = $projectCount + 1 } #fine ciclo principale -while ($projectCount -le $projectNumber) # fermo stopwatch e calcolo durata script $mainStopWatch.Stop() diff --git a/ApiGit/Misc/CheckGitlabProtectedBranches.ps1 b/ApiGit/Misc/CheckGitlabProtectedBranches.ps1 index 3b33ceb..6e587a1 100644 --- a/ApiGit/Misc/CheckGitlabProtectedBranches.ps1 +++ b/ApiGit/Misc/CheckGitlabProtectedBranches.ps1 @@ -1,7 +1,6 @@ ###Gitlab: controllo i branch protetti (e eventualmente toglie la protezione) dai gitlab nembro e azzano### -#Questo script passa in rassegna tutti i progetti esistenti sui gitlab satellite nembro e azzano per verificare la presenza di branch protetti che potrebbero impedire -#il corretto funzionamento dei mirror verso tali repo. Se necessario questo script può anche rimuovere la protezione da tali branch. +#Questo script passa in rassegna tutti i progetti esistenti sui gitlab satellite nembro e azzano per verificare la presenza di branch protetti che potrebbero impedire il corretto funzionamento dei mirror verso tali repo. Se necessario questo script può anche rimuovere la protezione da tali branch. #importo file contenente configurazioni . .\ApiGit\ApiGitResources\ApiScriptsConfig.ps1 @@ -15,7 +14,7 @@ $mainStopWatch = [system.diagnostics.stopwatch]::StartNew() #contatore ciclo do while $startProj = 1 #numero massimo di progetti da analizzare -$endProj = 300 +$endProj = 250 #conteggio progetti trovati $existingProjects = 0 #conteggio progetti trovati diff --git a/ApiGit/Misc/GitlabCreateDevelopBranch.ps1 b/ApiGit/Misc/GitlabCreateDevelopBranch.ps1 index 2cda610..5f613b9 100644 --- a/ApiGit/Misc/GitlabCreateDevelopBranch.ps1 +++ b/ApiGit/Misc/GitlabCreateDevelopBranch.ps1 @@ -13,9 +13,9 @@ $startTime = (Get-Date).toString("yyyy/MM/dd HH:mm:ss") # avvio stopwatch $mainStopWatch = [system.diagnostics.stopwatch]::StartNew() #contatore ciclo do while -$projectCount = 1 +$startProj = 1 #numero massimo di progetti da analizzare -$projectNumber = 300 +$endProj = 250 #nome file di log $logFile = "GitlabDevelopCreation.log" #nome file di log old @@ -40,8 +40,8 @@ WriteLogOutput $logFile 0 "Percorso log: $logFolder" WriteLogOutput $logFile 0 "" WriteLogOutput $logFile 0 "Inizio Esecuzione Script: $startTime" -#ciclo principale do/while che cicla da 1 a N projectNumber -do { +#ciclo principale for che cicla da startProj a endProj +for ($projectCount = $startProj; $projectCount -le $endProj; $projectCount++){ #compongo chiamata api per lavorare sui branch $branchUrl = "https://gitlab.steamware.net/api/v4/projects/" + $projectCount + "/repository/branches" try { @@ -84,10 +84,8 @@ do { WriteLogOutput $logFile 3 "**ERRORE NEL PROGETTO $projectCount**" WriteLogOutput $logFile 3 $($parsedError.message) } - $projectCount = $projectCount + 1 } #fine ciclo principale -while ($projectCount -le $projectNumber) # fermo stopwatch e calcolo durata script $mainStopWatch.Stop() diff --git a/ApiGit/Misc/GitlabCreateTags.ps1 b/ApiGit/Misc/GitlabCreateTags.ps1 index 79206b7..8c5f87e 100644 --- a/ApiGit/Misc/GitlabCreateTags.ps1 +++ b/ApiGit/Misc/GitlabCreateTags.ps1 @@ -14,9 +14,9 @@ $startTime = (Get-Date).toString("yyyy/MM/dd HH:mm:ss") # avvio stopwatch $mainStopWatch = [system.diagnostics.stopwatch]::StartNew() #contatore ciclo do while -$projectCount = 1 +$startProj = 1 #numero massimo di progetti da analizzare -$projectNumber = 300 +$endProj = 250 #nome file di log $logFile = "GitlabTagCreation.log" #nome file di log old @@ -41,8 +41,8 @@ WriteLogOutput $logFile 0 "Percorso log: $logFolder" WriteLogOutput $logFile 0 "" WriteLogOutput $logFile 0 "Inizio Esecuzione Script: $startTime" -#ciclo principale do/while che cicla da 1 a N projectNumber -do { +#ciclo principale for che cicla da startProj a endProj +for ($projectCount = $startProj; $projectCount -le $endProj; $projectCount++){ #compongo chiamata api per lavorare sui tag $tagsUrl = "https://gitlab.steamware.net/api/v4/projects/" + $projectCount + "/repository/tags" try { @@ -72,10 +72,8 @@ do { WriteLogOutput $logFile 3 "**ERRORE NEL PROGETTO $projectCount**" WriteLogOutput $logFile 3 $($parsedError.message) } - $projectCount = $projectCount + 1 } #fine ciclo principale -while ($projectCount -le $projectNumber) # fermo stopwatch e calcolo durata script $mainStopWatch.Stop() diff --git a/ApiGit/Misc/GitlabEditReposNamespace.ps1 b/ApiGit/Misc/GitlabEditReposNamespace.ps1 index 87cd0e9..6ea9f4f 100644 --- a/ApiGit/Misc/GitlabEditReposNamespace.ps1 +++ b/ApiGit/Misc/GitlabEditReposNamespace.ps1 @@ -13,9 +13,9 @@ $startTime = (Get-Date).toString("yyyy/MM/dd HH:mm:ss") # avvio stopwatch $mainStopWatch = [system.diagnostics.stopwatch]::StartNew() #contatore ciclo do while -$projectCount = 1 +$startProj = 1 #numero massimo di progetti da analizzare -$projectNumber = 300 +$endProj = 250 #nome file di log $logFile = "EditReposNamespace.log" #nome file di log old @@ -40,8 +40,8 @@ WriteLogOutput $logFile 0 "Percorso log: $logFolder" WriteLogOutput $logFile 0 "" WriteLogOutput $logFile 0 "Inizio Esecuzione Script: $startTime" -#ciclo principale do/while che cicla da 1 a N projectNumber. su gitlab nembro e gitlab azzano il namespace 19 è il gruppo egalware -do { +#ciclo principale for che cicla da startProj a endProj +for ($projectCount = $startProj; $projectCount -le $endProj; $projectCount++){ $callGitlabUrl = "https://" + $destinationAzzano + "/api/v4/projects/" + $projectCount + "/transfer?namespace=19" try { $gitlabResponse = Invoke-WebRequest -URI $callGitlabUrl -Method PUT -Headers $azzanoHead -ContentType "application/json" -UseBasicParsing @@ -60,10 +60,8 @@ do { WriteLogOutput $logFile 3 "**ERRORE NEL PROGETTO $projectCount**" WriteLogOutput $logFile 3 $($parsedError.message) } - $projectCount = $projectCount + 1 } #fine ciclo principale -while ($projectCount -le $projectNumber) # fermo stopwatch e calcolo durata script $mainStopWatch.Stop() diff --git a/ApiGit/Pipelines/CheckGitlabAzzanoPipelines.ps1 b/ApiGit/Pipelines/CheckGitlabAzzanoPipelines.ps1 index 29bed26..12623a1 100644 --- a/ApiGit/Pipelines/CheckGitlabAzzanoPipelines.ps1 +++ b/ApiGit/Pipelines/CheckGitlabAzzanoPipelines.ps1 @@ -10,9 +10,9 @@ $startTime = (Get-Date).toString("yyyy/MM/dd HH:mm:ss") # avvio stopwatch $mainStopWatch = [system.diagnostics.stopwatch]::StartNew() #contatore ciclo do while -$projectCount = 1 +$startProj = 1 #numero massimo di progetti da analizzare -$projectNumber = 300 +$endProj = 250 #conteggio progetti trovati $projectsWithPipeline = 0 #conteggio pipeline in errore @@ -43,8 +43,8 @@ WriteLogOutput $logFile 0 "Percorso log: $logFolder" WriteLogOutput $logFile 0 "" WriteLogOutput $logFile 0 "Inizio Esecuzione Script: $startTime" -#ciclo principale do/while che cicla da 1 a N projectNumber -do { +#ciclo principale for che cicla da startProj a endProj +for ($projectCount = $startProj; $projectCount -le $endProj; $projectCount++){ $callUrl = "https://gitlab-azzano.steamware.net/api/v4/projects/" + $projectCount + "/pipelines/latest" try { $Response = Invoke-WebRequest -URI $callUrl -Headers $azzanoHead -ContentType "application/json" -UseBasicParsing @@ -75,10 +75,8 @@ do { WriteLogOutput $logFile 3 "**ERRORE NEL PROGETTO $projectCount**" WriteLogOutput $logFile 3 $($parsedError.message) } - $projectCount = $projectCount + 1 } #fine ciclo principale -while ($projectCount -le $projectNumber) #somma di pipelineSuccess e pipelineErrors $pipelineCount = $pipelineSuccessCount + $pipelineErrorsCount diff --git a/ApiGit/Pipelines/CheckGitlabNembroPipelines.ps1 b/ApiGit/Pipelines/CheckGitlabNembroPipelines.ps1 index 6bc4a2f..0580d22 100644 --- a/ApiGit/Pipelines/CheckGitlabNembroPipelines.ps1 +++ b/ApiGit/Pipelines/CheckGitlabNembroPipelines.ps1 @@ -10,9 +10,9 @@ $startTime = (Get-Date).toString("yyyy/MM/dd HH:mm:ss") # avvio stopwatch $mainStopWatch = [system.diagnostics.stopwatch]::StartNew() #contatore ciclo do while -$projectCount = 1 +$startProj = 1 #numero massimo di progetti da analizzare -$projectNumber = 300 +$endProj = 250 #conteggio progetti trovati $projectsWithPipeline = 0 #conteggio pipeline in errore @@ -43,8 +43,8 @@ WriteLogOutput $logFile 0 "Percorso log: $logFolder" WriteLogOutput $logFile 0 "" WriteLogOutput $logFile 0 "Inizio Esecuzione Script: $startTime" -#ciclo principale do/while che cicla da 1 a N projectNumber -do { +#ciclo principale for che cicla da startProj a endProj +for ($projectCount = $startProj; $projectCount -le $endProj; $projectCount++){ $callUrl = "https://gitlab-nembro.steamware.net/api/v4/projects/" + $projectCount + "/pipelines/latest" try { $Response = Invoke-WebRequest -URI $callUrl -Headers $nembroHead -ContentType "application/json" -UseBasicParsing @@ -75,10 +75,8 @@ do { WriteLogOutput $logFile 3 "**ERRORE NEL PROGETTO $projectCount**" WriteLogOutput $logFile 3 $($parsedError.message) } - $projectCount = $projectCount + 1 } #fine ciclo principale -while ($projectCount -le $projectNumber) #somma di pipelineSuccess e pipelineErrors $pipelineCount = $pipelineSuccessCount + $pipelineErrorsCount diff --git a/ApiGit/Pipelines/CheckGitlabPipelines.ps1 b/ApiGit/Pipelines/CheckGitlabPipelines.ps1 index bbb34a3..ad9473a 100644 --- a/ApiGit/Pipelines/CheckGitlabPipelines.ps1 +++ b/ApiGit/Pipelines/CheckGitlabPipelines.ps1 @@ -13,9 +13,9 @@ $startTime = (Get-Date).toString("yyyy/MM/dd HH:mm:ss") # avvio stopwatch $mainStopWatch = [system.diagnostics.stopwatch]::StartNew() #contatore ciclo do while -$projectCount = 1 +$startProj = 1 #numero massimo di progetti da analizzare -$projectNumber = 300 +$endProj = 250 #conteggio progetti trovati $projectsWithPipeline = 0 #conteggio pipeline in errore @@ -46,8 +46,8 @@ WriteLogOutput $logFile 0 "Percorso log: $logFolder" WriteLogOutput $logFile 0 "" WriteLogOutput $logFile 0 "Inizio Esecuzione Script: $startTime" -#ciclo principale do/while che cicla da 1 a N projectNumber -do { +#ciclo principale for che cicla da startProj a endProj +for ($projectCount = $startProj; $projectCount -le $endProj; $projectCount++){ $callUrl = "https://gitlab.steamware.net/api/v4/projects/" + $projectCount + "/pipelines/latest" try { $Response = Invoke-WebRequest -URI $callUrl -Headers $gitlabHead -ContentType "application/json" -UseBasicParsing @@ -78,10 +78,8 @@ do { WriteLogOutput $logFile 3 "**ERRORE NEL PROGETTO $projectCount**" WriteLogOutput $logFile 3 $($parsedError.message) } - $projectCount = $projectCount + 1 } #fine ciclo principale -while ($projectCount -le $projectNumber) #somma di pipelineSuccess e pipelineErrors $pipelineCount = $pipelineSuccessCount + $pipelineErrorsCount diff --git a/ApiGit/ReposCreation/ReposCreationAzzanoNembro.ps1 b/ApiGit/ReposCreation/ReposCreationAzzanoNembro.ps1 index 44e65ab..4c6e7e2 100644 --- a/ApiGit/ReposCreation/ReposCreationAzzanoNembro.ps1 +++ b/ApiGit/ReposCreation/ReposCreationAzzanoNembro.ps1 @@ -13,9 +13,9 @@ $startTime = (Get-Date).toString("yyyy/MM/dd HH:mm:ss") # avvio stopwatch $mainStopWatch = [system.diagnostics.stopwatch]::StartNew() #contatore ciclo do while -$projectCount = 1 -#numero massimo di progetti da analizzare (messo a 1 per "sicura inserita" siccome questo script è potenzialmente pericoloso) -$projectNumber = 300 +$startProj = 1 +#numero massimo di progetti da analizzare +$endProj = 250 #nome file di log $logFile = "AzzanoNembroReposCreation.log" #nome file di log old @@ -53,8 +53,8 @@ WriteLogOutput $logFile 0 "Percorso log: $logFolder" WriteLogOutput $logFile 0 "" WriteLogOutput $logFile 0 "Inizio Esecuzione Script: $startTime" -#ciclo principale do/while che cicla da 1 a N projectNumber -do { +#ciclo principale for che cicla da startProj a endProj +for ($projectCount = $startProj; $projectCount -le $endProj; $projectCount++){ $callGitlabUrl = "https://gitlab.steamware.net/api/v4/projects/" + $projectCount try { #scrivo il numero del progetto nel terminale e su file @@ -85,10 +85,8 @@ do { $parsedError = $_ | ConvertFrom-Json WriteLogOutput $logFile 3 "Errore: $($parsedError.message)" } - $projectCount = $projectCount + 1 } #fine ciclo principale -while ($projectCount -le $projectNumber) # fermo stopwatch e calcolo durata script $mainStopWatch.Stop() diff --git a/ApiGit/ReposCreation/ReposCreationGitea.ps1 b/ApiGit/ReposCreation/ReposCreationGitea.ps1 index 7ff6257..efdb0dd 100644 --- a/ApiGit/ReposCreation/ReposCreationGitea.ps1 +++ b/ApiGit/ReposCreation/ReposCreationGitea.ps1 @@ -12,9 +12,9 @@ $startTime = (Get-Date).toString("yyyy/MM/dd HH:mm:ss") # avvio stopwatch $mainStopWatch = [system.diagnostics.stopwatch]::StartNew() #contatore ciclo do while -$projectCount = 1 +$startProj = 1 #numero massimo di progetti da analizzare -$projectNumber = 300 +$endProj = 250 #nome file di log $logFile = "GiteaReposCreation.log" #nome file di log old @@ -39,8 +39,8 @@ WriteLogOutput $logFile 0 "Percorso log: $logFolder" WriteLogOutput $logFile 0 "" WriteLogOutput $logFile 0 "Inizio Esecuzione Script: $startTime" -#ciclo principale do/while che cicla da 1 a N projectNumber -do { +#ciclo principale for che cicla da startProj a endProj +for ($projectCount = $startProj; $projectCount -le $endProj; $projectCount++){ $callGitlabUrl = "https://gitlab.steamware.net/api/v4/projects/" + $projectCount try { $gitlabResponse = Invoke-WebRequest -URI $callGitlabUrl -Headers $gitlabHead -ContentType "application/json" -UseBasicParsing @@ -83,10 +83,8 @@ do { WriteLogOutput $logFile 3 "**ERRORE NEL PROGETTO $projectCount**" WriteLogOutput $logFile 3 $($parsedError.message) } - $projectCount = $projectCount + 1 } #fine ciclo principale -while ($projectCount -le $projectNumber) # fermo stopwatch e calcolo durata script $mainStopWatch.Stop() diff --git a/ApiGit/ReposCreation/ReposCreationGogs.ps1 b/ApiGit/ReposCreation/ReposCreationGogs.ps1 index 2c5b3f3..1095932 100644 --- a/ApiGit/ReposCreation/ReposCreationGogs.ps1 +++ b/ApiGit/ReposCreation/ReposCreationGogs.ps1 @@ -12,9 +12,9 @@ $startTime = (Get-Date).toString("yyyy/MM/dd HH:mm:ss") # avvio stopwatch $mainStopWatch = [system.diagnostics.stopwatch]::StartNew() #contatore ciclo do while -$projectCount = 1 +$startProj = 1 #numero massimo di progetti da analizzare -$projectNumber = 300 +$endProj = 250 #nome file di log $logFile = "GogsReposCreation.log" #nome file di log old @@ -39,8 +39,8 @@ WriteLogOutput $logFile 0 "Percorso log: $logFolder" WriteLogOutput $logFile 0 "" WriteLogOutput $logFile 0 "Inizio Esecuzione Script: $startTime" -#ciclo principale do/while che cicla da 1 a N projectNumber -do { +#ciclo principale for che cicla da startProj a endProj +for ($projectCount = $startProj; $projectCount -le $endProj; $projectCount++){ $callGitlabUrl = "https://gitlab.steamware.net/api/v4/projects/" + $projectCount try { $gitlabResponse = Invoke-WebRequest -URI $callGitlabUrl -Headers $gitlabHead -ContentType "application/json" -UseBasicParsing @@ -81,10 +81,8 @@ do { WriteLogOutput $logFile 3 "**ERRORE NEL PROGETTO $projectCount**" WriteLogOutput $logFile 3 $($parsedError.message) } - $projectCount = $projectCount + 1 } #fine ciclo principale -while ($projectCount -le $projectNumber) # fermo stopwatch e calcolo durata script $mainStopWatch.Stop() From 9c59909908decc19cb7791abc042eb2198ca5f59 Mon Sep 17 00:00:00 2001 From: "marco.locatelli@steamware.net" Date: Thu, 4 Dec 2025 15:33:31 +0100 Subject: [PATCH 7/8] preparazione script gitea-nembro --- ApiGit/ApiGitResources/ApiScriptsConfig.ps1 | 22 ++++++++++++++++----- ApiGit/ReposCreation/ReposCreationGitea.ps1 | 21 ++++++++++++++++++++ 2 files changed, 38 insertions(+), 5 deletions(-) diff --git a/ApiGit/ApiGitResources/ApiScriptsConfig.ps1 b/ApiGit/ApiGitResources/ApiScriptsConfig.ps1 index 4b65d93..f64f29a 100644 --- a/ApiGit/ApiGitResources/ApiScriptsConfig.ps1 +++ b/ApiGit/ApiGitResources/ApiScriptsConfig.ps1 @@ -27,15 +27,27 @@ $nembroHead = @{"PRIVATE-TOKEN" = "$($tokenNembro)" } #### CONF gitea.steamware.net #### #destinazione mirror per gitea -$giteaDestination = "gitea.steamware.net" +$giteaNembro = "gitea-nembro.steamware.net" #nome utente gitea che effettua i mirror push -$giteaUser = "replica" +$giteaNembroUser = "replica" #autenticazione replica gitea -$giteaPass = "viadante16" +$giteaNembroPass = "vpsad24068" #token autenticazione utente replica gitea -$tokenGitea = "e6e6944da93bbaf230e4223012035f2cd55d27a6" +$tokenGiteaNembro = "c58a2fdf6493bb690e8c39b393e06a121f8a6761" #access token per autenticazione gitea da profilo replica -$giteaHead = @{"Authorization" = "token $($tokenGitea)" } +$giteaNembroHead = @{"Authorization" = "token $($tokenGiteaNembro)" } + +#### CONF gitea.steamware.net #### +#destinazione mirror per gitea +$giteaSteamw = "gitea.steamware.net" +#nome utente gitea che effettua i mirror push +$giteaSteamwUser = "replica" +#autenticazione replica gitea +$giteaSteamwPass = "viadante16" +#token autenticazione utente replica gitea +$tokenGiteaSteamw = "e6e6944da93bbaf230e4223012035f2cd55d27a6" +#access token per autenticazione gitea da profilo replica +$giteaSteamwHead = @{"Authorization" = "token $($tokenGiteaSteamw)" } #### CONF gogs.steamware.net #### #destinazione mirror per gogs diff --git a/ApiGit/ReposCreation/ReposCreationGitea.ps1 b/ApiGit/ReposCreation/ReposCreationGitea.ps1 index efdb0dd..2470c34 100644 --- a/ApiGit/ReposCreation/ReposCreationGitea.ps1 +++ b/ApiGit/ReposCreation/ReposCreationGitea.ps1 @@ -20,12 +20,33 @@ $logFile = "GiteaReposCreation.log" #nome file di log old $oldLogFile = "GiteaReposCreation.old" +#gitea di destinazione +#$target = "steamware" +$target = "nembro" + #creazione folder di Log se non esiste CheckLogFolder #rotazione vecchio logFile da .log a .old se esiste RotateOldLog +if ($target = "steamware"){ +#destinazione mirror per gitea +$giteaDestination = $giteaSteamw +#nome utente gitea che effettua i mirror push +$giteaUser = $giteaSteamwUser +#autenticazione replica gitea +$giteaPass = $giteaSteamwPass +} +if ($target = "nembro"){ +#destinazione mirror per gitea +$giteaDestination = $giteaNembro +#nome utente gitea che effettua i mirror push +$giteaUser = $giteaNembroUser +#autenticazione replica gitea +$giteaPass = $giteaNembroPass +} + #scrivo intestazione e inizio analisi WriteLogOutput $logFile 0 "--------------------" Switch ($logLevel) { From 6233c981ae700f5cea83f94244f874f3e43c0ba4 Mon Sep 17 00:00:00 2001 From: "marco.locatelli@steamware.net" Date: Thu, 4 Dec 2025 17:10:01 +0100 Subject: [PATCH 8/8] Implementazione gestione gitea-nembro --- ApiGit/Mirrors/CheckGitlabMirroring.ps1 | 14 ++++----- ApiGit/Mirrors/GitlabCreateMissingMirrors.ps1 | 10 +++++-- ApiGit/Mirrors/GitlabRefreshMirrorToGitea.ps1 | 30 +++++++++++++++++-- ApiGit/ReposCreation/ReposCreationGitea.ps1 | 18 ++++++----- 4 files changed, 52 insertions(+), 20 deletions(-) diff --git a/ApiGit/Mirrors/CheckGitlabMirroring.ps1 b/ApiGit/Mirrors/CheckGitlabMirroring.ps1 index bd962c8..2582eeb 100644 --- a/ApiGit/Mirrors/CheckGitlabMirroring.ps1 +++ b/ApiGit/Mirrors/CheckGitlabMirroring.ps1 @@ -98,13 +98,13 @@ $endTime = (Get-Date).toString("yyyy/MM/dd HH:mm:ss") #invio a zabbix le metriche rilevate tramite zabbix_sender.exe WriteLogOutput $logFile 0 "" -& "C:\Program Files\Zabbix Agent\zabbix_sender.exe" -z zabproxy.ufficio -s "IIS04" -k Gitlab.Projects -o $existingProjects -& "C:\Program Files\Zabbix Agent\zabbix_sender.exe" -z zabproxy.ufficio -s "IIS04" -k Gitlab.TotalMirror -o $mirrorCount -& "C:\Program Files\Zabbix Agent\zabbix_sender.exe" -z zabproxy.ufficio -s "IIS04" -k Gitlab.SuccessMirror -o $mirrorSuccessCount -& "C:\Program Files\Zabbix Agent\zabbix_sender.exe" -z zabproxy.ufficio -s "IIS04" -k Gitlab.ErrorsMirror -o $mirrorErrorsCount -& "C:\Program Files\Zabbix Agent\zabbix_sender.exe" -z zabproxy.ufficio -s "IIS04" -k Gitlab.SuccessMirrorPercent -o $mirrorSuccessPercentage -& "C:\Program Files\Zabbix Agent\zabbix_sender.exe" -z zabproxy.ufficio -s "IIS04" -k Gitlab.ErrorsMirrorPercent -o $mirrorErrorsPercentage -& "C:\Program Files\Zabbix Agent\zabbix_sender.exe" -z zabproxy.ufficio -s "IIS04" -k Gitlab.CheckMirrorDuration -o $durataScript +& "C:\Program Files\Zabbix Agent\zabbix_sender.exe" -z zabbix.egalware -s "IIS04" -k Gitlab.Projects -o $existingProjects +& "C:\Program Files\Zabbix Agent\zabbix_sender.exe" -z zabbix.egalware -s "IIS04" -k Gitlab.TotalMirror -o $mirrorCount +& "C:\Program Files\Zabbix Agent\zabbix_sender.exe" -z zabbix.egalware -s "IIS04" -k Gitlab.SuccessMirror -o $mirrorSuccessCount +& "C:\Program Files\Zabbix Agent\zabbix_sender.exe" -z zabbix.egalware -s "IIS04" -k Gitlab.ErrorsMirror -o $mirrorErrorsCount +& "C:\Program Files\Zabbix Agent\zabbix_sender.exe" -z zabbix.egalware -s "IIS04" -k Gitlab.SuccessMirrorPercent -o $mirrorSuccessPercentage +& "C:\Program Files\Zabbix Agent\zabbix_sender.exe" -z zabbix.egalware -s "IIS04" -k Gitlab.ErrorsMirrorPercent -o $mirrorErrorsPercentage +& "C:\Program Files\Zabbix Agent\zabbix_sender.exe" -z zabbix.egalware -s "IIS04" -k Gitlab.CheckMirrorDuration -o $durataScript #scrivo a video le statistiche WriteLogOutput $logFile 0 "" diff --git a/ApiGit/Mirrors/GitlabCreateMissingMirrors.ps1 b/ApiGit/Mirrors/GitlabCreateMissingMirrors.ps1 index c5688ff..44bdba9 100644 --- a/ApiGit/Mirrors/GitlabCreateMissingMirrors.ps1 +++ b/ApiGit/Mirrors/GitlabCreateMissingMirrors.ps1 @@ -58,9 +58,13 @@ for ($projectCount = $startProj; $projectCount -le $endProj; $projectCount++) { #compongo path con struttura Egalware/NomeProgetto.git $simplePath = "Egalware/" + $($parsedNameResponse.path) + ".git" #se la risposta non contiene "gitea" procedo a creare mirror relativo - if ($gitlabResponse.Content -inotmatch "gitea") { - #chiamo funzione per creare mirror verso gitea - FreshMirrorCreation $projectCount $giteaUser $giteaPass $giteaDestination $simplePath + if ($gitlabResponse.Content -inotmatch "gitea.steamware.net") { + #chiamo funzione per creare mirror verso gitea-steamware + FreshMirrorCreation $projectCount $giteaSteamwUser $giteaSteamwPass $giteaSteamw $simplePath + } + if ($gitlabResponse.Content -inotmatch "gitea-nembro.steamware.net") { + #chiamo funzione per creare mirror verso gitea-nembro + FreshMirrorCreation $projectCount $giteaNembroUser $giteaNembroPass $giteaNembro $simplePath } #se la risposta non contiene "gogs" procedo a creare mirror relativo if ($gitlabResponse.Content -inotmatch "gogs") { diff --git a/ApiGit/Mirrors/GitlabRefreshMirrorToGitea.ps1 b/ApiGit/Mirrors/GitlabRefreshMirrorToGitea.ps1 index 65dbc6d..7f0a42a 100644 --- a/ApiGit/Mirrors/GitlabRefreshMirrorToGitea.ps1 +++ b/ApiGit/Mirrors/GitlabRefreshMirrorToGitea.ps1 @@ -25,12 +25,37 @@ $logFile = "GitlabMirroringGitea.log" #nome file di log old $oldLogFile = "GitlabMirroringGitea.old" +#gitea di destinazione +#$target = "steamware" +$target = "nembro" + #creazione folder di Log se non esiste CheckLogFolder #rotazione vecchio logFile da .log a .old se esiste RotateOldLog +if ($target = "steamware"){ + #destinazione mirror per gitea Steamw + $giteaDestination = $giteaSteamw + #nome utente gitea Steamw che effettua i mirror push + $giteaUser = $giteaSteamwUser + #autenticazione replica gitea Steamw + $giteaPass = $giteaSteamwPass + #access token per autenticazione gitea Steamw da profilo replica + $giteaHead = $giteaSteamwHead +} +if ($target = "nembro"){ + #destinazione mirror per gitea nembro + $giteaDestination = $giteaNembro + #nome utente gitea nembro che effettua i mirror push + $giteaUser = $giteaNembroUser + #autenticazione replica gitea nembro + $giteaPass = $giteaNembroPass + #access token per autenticazione gitea nembro da profilo replica + $giteaHead = $giteaNembroHead +} + #scrivo intestazione e inizio analisi WriteLogOutput $logFile 0 "--------------------" Switch ($logLevel) { @@ -60,8 +85,7 @@ for ($projectCount = $startProj; $projectCount -le $endProj; $projectCount++){ $mirrorUrl = "" $trunkedPath = "" #controllo se l'url del mirror contiene gitea - if ($item.url.Contains("gitea")) { - $mirrorDestination = "@gitea.steamware.net" + if ($item.url.Contains($giteaDestination)) { #salvo id mirror e url mirror $mirrorId = $($item.id) $mirrorUrl = $($item.url) @@ -76,7 +100,7 @@ for ($projectCount = $startProj; $projectCount -le $endProj; $projectCount++){ #compongo url da chiamare per creazione nuovo mirror $callUrlCreateMirror = "https://gitlab.steamware.net/api/v4/projects/" + $projectCount + "/remote_mirrors" #creo url del nuovo mirror con username e pass relativi a gitlab - $newMirror = "https://" + $giteaUser + ":" + $giteaPass + $mirrorDestination + "/" + $trunkedPath + $newMirror = "https://" + $giteaUser + ":" + $giteaPass + "@" + $giteaDestination + "/" + $trunkedPath #creo body da convertire in json $body = @{ diff --git a/ApiGit/ReposCreation/ReposCreationGitea.ps1 b/ApiGit/ReposCreation/ReposCreationGitea.ps1 index 2470c34..db0cab1 100644 --- a/ApiGit/ReposCreation/ReposCreationGitea.ps1 +++ b/ApiGit/ReposCreation/ReposCreationGitea.ps1 @@ -31,20 +31,24 @@ CheckLogFolder RotateOldLog if ($target = "steamware"){ -#destinazione mirror per gitea +#destinazione mirror per gitea Steamw $giteaDestination = $giteaSteamw -#nome utente gitea che effettua i mirror push +#nome utente gitea Steamw che effettua i mirror push $giteaUser = $giteaSteamwUser -#autenticazione replica gitea +#autenticazione replica gitea Steamw $giteaPass = $giteaSteamwPass +#access token per autenticazione gitea Steamw da profilo replica +$giteaHead = $giteaSteamwHead } if ($target = "nembro"){ -#destinazione mirror per gitea +#destinazione mirror per gitea nembro $giteaDestination = $giteaNembro -#nome utente gitea che effettua i mirror push +#nome utente gitea nembro che effettua i mirror push $giteaUser = $giteaNembroUser -#autenticazione replica gitea +#autenticazione replica gitea nembro $giteaPass = $giteaNembroPass +#access token per autenticazione gitea nembro da profilo replica +$giteaHead = $giteaNembroHead } #scrivo intestazione e inizio analisi @@ -72,7 +76,7 @@ for ($projectCount = $startProj; $projectCount -le $endProj; $projectCount++){ WriteLogOutput $logFile 1 "**PROGETTO $projectCount**" foreach ($gitlabItem in $parsedGitlabResponse) { WriteLogOutput $logFile 1 "Gitlab Project Name: $($gitlabItem.name)" - $callGiteaUrl = "https://gitea.steamware.net/api/v1/orgs/Egalware/repos" + $callGiteaUrl = "https://" + $giteaDestination + "/api/v1/orgs/Egalware/repos" #dichiaro un body da convertire in JSON con il nome del repo da creare (prendo path o name a seconda delle necessità) $giteaBody = @{