提交 b31a7edc 编写于 作者: L Luke Kim 提交者: Yaron Schneider

Update azure-pipelines.yml for Azure Pipelines (#10)

* Update azure-pipelines.yml for Azure Pipelines

* Update azure-pipelines.yml for Azure Pipelines

* Update azure-pipelines.yml for Azure Pipelines

* Update azure-pipelines.yml for Azure Pipelines

* Update azure-pipelines.yml for Azure Pipelines

* Update azure-pipelines.yml for Azure Pipelines

* Update azure-pipelines.yml for Azure Pipelines

* Update azure-pipelines.yml for Azure Pipelines

* Update azure-pipelines.yml for Azure Pipelines

* Update azure-pipelines.yml for Azure Pipelines

* Create build-binary-template.yml

* Update azure-pipelines.yml for Azure Pipelines

* Update azure-pipelines.yml for Azure Pipelines

* Update build-binary-template.yml

* Update build-binary-template.yml

* Update build-binary-template.yml

* Update build-binary-template.yml

* Update build-binary-template.yml

* Update azure-pipelines.yml for Azure Pipelines

* Update build-binary-template.yml

* Update azure-pipelines.yml for Azure Pipelines

* Update build-binary-template.yml

* Update build-binary-template.yml

* Update azure-pipelines.yml for Azure Pipelines

* Update build-binary-template.yml

* Update build-binary-template.yml

* Update build-binary-template.yml

* Update azure-pipelines.yml for Azure Pipelines

* Update build-binary-template.yml

* Update azure-pipelines.yml for Azure Pipelines

* Update build-binary-template.yml

* Update build-binary-template.yml

* Create azure-pipelines-release.yml

* Build updates

* Build updates

* Fix test script

* Add docdb go get

* Add build status badge

* Publish to edge

* Fix pool

* Build per arch

* Tweaks

* Tweaks

* Use Windows pool

* Tweaks to pool name

* Fix poolImage

* Update deps

* tweaks

* Enable for master
上级 3745a36a
# Actions - A highly performant, lightweight serverless runtime for cloud and edge
[![Build Status](https://dev.azure.com/azure-octo/Actions/_apis/build/status/builds/actions%20build?branchName=master)](https://dev.azure.com/azure-octo/Actions/_build/latest?definitionId=5&branchName=master)
__Note: This repo is currently under heavy development.
As long as this note is here, consider docs not up-to-date at all times. Edge builds with potential bugs and/or breaking changes will be pushed daily.__
......
......@@ -3,18 +3,94 @@
trigger:
- master
pool:
vmImage: 'ubuntu-latest'
variables:
GOPATH: '$(system.defaultWorkingDirectory)/gopath'
GOBIN: '$(GOPATH)/bin'
modulePath: '$(GOPATH)/src/github.com/$(build.repository.name)'
steps:
- task: GoTool@0
inputs:
version: '1.10'
- task: Go@0
inputs:
command: 'get'
- task: Go@0
inputs:
command: 'build'
arguments: '-o actions'
workingDirectory: '$GOPATH/src/github.com/actionscore/actions/cmd/action'
\ No newline at end of file
jobs:
- template: 'build-binary-template.yml'
parameters:
poolImage: macOS-latest
targetOS: darwin
binaryName: action
- template: 'build-binary-template.yml'
parameters:
poolImage: macOS-latest
targetOS: darwin
binaryName: assigner
- template: 'build-binary-template.yml'
parameters:
poolImage: macOS-latest
targetOS: darwin
binaryName: controller
- template: 'build-binary-template.yml'
parameters:
poolImage: ubuntu-latest
targetOS: linux
binaryName: action
- template: 'build-binary-template.yml'
parameters:
poolImage: ubuntu-latest
targetOS: linux
binaryName: assigner
- template: 'build-binary-template.yml'
parameters:
poolImage: ubuntu-latest
targetOS: linux
binaryName: controller
- template: 'build-binary-template.yml'
parameters:
poolImage: windows-2019
targetOS: windows
binaryName: action
- template: 'build-binary-template.yml'
parameters:
poolImage: windows-2019
targetOS: windows
binaryName: assigner
- template: 'build-binary-template.yml'
parameters:
poolImage: windows-2019
targetOS: windows
binaryName: controller
- job: 'publish_edge_binaries'
pool:
vmImage: 'windows-2019'
dependsOn:
- build_action_darwin
- build_assigner_darwin
- build_controller_darwin
- build_action_linux
- build_assigner_linux
- build_controller_linux
- build_action_windows
- build_assigner_windows
- build_controller_windows
condition: |
and
(
eq(variables['Build.SourceBranch'], 'refs/heads/master'),
eq(dependencies.build_action_darwin.result, 'Succeeded'),
eq(dependencies.build_assigner_darwin.result, 'Succeeded'),
eq(dependencies.build_controller_darwin.result, 'Succeeded'),
eq(dependencies.build_action_linux.result, 'Succeeded'),
eq(dependencies.build_assigner_linux.result, 'Succeeded'),
eq(dependencies.build_controller_linux.result, 'Succeeded'),
eq(dependencies.build_action_windows.result, 'Succeeded'),
eq(dependencies.build_assigner_windows.result, 'Succeeded'),
eq(dependencies.build_controller_windows.result, 'Succeeded')
)
steps:
- task: DownloadPipelineArtifact@2
inputs:
buildType: 'current'
itemPattern: '**/*.zip'
targetPath: '$(Pipeline.Workspace)'
- task: AzureFileCopy@3
inputs:
SourcePath: '$(Pipeline.Workspace)/drop'
azureSubscription: 'Actions Releases'
Destination: 'AzureBlob'
storage: 'actionsreleases'
ContainerName: 'bin'
\ No newline at end of file
parameters:
poolImage: 'macOS-latest'
targetOS: 'darwin'
binaryName: 'action'
jobs:
- job: build_${{ parameters.binaryName }}_${{ parameters.targetOS }}
variables:
GOOS: ${{ parameters.targetOS }}
GOARCH: amd64
pool:
vmImage: '${{ parameters.poolImage }}'
steps:
- task: GoTool@0
displayName: 'Install Go'
inputs:
version: '1.12'
- task: Bash@3
displayName: 'Set up the Go workspace'
inputs:
targetType: 'inline'
script: |
mkdir -p '$(GOPATH)/pkg'
mkdir -p '$(modulePath)'
shopt -s extglob
mv !(gopath) '$(modulePath)'
echo '##vso[task.prependpath]$(GOBIN)'
- task: Go@0
displayName: 'Run go get documentdb'
inputs:
command: 'get'
arguments: '-u github.com/a8m/documentdb-go'
workingDirectory: '$(modulePath)/cmd/${{ parameters.binaryName }}'
- task: Go@0
displayName: 'Run go get'
inputs:
command: 'get'
arguments: '-v -t -d ./...'
workingDirectory: '$(modulePath)/cmd/${{ parameters.binaryName }}'
- task: CmdLine@2
displayName: 'Run go test'
inputs:
script: 'make test'
workingDirectory: '$(modulePath)'
failOnStderr: true
- task: Go@0
displayName: 'Run go build'
inputs:
command: 'build'
arguments: '-v -o $(Build.BinariesDirectory)/${{ parameters.targetOS }}/${{ parameters.binaryName }}'
workingDirectory: '$(modulePath)/cmd/${{ parameters.binaryName }}'
- task: ArchiveFiles@2
displayName: 'Build ${{ parameters.binaryName }}_${{ parameters.targetOS }}.zip'
inputs:
rootFolderOrFile: '$(Build.BinariesDirectory)/${{ parameters.targetOS }}'
includeRootFolder: false
archiveType: 'zip'
archiveFile: '$(Build.ArtifactStagingDirectory)/${{ parameters.targetOS }}/${{ parameters.binaryName }}_${{ parameters.targetOS }}.zip'
replaceExistingArchive: true
- task: PublishBuildArtifacts@1
displayName: 'Publish build artifacts'
inputs:
PathtoPublish: '$(Build.ArtifactStagingDirectory)/${{ parameters.targetOS }}'
ArtifactName: 'drop'
publishLocation: 'Container'
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册