diff --git a/eng/common/pipelines/templates/steps/install-pipeline-generation.yml b/eng/common/pipelines/templates/steps/install-pipeline-generation.yml new file mode 100644 index 000000000000..dced629c9de3 --- /dev/null +++ b/eng/common/pipelines/templates/steps/install-pipeline-generation.yml @@ -0,0 +1,11 @@ +parameters: + ToolPath: $(Pipeline.Workspace)/pipeline-generator + +steps: + - script: > + dotnet tool install + Azure.Sdk.Tools.PipelineGenerator + --version 1.0.2-dev.20201020.1 + --add-source https://pkgs.dev.azure.com/azure-sdk/public/_packaging/azure-sdk/nuget/v3/index.json + --tool-path ${{parameters.ToolPath}} + displayName: 'Install pipeline generator tool' \ No newline at end of file diff --git a/eng/common/pipelines/templates/steps/prepare-pipelines.yml b/eng/common/pipelines/templates/steps/prepare-pipelines.yml new file mode 100644 index 000000000000..10ffe7dbbad7 --- /dev/null +++ b/eng/common/pipelines/templates/steps/prepare-pipelines.yml @@ -0,0 +1,129 @@ +parameters: + - name: Repository + type: string + default: $(Build.Repository.Name) + - name: Prefix + type: string + - name: CIConventionOptions + type: string + default: '' + - name: UPConventionOptions + type: string + default: '' + - name: TestsConventionOptions + type: string + default: '' + +steps: + - template: install-pipeline-generation.yml + + # This covers our public repos. + - ${{ if not(endsWith(parameters.Repository, '-pr'))}}: + - script: > + $(Pipeline.Workspace)/pipeline-generator/pipeline-generator + --organization https://dev.azure.com/azure-sdk + --project public + --prefix ${{parameters.Prefix}} + --devopspath "\${{parameters.Prefix}}" + --path $(System.DefaultWorkingDirectory)/sdk + --endpoint Azure + --repository ${{parameters.Repository}} + --convention ci + --agentpool Hosted + --branch refs/heads/master + --patvar PATVAR + --debug + ${{parameters.CIConventionOptions}} + env: + PATVAR: $(azuresdk-azure-sdk-devops-pipeline-generation-pat) + - script: > + $(Pipeline.Workspace)/pipeline-generator/pipeline-generator + --organization https://dev.azure.com/azure-sdk + --project internal + --prefix ${{parameters.Prefix}} + --devopspath "\${{parameters.Prefix}}" + --path $(System.DefaultWorkingDirectory)/sdk + --endpoint Azure + --repository ${{parameters.Repository}} + --convention up + --agentpool Hosted + --branch refs/heads/master + --patvar PATVAR + --debug + ${{parameters.UPConventionOptions}} + env: + PATVAR: $(azuresdk-azure-sdk-devops-pipeline-generation-pat) + - script: > + $(Pipeline.Workspace)/pipeline-generator/pipeline-generator + --organization https://dev.azure.com/azure-sdk + --project internal + --prefix ${{parameters.Prefix}} + --devopspath "\${{parameters.Prefix}}" + --path $(System.DefaultWorkingDirectory)/sdk + --endpoint Azure + --repository ${{parameters.Repository}} + --convention tests + --agentpool Hosted + --branch refs/heads/master + --patvar PATVAR + --debug + ${{parameters.TestsConventionOptions}} + env: + PATVAR: $(azuresdk-azure-sdk-devops-pipeline-generation-pat) + + # This covers our -pr repositories. + - ${{ if not(endsWith(parameters.Repository, '-pr'))}}: + - script: > + $(Pipeline.Workspace)/pipeline-generator/pipeline-generator + --organization https://dev.azure.com/azure-sdk + --project internal + --prefix ${{parameters.Prefix}}-pr + --devopspath "\${{parameters.Prefix}}\pr" + --path $(System.DefaultWorkingDirectory)/sdk + --endpoint Azure + --repository ${{parameters.Repository}} + --convention ci + --agentpool Hosted + --branch refs/heads/master + --patvar PATVAR + --debug + --no-schedule + ${{parameters.CIConventionOptions}} + env: + PATVAR: $(azuresdk-azure-sdk-devops-pipeline-generation-pat) + - script: > + $(Pipeline.Workspace)/pipeline-generator/pipeline-generator + --organization https://dev.azure.com/azure-sdk + --project internal + --prefix ${{parameters.Prefix}}-pr + --devopspath "\${{parameters.Prefix}}\pr" + --path $(System.DefaultWorkingDirectory)/sdk + --endpoint Azure + --repository ${{parameters.Repository}} + --convention up + --agentpool Hosted + --branch refs/heads/master + --patvar PATVAR + --debug + --no-schedule + ${{parameters.UPConventionOptions}} + env: + PATVAR: $(azuresdk-azure-sdk-devops-pipeline-generation-pat) + - script: > + $(Pipeline.Workspace)/pipeline-generator/pipeline-generator + --organization https://dev.azure.com/azure-sdk + --project internal + --prefix ${{parameters.Prefix}}-pr + --devopspath "\${{parameters.Prefix}}\pr" + --path $(System.DefaultWorkingDirectory)/sdk + --endpoint Azure + --repository ${{parameters.Repository}} + --convention tests + --agentpool Hosted + --branch refs/heads/master + --patvar PATVAR + --debug + --no-schedule + ${{parameters.TestsConventionOptions}} + env: + PATVAR: $(azuresdk-azure-sdk-devops-pipeline-generation-pat)