fabric-samples/ci/azure-pipelines.yml

191 lines
5.2 KiB
YAML

#
# SPDX-License-Identifier: Apache-2.0
#
trigger:
- master
- release-1.4
variables:
FABRIC_VERSION: 2.2
GO_BIN: $(Build.Repository.LocalPath)/bin
GO_VER: 1.14.6
NODE_VER: 12.x
PATH: $(Build.Repository.LocalPath)/bin:/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/local/sbin
jobs:
- job: CommercialPaper_Go
displayName: Commercial Paper (Go)
pool:
vmImage: ubuntu-18.04
steps:
- template: templates/install-deps.yml
- template: templates/commercial-paper/azure-pipelines-go.yml
- job: CommercialPaper_Java
displayName: Commercial Paper (Java)
pool:
vmImage: ubuntu-18.04
steps:
- template: templates/install-deps.yml
- template: templates/commercial-paper/azure-pipelines-java.yml
- job: CommercialPaper_JavaScript
displayName: Commercial Paper (JavaScript)
pool:
vmImage: ubuntu-18.04
steps:
- template: templates/install-deps.yml
- template: templates/commercial-paper/azure-pipelines-javascript.yml
- job: FabCar_Go
displayName: FabCar (Go)
pool:
vmImage: ubuntu-18.04
steps:
- template: templates/install-deps.yml
- template: templates/fabcar/azure-pipelines-go.yml
- job: FabCar_Java
displayName: FabCar (Java)
pool:
vmImage: ubuntu-18.04
steps:
- template: templates/install-deps.yml
- template: templates/fabcar/azure-pipelines-java.yml
- job: FabCar_JavaScript
displayName: FabCar (JavaScript)
pool:
vmImage: ubuntu-18.04
steps:
- template: templates/install-deps.yml
- template: templates/fabcar/azure-pipelines-javascript.yml
- job: Fabcar_TypeScript
displayName: FabCar (TypeScript)
pool:
vmImage: ubuntu-18.04
steps:
- template: templates/install-deps.yml
- template: templates/fabcar/azure-pipelines-typescript.yml
- job: Lint
displayName: Lint
pool:
vmImage: ubuntu-18.04
strategy:
matrix:
Basic-Application-Javascript:
DIRECTORY: asset-transfer-basic
LANGUAGE: javascript
TYPE: application
Basic-Chaincode-Go:
DIRECTORY: asset-transfer-basic
LANGUAGE: go
TYPE: chaincode
Basic-Chaincode-Java:
DIRECTORY: asset-transfer-basic
LANGUAGE: java
TYPE: chaincode
Basic-Chaincode-Javascript:
DIRECTORY: asset-transfer-basic
LANGUAGE: javascript
TYPE: chaincode
Basic-Chaincode-Typescript:
DIRECTORY: asset-transfer-basic
LANGUAGE: typescript
TYPE: chaincode
Ledger-Chaincode-Go:
DIRECTORY: asset-transfer-ledger-queries
LANGUAGE: go
TYPE: chaincode
Private-Chaincode-Go:
DIRECTORY: asset-transfer-private-data
LANGUAGE: go
TYPE: chaincode
Secured-Chaincode-Go:
DIRECTORY: asset-transfer-secured-agreement
LANGUAGE: go
TYPE: chaincode
steps:
- task: GoTool@0
inputs:
goBin: $(GO_BIN)
version: $(GO_VER)
displayName: Install GoLang
- task: NodeTool@0
inputs:
versionSpec: $(NODE_VER)
displayName: Install Node.js
- script: ./ci/scripts/lint.sh
displayName: Lint Code
- job: TestNetworkBasic
displayName: Test Network
pool:
vmImage: ubuntu-18.04
strategy:
matrix:
Basic-Go:
CHAINCODE_NAME: basic
CHAINCODE_LANGUAGE: go
Basic-Java:
CHAINCODE_NAME: basic
CHAINCODE_LANGUAGE: java
Basic-Javascript:
CHAINCODE_NAME: basic
CHAINCODE_LANGUAGE: javascript
Basic-Typescript:
CHAINCODE_NAME: basic
CHAINCODE_LANGUAGE: typescript
steps:
- template: templates/install-deps.yml
- script: ../ci/scripts/run-test-network-basic.sh
workingDirectory: test-network
displayName: Run Test Network Basic Chaincode
- job: TestNetworkLedger
displayName: Test Network
pool:
vmImage: ubuntu-18.04
strategy:
matrix:
Ledger-Go:
CHAINCODE_NAME: ledger
CHAINCODE_LANGUAGE: go
steps:
- template: templates/install-deps.yml
- script: ../ci/scripts/run-test-network-ledger.sh
workingDirectory: test-network
displayName: Run Test Network Ledger Chaincode
- job: TestNetworkPrivate
displayName: Test Network
pool:
vmImage: ubuntu-18.04
strategy:
matrix:
Private-Go:
CHAINCODE_NAME: private
CHAINCODE_LANGUAGE: go
steps:
- template: templates/install-deps.yml
- script: ../ci/scripts/run-test-network-private.sh
workingDirectory: test-network
displayName: Run Test Network Private Chaincode
- job: TestNetworkSecured
displayName: Test Network
pool:
vmImage: ubuntu-18.04
strategy:
matrix:
Secured-Go:
CHAINCODE_NAME: secured
CHAINCODE_LANGUAGE: go
steps:
- template: templates/install-deps.yml
- script: ../ci/scripts/run-test-network-secured.sh
workingDirectory: test-network
displayName: Run Test Network Secured Chaincode