Tools for build and/or release pipelines by Marcio Parente, used to increase projects configurability, traceability and overall transparency.
Welcome task leaves a welcome note in your CI/CD. This basic task, allows you to have a clean consistent marker in the logs. Helping this marking stages start and highlighting the important steps in the pipeline.
Adds a markdown summary to your CI/CD On of the important things when running a DevOps process in your enterprise is having visible summarized descriptions of actions done or other relevant information in the process. For example is can be a automatic check list used by compliance to validate build, serving as evidence.
Querying a Cosmos Db in your CI/CD to get data as a variable In automation, there are 2 important parts, input data (configuration and metadata) and the execution engine (script, bash, PowerShell, Ansible, Terraform, etc..). This tasks allows you to centralized all the input data in an Azure Cosmos Database, serving the enterprise and not only your project. This is relevant for does that are moving into Azure and still want to have full scalability and control. This is a generic query enabler. It is up to you to define the query and respective parameters.
Get configuration document from Cosmos and adds it to your CI/CD This is what you are looking for to stop using Azure DevOps Configurations Variables (Library), and move to a scalable and controllable solution. Using a key to query an Azure Cosmos Database, it returns the data as a string (JSON formatted) and a JSON file, this then can be ingested by any subsequent tasks and stages, even added as an artifact and used later in a Release Pipeline.
This basic task, allows you to have a clean consistent marker in the logs. Helping this marking stages start and highlighting the important steps in the pipeline.
steps:
- task: deixeicom.DeixeiTasks.welcome.welcome@1
displayName: 'Welcome Marcio'
inputs:
welcomenote: 'This is my welcome note'
On of the important things when running a DevOps process in your enterprise is having visible summarized descriptions of actions done or other relevant information in the process. For example is can be a automatic check list used by compliance to validate build, serving as evidence.
At this stage you are notice that sometime your firm is asking you to provide evidence of the DevOps process, especially on the pipeline flow. This task helps your with that, it provides a visual note in the pipeline summary, this is a acceptable way to give auditors the expected visibility without the burden of parsing log files.
steps:
- task: deixeicom.DeixeiTasks.
In automation, there are 2 important parts, input data (configuration and metadata) and the execution engine (script, bash, PowerShell, Ansible, Terraform, etc..). This tasks allows you to centralized all the input data in an Azure Cosmos Database, serving the enterprise and not only your project. This is relevant for does that are moving into Azure and still want to have full scalability and control. This is a generic query enabler. It is up to you to define the query and respective parameters.
steps:
- task: deixeicom.DeixeiTasks.
This is what you are looking for to stop using Azure DevOps Configurations Variables (Library), and move to a scalable and controllable solution. Using a key to query an Azure Cosmos Database, it returns the data as a string (JSON formatted) and a JSON file, this then can be ingested by any subsequent tasks and stages, even added as an artifact and used later in a Release Pipeline.
steps:
- task: deixeicom.DeixeiTasks.getconfig.getconfig@1
displayName: 'Get Configuration stage1'
inputs:
cosmosdbservice: 'CosmosDb-Deixei-PROD'
configurationkey: stage1
teamproject: VSTSExtension
outputVariableName: cosdbq2
outputFilename: cosdbq2.json
steps:
- bash: |
echo "Get var 1"
echo "AGENT_WORKFOLDER is $AGENT_WORKFOLDER"
echo "config 1: $(COSMOSDB_cosdbq1)"
echo "config2 : $(COSMOSDB_cosdbq2)"
displayName: 'Getting configuration variables into Bash script'
steps:
- task: OneLuckiDev.json2variable.vsts-json-to-variable.oneLuckiDevJson2Variable@1
displayName: 'JSON to Variable config2'
inputs:
jsonFile: cosdbq2.json
variablePrefix: config2
Zug, Switzerland