Will collect process time for projects that are hosted in Azure DevOps
Project description
PR Checks:
Process Time - the time from a line change in the code to the deployment of the artefact created by this change to the production environment.
Full Documentation: https://github.com/data-driven-value-stream/.github/wiki/Process-Time
Tutorial
Here is an example https://worldpwn.visualstudio.com/process-time/_build?definitionId=4
Azure Devops repository Access
To access repository in Azure DevOps with pipline access token you need either run pipeline.yml file from the repository itself or reference needed repository in reosource.
resources:
repositories:
- repository: process-time
type: git
name: process-time
ref: main
steps:
- checkout: process-time
- checkout: self
- script: |
# do something
displayName: 'Can access both repositories'
env:
System.AccessToken: $(System.AccessToken)
Example Trunk Based Development
resources:
repositories:
- repository: process-time
type: git
name: process-time
ref: main
steps:
- checkout: process-time
- checkout: self
- script: |
# Set Variables
orgname="Azure DevOps Organization Name"
echo "orgname=$orgname"
token=$(System.AccessToken)
project="Azure DevOps Project Name"
echo "project=$project"
pipeline_id=1
echo "pipeline_id=$pipeline_id"
current_run_id=23
echo "current_run_id=$pipeline_id"
# Install Dependencies
python -m pip install --upgrade pip
pip install process-time-azure-devops==0.1.0
pip install azure-devops=7.1.0b4
# Run Process Time Package
python src/process_time_azure_devops/__main__.py --org "$orgname" --token "$token" --project "$project" --pipeline-id "$pipeline_id" --current-run-id $current_run_id
displayName: 'Can access both repositories'
env:
System.AccessToken: $(System.AccessToken)
# To publish result use run id in file name
- publish: $(System.DefaultWorkingDirectory)/process_time_result_23.json
artifact: process_time_result_23
Example Git-Flow
resources:
repositories:
- repository: process-time
type: git
name: process-time
ref: main
steps:
- checkout: process-time
- checkout: self
- script: |
# Set Variables
orgname="Azure DevOps Organization Name"
echo "orgname=$orgname"
token=$(System.AccessToken)
project="Azure DevOps Project Name"
echo "project=$project"
pipeline_id=1
echo "pipeline_id=$pipeline_id"
current_run_id=23
echo "current_run_id=$pipeline_id"
# Install Dependencies
python -m pip install --upgrade pip
pip install process-time-azure-devops==0.1.0
pip install azure-devops=7.1.0b4
# Run Process Time Package
# Add argument for development and production branch names without 'refs/heads/'
python src/process_time_azure_devops/__main__.py --org "$orgname" --token "$token" --project "$project" --pipeline-id "$pipeline_id" --current-run-id $current_run_id --production-branch-name "production" --development-branch-name "development"
displayName: 'Can access both repositories'
env:
System.AccessToken: $(System.AccessToken)
# To publish result use run id in file name
- publish: $(System.DefaultWorkingDirectory)/process_time_result_23.json
artifact: process_time_result_23
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for process_time_azure_devops-0.2.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 411dd69dfa55c3383a325474d64f2fc5261afaafdc0deec113d9c1517e1b8ae7 |
|
MD5 | 0deefa6a37c2a7ecad93f69ab0352a5e |
|
BLAKE2b-256 | 21a6c6a305a69a59c40df3ea8fc323bb2389330a74d33fe41e95213d40f6c57e |
Close
Hashes for process_time_azure_devops-0.2.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5a4efc45a98da6912e200ed70f2ceb8d72c3ecda0809d1f0832abb4e078e6fc3 |
|
MD5 | 9bca98b82f29ee011307e412ce0e25b5 |
|
BLAKE2b-256 | 7cc2f15943847045710b1c20cdcd16f2fbd5afee367473c2ad4d888d0b00fdfc |