-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathazure-pipelines.yml
61 lines (57 loc) · 1.76 KB
/
azure-pipelines.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
parameters:
- name: pluginsToDeploy
type: object
default:
- systemlink-notebook-datasource
trigger:
- master
pr: none
pool:
name: DevCentral-Skyline
steps:
- task: NodeTool@0
displayName: Use node 16
inputs:
versionSpec: '16.x'
- ${{ each plugin in parameters.pluginsToDeploy }}:
- task: Npm@1
displayName: Install plugin dependencies
inputs:
command: 'ci'
workingDir: '${{ plugin }}'
customEndpoint: 'NPM (ni-kismet)'
- task: Npm@1
displayName: Build plugin distribution
inputs:
command: 'custom'
workingDir: '${{ plugin }}'
customCommand: 'run build'
- task: ArchiveFiles@2
displayName: Compress plugin distribution
inputs:
rootFolderOrFile: '${{ plugin }}/dist'
includeRootFolder: true
archiveType: 'zip'
archiveFile: '$(Build.StagingDirectory)/${{ plugin }}-$(Build.BuildId).zip'
replaceExistingArchive: true
- task: ArtifactoryGenericUpload@2
displayName: Upload to Artifactory
inputs:
artifactoryService: 'Repos-Artifactory'
specSource: 'taskConfiguration'
# Upload artifact to two separate paths, one with a build suffix and another with a latest suffix, similar to Docker tagging.
# e.g. <plugin_name>-<build_id>.zip and <plugin_name>-latest.zip
fileSpec: |
{
"files": [
{
"pattern": "$(Build.StagingDirectory)/${{ plugin }}-$(Build.BuildId).zip",
"target": "rnd-app-builds/grafana-plugins/${{ plugin }}/"
},
{
"pattern": "$(Build.StagingDirectory)/${{ plugin }}-$(Build.BuildId).zip",
"target": "rnd-app-builds/grafana-plugins/${{ plugin }}/${{ plugin }}-latest.zip"
}
]
}
failNoOp: true