Nuova Funzione RotateOldLog e introduzione in CheckGitlabMirroring

This commit is contained in:
marco.locatelli@steamware.net
2025-10-03 11:09:05 +02:00
parent 200fb08bf9
commit 4e73d7c80f
8 changed files with 47 additions and 20 deletions
+8 -4
View File
@@ -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
@@ -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)
+7 -2
View File
@@ -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) {
@@ -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"
+2 -2
View File
@@ -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')
@@ -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
+2 -2
View File
@@ -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"
+2 -2
View File
@@ -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"