|
| 1 | +# |
| 2 | +# Build Botframework-CLI daily bits on Windows agent |
| 3 | +# |
| 4 | + |
| 5 | +# "name" here defines the build number format. Build number is accessed via $(Build.BuildNumber) |
| 6 | +name: $(Build.BuildId) |
| 7 | + |
| 8 | +pool: |
| 9 | + name: Hosted Windows 2019 with VS2019 |
| 10 | + |
| 11 | +schedules: |
| 12 | +- cron: "0 7 * * *" |
| 13 | + displayName: Daily midnight build (UTC Time) |
| 14 | + branches: |
| 15 | + include: |
| 16 | + - master |
| 17 | + |
| 18 | +jobs: |
| 19 | + - job: CLI |
| 20 | + variables: |
| 21 | + buildVersion: '4.10.0-dev.$(Build.SourceVersion)' |
| 22 | + _version: ${{coalesce(variables.version, variables.buildVersion)}} |
| 23 | + |
| 24 | + steps: |
| 25 | + - task: colinsalmcorner.colinsalmcorner-buildtasks.tag-build-task.tagBuildOrRelease@0 |
| 26 | + displayName: 'Tag Build with version number' |
| 27 | + inputs: |
| 28 | + tags: 'Version=$(_version)' |
| 29 | + continueOnError: true |
| 30 | + |
| 31 | + - task: NodeTool@0 |
| 32 | + displayName: 'Use Node 12.x' |
| 33 | + inputs: |
| 34 | + versionSpec: 12.x |
| 35 | + |
| 36 | + - task: Npm@1 |
| 37 | + displayName: 'npm install --global @microsoft/rush' |
| 38 | + inputs: |
| 39 | + command: custom |
| 40 | + verbose: false |
| 41 | + customCommand: 'install --global @microsoft/rush' |
| 42 | + |
| 43 | + - script: 'rush update' |
| 44 | + displayName: 'rush update' |
| 45 | + |
| 46 | + - script: 'rush build -p 2' |
| 47 | + displayName: 'rush build -p 2' |
| 48 | + |
| 49 | + - script: 'rush test' |
| 50 | + displayName: 'rush test' |
| 51 | + |
| 52 | + - script: 'node ./common/scripts/version-and-pack.js --version $(_version)' |
| 53 | + displayName: 'Version and Pack' |
| 54 | + |
| 55 | + - task: CopyFiles@2 |
| 56 | + displayName: 'Copy packages to: $(Build.ArtifactStagingDirectory)/drop' |
| 57 | + inputs: |
| 58 | + SourceFolder: ./.output |
| 59 | + Contents: '**/*.tgz' |
| 60 | + TargetFolder: '$(Build.ArtifactStagingDirectory)/drop' |
| 61 | + flattenFolders: true |
| 62 | + |
| 63 | + - task: PublishBuildArtifacts@1 |
| 64 | + displayName: 'Publish Artifact: drop' |
| 65 | + inputs: |
| 66 | + PathtoPublish: '$(Build.ArtifactStagingDirectory)/drop' |
| 67 | + ArtifactName: drop |
| 68 | + |
| 69 | + - powershell: 'Get-ChildItem .. -ErrorAction Continue -Recurse -Force | Where {$_.FullName -notlike "*node_modules*"}' |
| 70 | + displayName: 'Dir workspace except node_modules' |
| 71 | + continueOnError: true |
| 72 | + condition: succeededOrFailed() |
0 commit comments