47 lines
1.6 KiB
PowerShell
47 lines
1.6 KiB
PowerShell
<#
|
|
.SYNOPSIS
|
|
Exécute le script deploy-img.sh dans WSL Debian.
|
|
.DESCRIPTION
|
|
Ce script PowerShell lance le script Bash deploy-img.sh dans le répertoire courant sous la distribution WSL Debian.
|
|
Le script déploie l'image Docker locale vers le registre distant et gère les versions.
|
|
.PARAMETRES
|
|
Aucun paramètre requis actuellement.
|
|
.EXEMPLE
|
|
.\deploy-img.ps1
|
|
.RETOURNE
|
|
Affiche le succès ou les erreurs lors du déploiement de l'image Docker.
|
|
#>
|
|
|
|
param()
|
|
|
|
$ErrorActionPreference = 'Stop'
|
|
|
|
try {
|
|
Write-Verbose "[Étape 1] Détermination du répertoire du script."
|
|
$scriptDir = $PSScriptRoot
|
|
|
|
Write-Verbose "[Étape 2] Conversion du chemin Windows vers WSL (manuel, sans wslpath)."
|
|
# Remplacement manuel du préfixe du chemin Windows par le préfixe WSL
|
|
$wslScriptDir = $scriptDir -replace '^([A-Za-z]):\\', '/mnt/$1/' -replace '\\','/'
|
|
$wslScriptDir = $wslScriptDir.ToLower()
|
|
|
|
Write-Verbose "[Étape 3] Vérification des permissions du script bash."
|
|
wsl -d Debian -- chmod +x "$wslScriptDir/deploy-img.sh"
|
|
|
|
Write-Verbose "[Étape 4] Construction de la commande Bash à exécuter."
|
|
$innerCmd = "cd '$wslScriptDir' && ./deploy-img.sh"
|
|
|
|
Write-Verbose "[Étape 5] Exécution du script deploy-img.sh dans WSL Debian."
|
|
wsl -d Debian bash -lc $innerCmd
|
|
|
|
if ($LASTEXITCODE -ne 0) {
|
|
throw "Le script de déploiement a échoué avec le code d'erreur: $LASTEXITCODE"
|
|
}
|
|
|
|
Write-Host "Déploiement de l'image Docker newtube-angular:latest terminé avec succès." -ForegroundColor Green
|
|
}
|
|
catch {
|
|
Write-Error "Erreur lors de l'exécution du déploiement de l'image Docker : $_"
|
|
exit 1
|
|
}
|