Azure DevOps
Azure DevOps provides the services for allowing teams to plan work, code collaboration and development, build and deploy applications.
Azure DevOps comes in two offerings
Azure DevOps Server (Self Hosted)
Azure DevOps Services
Installing Azure DevOps Server Refer Here for single server and Refer Here for two server installation and Refer Here for multi server installation
Azure DevOps Services Can be signed Refer Here
Login into Azure DevOps Account, Create an Organization and project as discussed in the class
You can perform Agile Project Management, Sprint planning etc with Boards
Any Documentations w.r.t your project can be hosted using wikis
When you work with Azure DevOps, you can use Git or TFS version control system. The default version control system is Git and Source code can be hosted in the Git Repositories by Azure DevOps
We can use this for version control
Now since we have the code in the repository, the only thing that is left is creating a ci/cd pipeline.
To execute this pipeline we need servers (similar to jenkins nodes) which we refer as agents.
Refer Here to the list of the microsoft hosted agents
We can also use our
So for our project needs we would setup necessary agents.
To Create a pipeline we use YAML Language.
Refer Here for the YAML Schema reference
The pipeline is base of the YAML Schema Refer Here
The file which you need to create is azure-pipelines.yaml
Java pipeline example Refer Here
# Maven
# Build your Java project and run tests with Apache Maven.
# Add steps that analyze code, save build artifacts, deploy, and more:
# https://docs.microsoft.com/azure/devops/pipelines/languages/java
trigger:
- develop
pool:
vmImage: ubuntu-latest
steps:
- task: Maven@3
inputs:
mavenPomFile: 'pom.xml'
mavenOptions: '-Xmx3072m'
javaHomeOption: 'JDKVersion'
jdkVersionOption: '1.11'
jdkArchitectureOption: 'x64'
publishJUnitResults: true
testResultsFiles: '**/surefire-reports/TEST-*.xml'
goals: 'package'
Lets setup the Microsoft Agent
Configure Parallel jobs and run the pipeline
Refer Here for the tasks
Refer Here for the view of all of the tasks
Lets setup the self hosted agent
Ensure you have a linux instance with java, maven, git installed
Lets create a new agent pool
Now we need to configure and generate a token Refer Here
Follow the instructions for setting up the agent and view the agent status
Example CI/CD Pipeline
# Maven
# Build your Java project and run tests with Apache Maven.
# Add steps that analyze code, save build artifacts, deploy, and more:
# https://docs.microsoft.com/azure/devops/pipelines/languages/java
trigger:
- sprint_release_1
stages:
- stage: build
displayName: 'build the spring petclinic'
pool: qtpool
jobs:
- job: 'buildthecode'
steps:
- task: Maven@3
inputs:
mavenPomFile: 'pom.xml'
mavenOptions: '-Xmx3072m'
javaHomeOption: 'JDKVersion'
jdkVersionOption: '1.11'
jdkArchitectureOption: 'x64'
publishJUnitResults: true
testResultsFiles: '**/surefire-reports/TEST-*.xml'
goals: 'package'
- stage: deploy
displayName: 'deploy the application'
pool:
vmImage: ubuntu-20.04
jobs:
- job: 'deploy'
steps:
- task: Bash@3
inputs:
script: 'ansible --version'
Exercise: Create an Azure pipeline to build gameoflife/spring petclinic from github using agent of your choice Refer Here
Refer Here for using azure pipelines of different technologies
Try to create the Jenkinsfile for the examples of
Like this: Like Loading...