Merge branch 'develop' into main
This commit is contained in:
@@ -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,20 +20,34 @@ $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)" }
|
||||
|
||||
#### 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
|
||||
$tokenGiteaNembro = "c58a2fdf6493bb690e8c39b393e06a121f8a6761"
|
||||
#access token per autenticazione gitea da profilo replica
|
||||
$giteaHead = @{"Authorization" = "token 3619817f299bb3d92c8a8f86d5fddbe877b60ffa" }
|
||||
$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
|
||||
@@ -42,8 +56,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,33 @@ 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
|
||||
$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)
|
||||
|
||||
@@ -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 "--------------------"
|
||||
|
||||
@@ -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
|
||||
@@ -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 "--------------------"
|
||||
@@ -53,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
|
||||
@@ -85,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)
|
||||
|
||||
@@ -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 = 250
|
||||
$endProj = 250
|
||||
#conteggio progetti trovati
|
||||
$existingProjects = 0
|
||||
#conteggio mirroring in errore
|
||||
@@ -23,14 +23,15 @@ $mirrorErrorsCount = 0
|
||||
#conteggio mirroring riusciti
|
||||
$mirrorSuccessCount = 0
|
||||
#nome file di log
|
||||
$logFile = "GitlabMirroring.log"
|
||||
$logFile = "GitlabCheckMirrors.log"
|
||||
#nome file di log old
|
||||
$oldLogFile = "GitlabCheckMirrors.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 "--------------------"
|
||||
@@ -45,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++){
|
||||
#chiamata api che restituisce informazioni sullo stato dei mirror
|
||||
$callUrl = "https://gitlab.steamware.net/api/v4/projects/" + $projectCount + "/remote_mirrors"
|
||||
WriteLogOutput $logFile 1 ""
|
||||
@@ -77,10 +78,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
|
||||
@@ -100,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 ""
|
||||
|
||||
@@ -13,24 +13,19 @@ $startTime = (Get-Date).toString("yyyy/MM/dd HH:mm:ss")
|
||||
# avvio stopwatch
|
||||
$mainStopWatch = [system.diagnostics.stopwatch]::StartNew()
|
||||
#contatore ciclo do while
|
||||
$projectCount = 200
|
||||
$startProj = 1
|
||||
#numero massimo di progetti da analizzare
|
||||
$projectNumber = 250
|
||||
$endProj = 250
|
||||
#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 "--------------------"
|
||||
@@ -45,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
|
||||
@@ -63,9 +58,13 @@ do {
|
||||
#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") {
|
||||
@@ -91,10 +90,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()
|
||||
|
||||
@@ -12,22 +12,23 @@ $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 = 300
|
||||
$startProj = 1
|
||||
#numero massimo di progetti da analizzare
|
||||
$endProj = 250
|
||||
#conteggio progetti trovati
|
||||
$existingProjects = 0
|
||||
#contatore mirror trovati
|
||||
$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 "--------------------"
|
||||
@@ -42,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 ""
|
||||
@@ -73,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()
|
||||
|
||||
@@ -12,23 +12,48 @@ $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 = ""
|
||||
$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) {
|
||||
#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
|
||||
}
|
||||
else {
|
||||
New-Item $logFolder -ItemType Directory
|
||||
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
|
||||
@@ -44,8 +69,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 {
|
||||
@@ -60,8 +85,7 @@ do {
|
||||
$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 @@ do {
|
||||
#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 =
|
||||
@{
|
||||
@@ -104,10 +128,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()
|
||||
|
||||
@@ -13,24 +13,24 @@ $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 = ""
|
||||
$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 "--------------------"
|
||||
@@ -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()
|
||||
|
||||
@@ -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
|
||||
@@ -13,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
|
||||
#conteggio progetti trovati
|
||||
$existingProjects = 0
|
||||
#conteggio progetti trovati
|
||||
@@ -24,13 +23,14 @@ $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) {
|
||||
}
|
||||
else {
|
||||
New-Item $logFolder -ItemType Directory
|
||||
}
|
||||
CheckLogFolder
|
||||
|
||||
#rotazione vecchio logFile da .log a .old se esiste
|
||||
RotateOldLog
|
||||
|
||||
#scrivo intestazione e inizio analisi
|
||||
WriteLogOutput $logFile 0 "--------------------"
|
||||
@@ -44,30 +44,21 @@ 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
|
||||
#$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++)
|
||||
{
|
||||
$projectCount = 1
|
||||
$remote = $locations[$i]
|
||||
foreach ($remote in $locations){
|
||||
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 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 {
|
||||
@@ -77,7 +68,7 @@ for ( $i = 0; $i -le 1; $i++)
|
||||
#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
|
||||
@@ -98,12 +89,10 @@ for ( $i = 0; $i -le 1; $i++)
|
||||
WriteLogOutput $logFile 3 "**ERRORE NEL PROGETTO $projectCount**"
|
||||
WriteLogOutput $logFile 3 $($parsedError.message)
|
||||
}
|
||||
$projectCount = $projectCount + 1
|
||||
#fine ciclo dei progetti
|
||||
}
|
||||
#fine ciclo principale
|
||||
while ($projectCount -le $projectNumber)
|
||||
#fine ciclo remote nembro/azzano
|
||||
}
|
||||
|
||||
# fermo stopwatch e calcolo durata script
|
||||
$mainStopWatch.Stop()
|
||||
$durataScript = $mainStopWatch.Elapsed.TotalSeconds
|
||||
|
||||
@@ -13,24 +13,19 @@ $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
|
||||
$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 "--------------------"
|
||||
@@ -45,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 {
|
||||
@@ -89,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()
|
||||
|
||||
@@ -14,18 +14,19 @@ $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
|
||||
$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,14 +41,8 @@ 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 {
|
||||
#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 {
|
||||
@@ -77,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()
|
||||
|
||||
@@ -13,18 +13,19 @@ $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
|
||||
$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 "--------------------"
|
||||
@@ -39,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
|
||||
@@ -59,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()
|
||||
|
||||
@@ -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
|
||||
@@ -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 "--------------------"
|
||||
@@ -42,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
|
||||
@@ -74,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
|
||||
|
||||
@@ -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
|
||||
@@ -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 "--------------------"
|
||||
@@ -42,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
|
||||
@@ -74,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
|
||||
|
||||
@@ -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
|
||||
@@ -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 "--------------------"
|
||||
@@ -45,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
|
||||
@@ -77,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
|
||||
|
||||
@@ -13,15 +13,23 @@ $startTime = (Get-Date).toString("yyyy/MM/dd HH:mm:ss")
|
||||
# avvio stopwatch
|
||||
$mainStopWatch = [system.diagnostics.stopwatch]::StartNew()
|
||||
#contatore ciclo do while
|
||||
$projectCount = 200
|
||||
#numero massimo di progetti da analizzare (messo a 1 per "sicura inserita" siccome questo script è potenzialmente pericoloso)
|
||||
$projectNumber = 250
|
||||
$startProj = 1
|
||||
#numero massimo di progetti da analizzare
|
||||
$endProj = 250
|
||||
#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"
|
||||
$remote = "Azzano"
|
||||
$remote = "Nembro"
|
||||
#$remote = "Azzano"
|
||||
|
||||
if ($remote -eq "Nembro"){
|
||||
$gitlabIstance = $destinationNembro
|
||||
@@ -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) {
|
||||
@@ -52,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
|
||||
@@ -65,9 +66,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
|
||||
@@ -84,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()
|
||||
|
||||
@@ -12,25 +12,45 @@ $startTime = (Get-Date).toString("yyyy/MM/dd HH:mm:ss")
|
||||
# avvio stopwatch
|
||||
$mainStopWatch = [system.diagnostics.stopwatch]::StartNew()
|
||||
#contatore ciclo do while
|
||||
$projectCount = 200
|
||||
$startProj = 1
|
||||
#numero massimo di progetti da analizzare
|
||||
$projectNumber = 250
|
||||
$endProj = 250
|
||||
#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) {
|
||||
#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
|
||||
}
|
||||
else {
|
||||
New-Item $logFolder -ItemType Directory
|
||||
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
|
||||
}
|
||||
|
||||
#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: '
|
||||
|
||||
#scrivo intestazione e inizio analisi
|
||||
WriteLogOutput $logFile 0 "--------------------"
|
||||
Switch ($logLevel) {
|
||||
@@ -44,8 +64,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
|
||||
@@ -56,7 +76,7 @@ do {
|
||||
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 =
|
||||
@{
|
||||
@@ -88,10 +108,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()
|
||||
|
||||
@@ -12,24 +12,19 @@ $startTime = (Get-Date).toString("yyyy/MM/dd HH:mm:ss")
|
||||
# avvio stopwatch
|
||||
$mainStopWatch = [system.diagnostics.stopwatch]::StartNew()
|
||||
#contatore ciclo do while
|
||||
$projectCount = 200
|
||||
$startProj = 1
|
||||
#numero massimo di progetti da analizzare
|
||||
$projectNumber = 250
|
||||
$endProj = 250
|
||||
#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 "--------------------"
|
||||
@@ -44,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
|
||||
@@ -86,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()
|
||||
|
||||
Reference in New Issue
Block a user