This repository has been archived on 2024-05-31. You can view files and clone it, but cannot push or open issues or pull requests.
authentik/outpost/azure-pipelines.yml

167 lines
5.0 KiB
YAML
Raw Normal View History

2020-09-02 22:04:12 +00:00
trigger:
batch: true
branches:
include:
- master
- next
- version-*
2020-09-02 22:04:12 +00:00
variables:
2021-01-25 19:51:01 +00:00
${{ if startsWith(variables['Build.SourceBranch'], 'refs/pull/') }}:
branchName: ${{ replace(variables['System.PullRequest.SourceBranch'], '/', '-') }}
${{ if startsWith(variables['Build.SourceBranch'], 'refs/heads/') }}:
branchName: ${{ replace(variables['Build.SourceBranchName'], 'refs/heads/', '') }}
2020-09-02 22:04:12 +00:00
stages:
- stage: generate
jobs:
- job: swagger_generate
pool:
vmImage: 'ubuntu-latest'
steps:
- task: GoTool@0
inputs:
version: '1.16.3'
2020-09-02 22:04:12 +00:00
- task: CmdLine@2
inputs:
script: make gen-outpost
2020-09-02 22:04:12 +00:00
- task: PublishPipelineArtifact@1
inputs:
targetPath: 'outpost/api/'
artifact: 'go_api_client'
2020-09-02 22:04:12 +00:00
publishLocation: 'pipeline'
- stage: lint
jobs:
- job: golint
pool:
vmImage: 'ubuntu-latest'
steps:
- task: GoTool@0
inputs:
version: '1.16.3'
2020-09-02 22:04:12 +00:00
- task: DownloadPipelineArtifact@2
inputs:
buildType: 'current'
artifactName: 'go_api_client'
path: "outpost/api/"
2020-09-02 22:04:12 +00:00
- task: CmdLine@2
inputs:
script: |
docker run \
--rm \
-v $(pwd):/app \
-w /app \
golangci/golangci-lint:v1.39.0 \
golangci-lint run -v --timeout 200s
2021-01-16 20:49:30 +00:00
workingDirectory: 'outpost/'
- stage: build_go
2020-09-02 22:04:12 +00:00
jobs:
- job: proxy_build_go
2020-09-02 22:04:12 +00:00
pool:
vmImage: 'ubuntu-latest'
steps:
- task: GoTool@0
inputs:
version: '1.16.3'
2020-09-02 22:04:12 +00:00
- task: DownloadPipelineArtifact@2
inputs:
buildType: 'current'
artifactName: 'go_api_client'
path: "outpost/api/"
2020-09-02 22:04:12 +00:00
- task: Go@0
inputs:
command: 'build'
2021-01-16 20:49:30 +00:00
arguments: './cmd/proxy'
workingDirectory: 'outpost/'
- job: ldap_build_go
pool:
vmImage: 'ubuntu-latest'
steps:
- task: GoTool@0
inputs:
version: '1.16.3'
- task: DownloadPipelineArtifact@2
inputs:
buildType: 'current'
artifactName: 'go_api_client'
path: "outpost/api/"
- task: Go@0
inputs:
command: 'build'
arguments: './cmd/ldap'
workingDirectory: 'outpost/'
- stage: build_docker
2020-09-02 22:04:12 +00:00
jobs:
- job: proxy_build_docker
2020-09-02 22:04:12 +00:00
pool:
vmImage: 'ubuntu-latest'
steps:
- task: GoTool@0
inputs:
version: '1.16.3'
2020-09-02 22:04:12 +00:00
- task: DownloadPipelineArtifact@2
inputs:
buildType: 'current'
artifactName: 'go_api_client'
path: "outpost/api/"
- task: Bash@3
inputs:
targetType: 'inline'
script: |
python ./scripts/az_do_set_branch.py
2020-09-02 22:04:12 +00:00
- task: Docker@2
inputs:
containerRegistry: 'beryjuorg-harbor'
repository: 'authentik/outpost-proxy'
command: 'build'
2021-01-16 20:49:30 +00:00
Dockerfile: 'outpost/proxy.Dockerfile'
buildContext: 'outpost/'
tags: |
gh-$(branchName)
gh-$(Build.SourceVersion)
arguments: '--build-arg GIT_BUILD_HASH=$(Build.SourceVersion)'
- task: Docker@2
inputs:
containerRegistry: 'beryjuorg-harbor'
repository: 'authentik/outpost-proxy'
command: 'push'
tags: |
gh-$(branchName)
gh-$(Build.SourceVersion)
- job: ldap_build_docker
pool:
vmImage: 'ubuntu-latest'
steps:
- task: GoTool@0
inputs:
version: '1.16.3'
- task: DownloadPipelineArtifact@2
inputs:
buildType: 'current'
artifactName: 'go_api_client'
path: "outpost/api/"
- task: Bash@3
inputs:
targetType: 'inline'
script: |
python ./scripts/az_do_set_branch.py
- task: Docker@2
inputs:
containerRegistry: 'beryjuorg-harbor'
repository: 'authentik/outpost-ldap'
command: 'build'
Dockerfile: 'outpost/ldap.Dockerfile'
buildContext: 'outpost/'
tags: |
gh-$(branchName)
gh-$(Build.SourceVersion)
arguments: '--build-arg GIT_BUILD_HASH=$(Build.SourceVersion)'
- task: Docker@2
inputs:
containerRegistry: 'beryjuorg-harbor'
repository: 'authentik/outpost-ldap'
command: 'push'
tags: |
gh-$(branchName)
gh-$(Build.SourceVersion)