From e9623292694b17fa00c2d62a9db1ec3a8f654f32 Mon Sep 17 00:00:00 2001 From: David Kale Date: Mon, 11 Nov 2019 13:07:29 -0500 Subject: [PATCH] Update release, add packages --- assets.json | 18 ++++++ azure-pipelines-release.yml | 125 ++++++++++++++++++++++++++++++++---- nonwindows.template.yml | 7 +- releaseNote.md | 29 ++++++++- src/runnerversion | 2 +- windows.template.yml | 7 +- 6 files changed, 167 insertions(+), 21 deletions(-) diff --git a/assets.json b/assets.json index a6cfba2f0..3c310b38d 100644 --- a/assets.json +++ b/assets.json @@ -5,6 +5,12 @@ "version": "", "downloadUrl": "https://githubassets.azureedge.net/runners//actions-runner-win-x64-.zip" }, + { + "name": "actions-runner-win-x86-.zip", + "platform": "win-x86", + "version": "", + "downloadUrl": "https://githubassets.azureedge.net/runners//actions-runner-win-x86-.zip" + }, { "name": "actions-runner-osx-x64-.tar.gz", "platform": "osx-x64", @@ -16,5 +22,17 @@ "platform": "linux-x64", "version": "", "downloadUrl": "https://githubassets.azureedge.net/runners//actions-runner-linux-x64-.tar.gz" + }, + { + "name": "actions-runner-linux-arm64-.tar.gz", + "platform": "linux-arm64", + "version": "", + "downloadUrl": "https://githubassets.azureedge.net/runners//actions-runner-linux-arm64-.tar.gz" + }, + { + "name": "actions-runner-linux-arm-.tar.gz", + "platform": "linux-arm", + "version": "", + "downloadUrl": "https://githubassets.azureedge.net/runners//actions-runner-linux-arm-.tar.gz" } ] \ No newline at end of file diff --git a/azure-pipelines-release.yml b/azure-pipelines-release.yml index 25ea0aa2a..889dbe9b9 100644 --- a/azure-pipelines-release.yml +++ b/azure-pipelines-release.yml @@ -1,5 +1,5 @@ stages: -- stage: Build +- stage: Build jobs: ################################################################################ - job: build_windows_agent_x64 @@ -11,12 +11,14 @@ stages: # Steps template for windows platform - template: windows.template.yml - + parameters: + targetRuntime: win-x64 + # Package dotnet core windows dependency (VC++ Redistributable) - powershell: | Write-Host "Downloading 'VC++ Redistributable' package." $outDir = Join-Path -Path $env:TMP -ChildPath ([Guid]::NewGuid()) - New-Item -Path $outDir -ItemType directory + New-Item -Path $outDir -ItemType directory $outFile = Join-Path -Path $outDir -ChildPath "ucrt.zip" Invoke-WebRequest -Uri https://vstsagenttools.blob.core.windows.net/tools/ucrt/ucrt_x64.zip -OutFile $outFile Write-Host "Unzipping 'VC++ Redistributable' package to agent layout." @@ -28,7 +30,48 @@ stages: displayName: Package UCRT # Create agent package zip - - script: dev.cmd package Release + - script: dev.cmd package Release win-x64 + workingDirectory: src + displayName: Package Release + + # Upload agent package zip as build artifact + - task: PublishBuildArtifacts@1 + displayName: Publish Artifact (Windows) + inputs: + pathToPublish: _package + artifactName: runners + artifactType: container + + ################################################################################ + - job: build_windows_agent_x86 + ################################################################################ + displayName: Windows Agent (x86) + pool: + vmImage: vs2017-win2016 + steps: + + # Steps template for windows platform + - template: windows.template.yml + parameters: + targetRuntime: win-x86 + + # Package dotnet core windows dependency (VC++ Redistributable) + - powershell: | + Write-Host "Downloading 'VC++ Redistributable' package." + $outDir = Join-Path -Path $env:TMP -ChildPath ([Guid]::NewGuid()) + New-Item -Path $outDir -ItemType directory + $outFile = Join-Path -Path $outDir -ChildPath "ucrt.zip" + Invoke-WebRequest -Uri https://vstsagenttools.blob.core.windows.net/tools/ucrt/ucrt_x86.zip -OutFile $outFile + Write-Host "Unzipping 'VC++ Redistributable' package to agent layout." + $unzipDir = Join-Path -Path $outDir -ChildPath "unzip" + Add-Type -AssemblyName System.IO.Compression.FileSystem + [System.IO.Compression.ZipFile]::ExtractToDirectory($outFile, $unzipDir) + $agentLayoutBin = Join-Path -Path $(Build.SourcesDirectory) -ChildPath "_layout\bin" + Copy-Item -Path $unzipDir -Destination $agentLayoutBin -Force + displayName: Package UCRT + + # Create agent package zip + - script: dev.cmd package Release win-x86 workingDirectory: src displayName: Package Release @@ -50,22 +93,76 @@ stages: # Steps template for non-windows platform - template: nonwindows.template.yml + parameters: + targetRuntime: linux-x64 # Create agent package zip - - script: ./dev.sh package Release + - script: ./dev.sh package Release linux-x64 workingDirectory: src - displayName: Package Release + displayName: Package Release # Upload agent package zip as build artifact - task: PublishBuildArtifacts@1 - displayName: Publish Artifact (Linux) + displayName: Publish Artifact (Linux) inputs: pathToPublish: _package artifactName: runners artifactType: container ################################################################################ - - job: build_osx_agent + - job: build_linux_agent_arm64 + ################################################################################ + displayName: Linux Agent (arm64) + pool: + vmImage: ubuntu-16.04 + steps: + + # Steps template for non-windows platform + - template: nonwindows.template.yml + parameters: + targetRuntime: linux-arm64 + + # Create agent package zip + - script: ./dev.sh package Release linux-arm64 + workingDirectory: src + displayName: Package Release + + # Upload agent package zip as build artifact + - task: PublishBuildArtifacts@1 + displayName: Publish Artifact (Linux) + inputs: + pathToPublish: _package + artifactName: runners + artifactType: container + + ################################################################################ + - job: build_linux_agent_arm + ################################################################################ + displayName: Linux Agent (arm) + pool: + vmImage: ubuntu-16.04 + steps: + + # Steps template for non-windows platform + - template: nonwindows.template.yml + parameters: + targetRuntime: linux-arm + + # Create agent package zip + - script: ./dev.sh package Release linux-arm + workingDirectory: src + displayName: Package Release + + # Upload agent package zip as build artifact + - task: PublishBuildArtifacts@1 + displayName: Publish Artifact (Linux) + inputs: + pathToPublish: _package + artifactName: runners + artifactType: container + + ################################################################################ + - job: build_osx_agent_x64 ################################################################################ displayName: macOS Agent (x64) pool: @@ -74,15 +171,17 @@ stages: # Steps template for non-windows platform - template: nonwindows.template.yml - + parameters: + targetRuntime: osx-x64 + # Create agent package zip - - script: ./dev.sh package Release + - script: ./dev.sh package Release osx-64 workingDirectory: src - displayName: Package Release + displayName: Package Release # Upload agent package zip as build artifact - task: PublishBuildArtifacts@1 - displayName: Publish Artifact (OSX) + displayName: Publish Artifact (OSX) inputs: pathToPublish: _package artifactName: runners @@ -98,7 +197,7 @@ stages: pool: name: ProductionRMAgents steps: - + # Download all agent packages from all previous phases - task: DownloadBuildArtifacts@0 displayName: Download Agent Packages diff --git a/nonwindows.template.yml b/nonwindows.template.yml index 833bd0500..f0ce42cb1 100644 --- a/nonwindows.template.yml +++ b/nonwindows.template.yml @@ -1,9 +1,12 @@ +parameters: + targetRuntime: '' + steps: # Build agent layout -- script: ./dev.sh layout Release +- script: ./dev.sh layout Release ${{ parameters.targetRuntime }} workingDirectory: src - displayName: Build & Layout Release + displayName: Build & Layout Release ${{ parameters.targetRuntime }} # Run test - script: ./dev.sh test diff --git a/releaseNote.md b/releaseNote.md index 34f3aa6a8..c7fdbc3be 100644 --- a/releaseNote.md +++ b/releaseNote.md @@ -2,19 +2,21 @@ - N/A ## Bugs - - Reverted removal of additional fields error and warning fields (#147) - - Actions cache would incorrectly cache the action if the tag was updated (#148) + - N/A ## Misc - - Updated to .NET Core 3.0 (#127) + - Add packages for Windows x86 (win-x6), Linux ARM32 (linux-arm), Linux ARM64 (linux-arm64) ## Agent Downloads | | Package | | ------- | ----------------------------------------------------------------------------------------------------------- | | Windows x64 | [actions-runner-win-x64-.zip](https://githubassets.azureedge.net/runners//actions-runner-win-x64-.zip) | +| Windows x86 | [actions-runner-win-x86-.zip](https://githubassets.azureedge.net/runners//actions-runner-win-x86-.zip) | | macOS | [actions-runner-osx-x64-.tar.gz](https://githubassets.azureedge.net/runners//actions-runner-osx-x64-.tar.gz) | | Linux x64 | [actions-runner-linux-x64-.tar.gz](https://githubassets.azureedge.net/runners//actions-runner-linux-x64-.tar.gz) | +| Linux arm64 | [actions-runner-linux-arm64-.tar.gz](https://githubassets.azureedge.net/runners//actions-runner-linux-arm64-.tar.gz) | +| Linux arm | [actions-runner-linux-arm-.tar.gz](https://githubassets.azureedge.net/runners//actions-runner-linux-arm-.tar.gz) | After Download: @@ -25,6 +27,13 @@ C:\> mkdir myagent && cd myagent C:\myagent> Add-Type -AssemblyName System.IO.Compression.FileSystem ; [System.IO.Compression.ZipFile]::ExtractToDirectory("$HOME\Downloads\actions-runner-win-x64-.zip", "$PWD") ``` +## Windows x86 + +``` bash +C:\> mkdir myagent && cd myagent +C:\myagent> Add-Type -AssemblyName System.IO.Compression.FileSystem ; [System.IO.Compression.ZipFile]::ExtractToDirectory("$HOME\Downloads\actions-runner-win-x86-.zip", "$PWD") +``` + ## OSX ``` bash @@ -38,3 +47,17 @@ C:\myagent> Add-Type -AssemblyName System.IO.Compression.FileSystem ; [System.IO ~/$ mkdir myagent && cd myagent ~/myagent$ tar xzf ~/Downloads/actions-runner-linux-x64-.tar.gz ``` + +## Linux arm64 + +``` bash +~/$ mkdir myagent && cd myagent +~/myagent$ tar xzf ~/Downloads/actions-runner-linux-arm64-.tar.gz +``` + +## Linux arm + +``` bash +~/$ mkdir myagent && cd myagent +~/myagent$ tar xzf ~/Downloads/actions-runner-linux-arm-.tar.gz +``` \ No newline at end of file diff --git a/src/runnerversion b/src/runnerversion index fef351cca..1bfe97844 100644 --- a/src/runnerversion +++ b/src/runnerversion @@ -1 +1 @@ -2.160.0 \ No newline at end of file +2.160.3 \ No newline at end of file diff --git a/windows.template.yml b/windows.template.yml index 6e003cc67..aea500107 100644 --- a/windows.template.yml +++ b/windows.template.yml @@ -1,9 +1,12 @@ +parameters: + targetRuntime: '' + steps: # Build agent layout -- script: dev.cmd layout Release +- script: dev.cmd layout Release ${{ parameters.targetRuntime }} workingDirectory: src - displayName: Build & Layout Release + displayName: Build & Layout Release ${{ parameters.targetRuntime }} # Run test - script: dev.cmd test