5bfb634156
This should enable using Docker to build / test Linux builds on a Windows host machine
55 lines
No EOL
1.6 KiB
PowerShell
55 lines
No EOL
1.6 KiB
PowerShell
[CmdletBinding(PositionalBinding=$false)]
|
|
Param(
|
|
[bool] $noninteractive = $false,
|
|
[string] $dockerImageName,
|
|
[string] $dockerContainerTag = "dotnetcli-build",
|
|
[string] $dockerContainerName = "dotnetcli-build-container",
|
|
[Parameter(ValueFromRemainingArguments=$true)][String[]]$additionalArgs
|
|
)
|
|
|
|
Write-Host "Docker image name: $dockerImageName"
|
|
|
|
. $PSScriptRoot\common\tools.ps1
|
|
|
|
# docker build -f old\scripts\docker\rhel\Dockerfile --build-arg USER_ID=1000 -t redhat .
|
|
# docker run -it -v c:\git\core-sdk-arcade:/opt/code redhat bash
|
|
|
|
$dockerFile = Resolve-Path (Join-Path $RepoRoot "eng\docker\$dockerImageName")
|
|
|
|
docker build --build-arg USER_ID=1000 -t "$dockerContainerTag" $dockerFile
|
|
|
|
$interactiveFlag = "-i"
|
|
if ($noninteractive)
|
|
{
|
|
$interactiveFlag = ""
|
|
}
|
|
|
|
` # -e DOTNET_INSTALL_DIR=/opt/code/artifacts/docker/$dockerImageName/.dotnet `
|
|
|
|
docker run $interactiveFlag -t --rm --sig-proxy=true `
|
|
--name "$dockerContainerName" `
|
|
-v "${RepoRoot}:/opt/code" `
|
|
-e CHANNEL `
|
|
-e DOTNET_BUILD_SKIP_CROSSGEN `
|
|
-e PUBLISH_TO_AZURE_BLOB `
|
|
-e NUGET_FEED_URL `
|
|
-e NUGET_API_KEY `
|
|
-e ARTIFACT_STORAGE_ACCOUNT `
|
|
-e ARTIFACT_STORAGE_CONTAINER `
|
|
-e CHECKSUM_STORAGE_ACCOUNT `
|
|
-e CHECKSUM_STORAGE_CONTAINER `
|
|
-e BLOBFEED_STORAGE_CONTAINER `
|
|
-e CLIBUILD_SKIP_TESTS `
|
|
-e COMMITCOUNT `
|
|
-e DROPSUFFIX `
|
|
-e RELEASESUFFIX `
|
|
-e COREFXAZURECONTAINER `
|
|
-e AZUREACCOUNTNAME `
|
|
-e RELEASETOOLSGITURL `
|
|
-e CORESETUPBLOBROOTURL `
|
|
-e PB_ASSETROOTURL `
|
|
-e PB_PACKAGEVERSIONPROPSURL `
|
|
-e PB_PUBLISHBLOBFEEDURL `
|
|
-e EXTERNALRESTORESOURCES `
|
|
$dockerContainerTag `
|
|
/opt/code/run-build.sh @additionalArgs |