DEV_Build.ps1 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. # 設定 ASCII 藝術字的內容
  2. $asciiArt = @"
  3. _____ ________ ________ _ ____ _____ __ __ ______ _ _ _______
  4. | __ \| ____\ \ / / ____| | / __ \| __ \| \/ | ____| \ | |__ __|
  5. | | | | |__ \ \ / /| |__ | | | | | | |__) | \ / | |__ | \| | | |
  6. | | | | __| \ \/ / | __| | | | | | | ___/| |\/| | __| | . ` | | |
  7. | |__| | |____ \ / | |____| |___| |__| | | | | | | |____| |\ | | |
  8. |_____/|______| \/ |______|______\____/|_| |_| |_|______|_| \_| |_|
  9. "@
  10. # 顯示 ASCII 藝術字
  11. Write-Host $asciiArt
  12. #第一次建立專案請先設定ACR Name
  13. $registryname="evdevcontainerregistry"
  14. $fullregistryname="evdevcontainerregistry.azurecr.io"
  15. #第一次建立專案請先設定專案名稱
  16. $imagerepositoryname="dbapi"
  17. $dev_prefix = "dbapi_test_"
  18. $username = az account show --query user.name
  19. $username = $username.TrimStart("""").Split('@')[0]
  20. $tagname= $dev_prefix + $username
  21. $fulltag=$fullregistryname+"/"+$imagerepositoryname+":"+$tagname
  22. $imagename = $imagerepositoryname+":"+$tagname
  23. $response = read-host "please confirm that what you are currently uploading is a test version[ $fulltag ]. (y/n)"
  24. if ($response -eq "y") {
  25. write-host "upload processing....."
  26. #解除image鎖定
  27. az acr repository update --name $registryname --image $imagename --delete-enabled true --write-enabled true
  28. $ssha = git rev-parse --short head
  29. Write-Host "ACR Login....."
  30. $token = az acr login --name $registryname --expose-token --output tsv --query accessToken
  31. $user = "00000000-0000-0000-0000-000000000000"
  32. podman login $fullregistryname -u $user -p $token
  33. #wite ssha to file
  34. $ssha | Out-File gitcommit
  35. podman build ./ -t $fulltag --label [gitcommit=$ssha,author=$username]
  36. podman push $fulltag
  37. #remove ssha file
  38. Remove-Item gitcommit
  39. #鎖定image
  40. az acr repository update --name $registryname --image $imagename --delete-enabled false --write-enabled false
  41. } else {
  42. write-host "please modify the parameters with scripts."
  43. }