1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2025-01-23 07:29:51 -05:00

chore: make CI config DRY (denoland/deno_std#470)

Original: 8a9993be14
This commit is contained in:
Bartek Iwańczuk 2019-05-31 23:28:54 +02:00 committed by Ryan Dahl
parent 35cb4d0d13
commit e729d442fb
6 changed files with 31 additions and 20 deletions

6
.ci/template.common.yml Normal file
View file

@ -0,0 +1,6 @@
parameters:
exe_suffix: ""
steps:
- bash: deno${{ parameters.exe_suffix }} run --allow-run --allow-write --allow-read format.ts --check
- bash: deno${{ parameters.exe_suffix }} run --allow-run --allow-net --allow-write --allow-read --config=tsconfig.test.json test.ts

5
.ci/template.linux.yml Normal file
View file

@ -0,0 +1,5 @@
steps:
- bash: npm install eslint typescript@$(TS_VERSION) @typescript-eslint/eslint-plugin @typescript-eslint/parser eslint-config-prettier
- template: ./template.unix.yml
- bash: npx eslint **/*.ts --max-warnings=0
- template: ./template.common.yml

6
.ci/template.mac.yml Normal file
View file

@ -0,0 +1,6 @@
steps:
- bash: npm install -g functional-red-black-tree
- bash: npm -g install eslint typescript@$(TS_VERSION) @typescript-eslint/eslint-plugin @typescript-eslint/parser eslint-config-prettier
- template: ./template.unix.yml
- bash: eslint **/*.ts --max-warnings=0
- template: ./template.common.yml

3
.ci/template.unix.yml Normal file
View file

@ -0,0 +1,3 @@
steps:
- bash: curl -L https://deno.land/x/install/install.sh | sh -s $(DENO_VERSION)
- bash: echo '##vso[task.prependpath]$(HOME)/.deno/bin/'

8
.ci/template.windows.yml Normal file
View file

@ -0,0 +1,8 @@
steps:
- bash: npm install eslint typescript@$(TS_VERSION) @typescript-eslint/eslint-plugin @typescript-eslint/parser eslint-config-prettier
- powershell: iwr https://deno.land/x/install/install.ps1 -out install.ps1; .\install.ps1 $(DENO_VERSION)
- bash: echo "##vso[task.prependpath]C:\Users\VssAdministrator\.deno\\bin"
- bash: npx eslint **/*.ts --max-warnings=0
- template: ./template.common.yml
parameters:
exe_suffix: ".exe"

View file

@ -2,39 +2,22 @@ variables:
DENO_VERSION: "v0.7.0"
TS_VERSION: "3.4.5"
# TODO DRY up the jobs
# TODO Try to get eslint to run under Deno, like prettier
jobs:
- job: "Linux"
pool:
vmImage: "Ubuntu-16.04"
steps:
- script: npm install eslint typescript@$(TS_VERSION) @typescript-eslint/eslint-plugin @typescript-eslint/parser eslint-config-prettier
- script: curl -L https://deno.land/x/install/install.sh | sh -s $(DENO_VERSION)
- script: echo '##vso[task.prependpath]$(HOME)/.deno/bin/'
- script: npx eslint **/*.ts --max-warnings=0
- script: deno run --allow-run --allow-write --allow-read format.ts --check
- script: deno run --allow-run --allow-net --allow-write --allow-read --config=tsconfig.test.json test.ts
- template: .ci/template.linux.yml
- job: "Mac"
pool:
vmImage: "macOS-10.13"
steps:
- script: npm install -g functional-red-black-tree
- script: npm install -g eslint typescript@$(TS_VERSION) @typescript-eslint/eslint-plugin @typescript-eslint/parser eslint-config-prettier
- script: curl -L https://deno.land/x/install/install.sh | sh -s $(DENO_VERSION)
- script: echo '##vso[task.prependpath]$(HOME)/.deno/bin/'
- script: eslint **/*.ts --max-warnings=0
- script: deno run --allow-run --allow-write --allow-read format.ts --check
- script: deno run --allow-run --allow-net --allow-write --allow-read --config=tsconfig.test.json test.ts
- template: .ci/template.mac.yml
- job: "Windows"
pool:
vmImage: "vs2017-win2016"
steps:
- bash: npm install eslint typescript@$(TS_VERSION) @typescript-eslint/eslint-plugin @typescript-eslint/parser eslint-config-prettier
- powershell: iwr https://deno.land/x/install/install.ps1 -out install.ps1; .\install.ps1 $(DENO_VERSION)
- bash: echo "##vso[task.prependpath]C:\Users\VssAdministrator\.deno\\bin"
- bash: npx eslint **/*.ts --max-warnings=0
- bash: deno.exe run --allow-run --allow-write --allow-read format.ts --check
- bash: deno.exe run --allow-run --allow-net --allow-write --allow-read --config=tsconfig.test.json test.ts
- template: .ci/template.windows.yml