######### FUNZIONI COMUNI PER SCRIPT API GIT ######### #creazione nuovo mirror Function FreshMirrorCreation { Param ($projectNumber, $user, $auth, $destination, $path) #compongo url da chiamare per creazione nuovo mirror $callUrlCreateMirror = "https://gitlab.steamware.net/api/v4/projects/" + $projectNumber + "/remote_mirrors" #creo url del nuovo mirror con username e token relativi a gitlab $newMirror = "https://" + $user + ":" + $auth + "@" + $destination + "/" + $path #creo body da convertire in json $body = @{ url = $newMirror enabled = 1 } #converto body in json prima di passarlo alla chiamata POST $jsonBody = ConvertTo-Json -InputObject $body #chiamata api POST che crea mirror con url e body specificati $rebuildResponse = Invoke-WebRequest -Method Post -URI $callUrlCreateMirror -Headers $gitlabHead -ContentType "application/json" -Body $jsonBody -UseBasicParsing #conversione da Json della risposta alla chiamata POST $parsedRebuild = $rebuildResponse.Content | ConvertFrom-Json #rilevo ID e URL nuovo mirror per scriverli nel log foreach ($item in $parsedRebuild) { $mirrorId = $($item.id) $mirrorUrl = $($item.url) } #scrivo ID e URL nuovo mirror WriteLogOutput $logFile 1 "NEW ID: $mirrorId - URL: $mirrorUrl - Mirror creato con successo" }