Browse Source

Add PS Script for creating ACR Tasks

pull/1012/head
Daniel Țoncu 5 years ago
parent
commit
0078c2680b
1 changed files with 89 additions and 0 deletions
  1. +89
    -0
      build/acr-build/acr-init.ps1

+ 89
- 0
build/acr-build/acr-init.ps1 View File

@ -0,0 +1,89 @@
Param (
# The name of the Azure Container Registry
[Parameter(Mandatory = $true)]
[string]
$AcrName,
# Specifies GitHub Username
[Parameter(Mandatory = $true)]
[string]
$Username,
# The name of the GitHub Repository
[Parameter(Mandatory = $false)]
[string]
$RepositoryName = "eShopOnContainers",
# The source control Branch Name
[Parameter(Mandatory = $false)]
[string]
$BranchName = "dev",
# The GitHub Personal Access Token
[Parameter(Mandatory = $true)]
[string]
$GitAccessToken,
# Indicates whether the base image trigger is enabled
[Parameter(Mandatory = $false)]
[bool]
$BaseImageTrigger = $true,
# Indicates whether the source control commit trigger is enabled
[Parameter(Mandatory = $false)]
[bool]
$CommitTrigger = $true,
# Trigger task after creating
[Parameter(Mandatory = $false)]
[bool]
$TriggerNow = $true
)
$Context = "https://github.com/$Username/$RepositoryName.git"
$Services = @(
@{ Name = "eshopbasket"; Image = "eshop/basket.api"; File = "src/Services/Basket/Basket.API/Dockerfile" },
@{ Name = "eshopcatalog"; Image = "eshop/catalog.api"; File = "src/Services/Catalog/Catalog.API/Dockerfile" },
@{ Name = "eshopidentity"; Image = "eshop/identity.api"; File = "src/Services/Identity/Identity.API/Dockerfile" },
@{ Name = "eshopordering"; Image = "eshop/ordering.api"; File = "src/Services/Ordering/Ordering.API/Dockerfile" },
@{ Name = "eshoporderingbg"; Image = "eshop/ordering.backgroundtasks"; File = "src/Services/Ordering/Ordering.BackgroundTasks/Dockerfile" },
@{ Name = "eshopmarketing"; Image = "eshop/marketing.api"; File = "src/Services/Marketing/Marketing.API/Dockerfile" },
@{ Name = "eshopwebspa"; Image = "eshop/webspa"; File = "src/Web/WebSPA/Dockerfile" },
@{ Name = "eshopwebmvc"; Image = "eshop/webmvc"; File = "src/Web/WebMVC/Dockerfile" },
@{ Name = "eshopwebstatus"; Image = "eshop/webstatus"; File = "src/Web/WebStatus/Dockerfile" },
@{ Name = "eshoppayment"; Image = "eshop/payment.api"; File = "src/Services/Payment/Payment.API/Dockerfile" },
@{ Name = "eshoplocations"; Image = "eshop/locations.api"; File = "src/Services/Location/Locations.API/Dockerfile" },
@{ Name = "eshopocelotapigw"; Image = "eshop/ocelotapigw"; File = "src/ApiGateways/ApiGw-Base/Dockerfile" },
@{ Name = "eshopmobileshoppingagg"; Image = "eshop/mobileshoppingagg"; File = "src/ApiGateways/Mobile.Bff.Shopping/aggregator/Dockerfile" },
@{ Name = "eshopwebshoppingagg"; Image = "eshop/webshoppingagg"; File = "src/ApiGateways/Web.Bff.Shopping/aggregator/Dockerfile" },
@{ Name = "eshoporderingsignalrhub"; Image = "eshop/ordering.signalrhub"; File = "src/Services/Ordering/Ordering.SignalrHub/Dockerfile" },
@{ Name = "eshopwebhooks"; Image = "eshop/webhooks.api"; File = "src/Services/Webhooks/Webhooks.API/Dockerfile" },
@{ Name = "eshopwebhooksclient"; Image = "eshop/webhooks.client"; File = "src/Web/WebhookClient/Dockerfile" }
)
$NumberOfServices = $Services.Count
Write-Host "Creating $NumberOfServices build tasks ..." -ForegroundColor Green
$k = 1
$Services | ForEach-Object {
$bname = $_.Name
$bimg = $_.Image
$bfile = $_.File
Write-Host "[$k/$NumberOfServices] Setting ACR Build for `"$bname`" ($bimg) ..." -ForegroundColor Green
az acr task create --registry $AcrName --name $bname --image ${bimg}:$BranchName --context $Context --branch $BranchName --git-access-token $GitAccessToken --file $bfile `
--base-image-trigger-enabled $BaseImageTrigger --commit-trigger-enabled $CommitTrigger
if ($TriggerNow) {
Write-Host "Triggering Build for `"$bname`" ..." -ForegroundColor Green
az acr task run --registry $AcrName --name $bname
}
$k += 1
}

Loading…
Cancel
Save