bicep
bicep copied to clipboard
Add support for azure devops resources (project/repo/build)
Issues: Im working on automating creation of CI/CD environments in AzureDevops and looking at using Terraform's azuredevops provider. This is a great solution but has limitation; For example there isn't support to create pipelines. Bicep supports azure devops pipelines, but nothing else (as far as I can tell). To accomplish what I want I'll have to use a mix of tools (Terraform/Bicep/REST API) and it will be complicated.
Proposed Solution: Add arm template and bicep support to cover AzureDevops resource creation (Projects, Git Repo, Build, Pipelines). This will simplify similar solutions by consolidating work into one tool (bicep).
------====Example config====--------
resource my_project 'Microsoft.DevOps/project' {
name: 'My Awesome Project'
description: 'All of my awesomee things'
}
resource my_git_repo 'Microsoft.DevOps/repository' {
project_id: my_project.id
name: 'My Awesome Repo'
initialization: {
init_type: 'Clean'
}
}
resource my_build_def 'Microsoft.DevOps/build_definition' {
project_id: my_project.id
name: 'My Awesome Build Pipeline'
path: '\\'
repository: {
repo_type: 'TfsGit'
repo_id: my_git_repo.id
branch_name: my_git_repo.default_branch
yml_path: 'azure-pipelines.yml'
}
}