Skip to content

Commit

Permalink
Set up CI with Azure Pipelines (#2)
Browse files Browse the repository at this point in the history
  • Loading branch information
mattiascibien authored Jul 23, 2019
1 parent e3010b5 commit 949e9ce
Show file tree
Hide file tree
Showing 5 changed files with 114 additions and 0 deletions.
27 changes: 27 additions & 0 deletions .azure/build-template.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
parameters:
name: ''
artifact: ''
runtime: ''

jobs:
- job: ${{ parameters.name }}
pool:
vmImage: ${{ parameters.vmImage }}
continueOnError: false
steps:
- task: DotNetCoreCLI@2
inputs:
command: 'build'
projects: '**/*.csproj'
- task: DotNetCoreCLI@2
inputs:
command: 'publish'
publishWebProjects: false
projects: '**/*.csproj'
zipAfterPublish: true
arguments: --configuration $(BuildConfiguration) --output $(build.artifactstagingdirectory) --self-contained -r ${{ parameters.runtime }}
- pwsh: mv $(build.artifactstagingdirectory)/s.zip $(build.artifactstagingdirectory)/${{ parameters.artifact }}.zip
- task: PublishBuildArtifacts@1
inputs:
PathtoPublish: '$(build.artifactstagingdirectory)'
ArtifactName: ${{ parameters.artifact }}
12 changes: 12 additions & 0 deletions .azure/build-test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@


jobs:
- job: 'test'
pool:
vmImage: ubuntu-latest
continueOnError: false
steps:
- task: DotNetCoreCLI@2
inputs:
command: 'build'
projects: '**/*.csproj'
1 change: 1 addition & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,6 @@ sample.botconfig.json
.git
.gitignore
.env
.vscode
LICENSE
README.md
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -596,6 +596,7 @@ fabric.properties

.env
.idea
.vscode
*.botconfig.json
!sample.botconfig.json

Expand Down
73 changes: 73 additions & 0 deletions azure-pipelines.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
trigger:
- master

pr:
- master

stages:
- stage: test
jobs:
- template: .azure/build-test.yml # Template reference

- stage: build
condition: eq(variables['Build.SourceBranch'], 'refs/heads/master')
jobs:
- template: .azure/build-template.yml # Template reference
parameters:
name: linux
vmImage: 'ubuntu-latest'
artifact: linux
runtime: linux-x64
- template: .azure/build-template.yml # Template reference
parameters:
name: windows
vmImage: 'windows-2019'
artifact: windows
runtime: win-x64
- template: .azure/build-template.yml # Template reference
parameters:
name: macos
vmImage: 'macOS-10.14'
artifact: macos
runtime: osx-x64

- stage: github
condition: eq(variables['Build.SourceBranch'], 'refs/heads/master')
jobs:
- job: github_release
steps:
- checkout: none
- task: DownloadPipelineArtifact@2
inputs:
buildType: 'current'
targetPath: '$(Pipeline.Workspace)'
- task: GitHubRelease@0
inputs:
gitHubConnection: 'github.com'
repositoryName: 'mattiascibien/image-search-bot'
tagSource: manual
tag: v$(Build.BuildNumber)
title: Release v$(Build.BuildNumber)
assets: '$(Pipeline.Workspace)/**/*.zip'
isDraft: false
addChangeLog: true

- stage: docker
condition: eq(variables['Build.SourceBranch'], 'refs/heads/master')
jobs:
- job: dockerhub
continueOnError: false
steps:
- task: Docker@2
inputs:
command: 'build'
Dockerfile: '**/Dockerfile'
- task: Docker@2
inputs:
containerRegistry: 'DockerHub'
repository: 'mattiascibien/image-search-bot'
command: 'buildAndPush'
Dockerfile: '**/Dockerfile'
tags: |
$(Build.BuildNumber)
latest

0 comments on commit 949e9ce

Please sign in to comment.