trigger: - master variables: ${{ if startsWith(variables['Build.SourceBranch'], 'refs/heads/') }}: branchName: ${{ replace(variables['Build.SourceBranchName'], 'refs/heads/', '') }} ${{ if startsWith(variables['Build.SourceBranch'], 'refs/pull/') }}: branchName: ${{ replace(variables['System.PullRequest.SourceBranch'], 'refs/heads/', '') }} stages: - stage: lint jobs: - job: eslint pool: vmImage: 'ubuntu-latest' steps: - task: NodeTool@0 inputs: versionSpec: '12.x' displayName: 'Install Node.js' - task: Npm@1 inputs: command: 'install' workingDir: 'web/' - task: Npm@1 inputs: command: 'custom' workingDir: 'web/' customCommand: 'run lint' - job: lit_analyse pool: vmImage: 'ubuntu-latest' steps: - task: NodeTool@0 inputs: versionSpec: '12.x' displayName: 'Install Node.js' - task: Npm@1 inputs: command: 'install' workingDir: 'web/' - task: Npm@1 inputs: command: 'custom' workingDir: 'web/' customCommand: 'run lit-analyse' - stage: build_local jobs: - job: build pool: vmImage: 'ubuntu-latest' steps: - task: NodeTool@0 inputs: versionSpec: '12.x' displayName: 'Install Node.js' - task: Npm@1 inputs: command: 'install' workingDir: 'web/' - task: Npm@1 inputs: command: 'custom' workingDir: 'web/' customCommand: 'run build' - stage: build_docker jobs: - job: build_static pool: vmImage: 'ubuntu-latest' steps: - task: Docker@2 inputs: containerRegistry: 'dockerhub' repository: 'beryju/authentik-static' command: 'buildAndPush' Dockerfile: 'web/Dockerfile' tags: "gh-${{ variables.branchName }}" buildContext: 'web/'