Sign in to your organisation (https://dev.azure.com/{yourorganization}
)
Azure DevOps looks like the following screenshot.
Azure DevOps Organizations Page

Sign in to your organisation (https://dev.azure.com/{yourorganization}
)
Azure DevOps looks like the following screenshot.
When we need to create, retrieve, update or delete access to the Azure DevOps services's resources, we can use Azure DevOps REST API.
Find more Azure DevOps REST services in https://docs.microsoft.com/en-us/rest/api/azure/devops/?view=azure-devops-rest-7.1
Find more details in https://docs.microsoft.com/en-us/rest/api/azure/devops/core/processes/list?view=azure-devops-rest-7.1
ORGANIZATION=$1
PROCESS_NAME=$2
PAT=$3
curl --silent --user :$PAT \
--request GET "https://dev.azure.com/$ORGANIZATION/_apis/process/processes?api-version=6.0" | jq -r '.value[] | select(.name=="'$PROCESS_NAME'") | .id'
$ . ./getProcessId.sh kenanhancer Agile blablabla
adcc42ab-9882-485e-a3ed-7678f01f66bc
Find more details in https://docs.microsoft.com/en-us/rest/api/azure/devops/core/processes/get?view=azure-devops-rest-7.1
echo -n "Organization: " && read ORGANIZATION
echo -n "Process Name: " && read PROCESS_NAME
echo -n "PAT: " && read PAT
PROCESS_ID=$(. ./getProcessId.sh $ORGANIZATION $PROCESS_NAME $PAT)
curl --silent --user :$PAT \
--request GET "https://dev.azure.com/$ORGANIZATION/_apis/process/processes/$PROCESS_ID?api-version=6.0" | jq -r .
$ . ./getProcess.sh
Organization: kenanhancer
Process Name: Agile
PAT: blablabla
{
"id": "adcc42ab-9882-485e-a3ed-7678f01f66bc",
"description": "This template is flexible and will work great for most teams using Agile planning methods, including those practicing Scrum.",
"isDefault": true,
"_links": {
"self": {
"href": "https://dev.azure.com/kenanhancer/_apis/process/processes/adcc42ab-9882-485e-a3ed-7678f01f66bc"
}
},
"type": "system",
"url": "https://dev.azure.com/kenanhancer/_apis/process/processes/adcc42ab-9882-485e-a3ed-7678f01f66bc",
"name": "Agile"
}
Continue reading Sign in to your organisation (https://dev.azure.com/{yourorganization}
)
Treat and use a PAT like your password and keep it a secret.
Use your PAT anywhere your user credentials are required for authentication in Azure DevOps.
You can use a personal access token (PAT) as an alternate password to authenticate into Azure DevOps.
A personal access token contains your security credentials for Azure DevOps. A PAT identifies you, your accessible organizations, and scopes of access. As such, they're as critical as passwords, so you should treat them the same way.
If you're working within Microsoft tools, then your Microsoft account (MSA) or Azure Active Directory (Azure AD) is an acceptable and well-supported approach. But, if you're working with third-party tools that don't support Microsoft or Azure AD accounts – or you don't want to provide your primary credentials to the tool – use PATs to limit your risk.
find more details about creating PAT in Azure DevOps
Continue readingRun the following code to install Homebrew if you don't have in your machine.
$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
Run the following code to verify Homebrew is installed
$ brew --version
Homebrew 3.2.6
Homebrew/homebrew-core (git revision c4d5aac8ec; last commit 2021-08-07)
Homebrew/homebrew-cask (git revision 1169dcb641; last commit 2021-08-07)
$ brew update && brew install awscli
$ aws --version
aws-cli/2.2.27 Python/3.9.6 Darwin/20.6.0 source/x86_64 prompt/off
$ brew upgrade awscli
$ brew uninstall awscli
$ aws configure
AWS Access Key ID [None]: AKIAIOSFODNN7EXAMPLE
AWS Secret Access Key [None]: wJalrXUtnFEMI/K7MDENG/EXAMPLEKEY
Default region name [None]: eu-west-2
Default output format [None]: json
$ aws configure --profile kenan-dev
AWS Access Key ID [None]: AKIAI44QH8DHBEXAMPLE
AWS Secret Access Key [None]: je7MtGbClwBF/2Zp9Utk/EXAMPLEKEY
Default region name [None]: eu-west-2
Default output format [None]: json
$ aws configure list-profiles
$ aws configure list
$ aws configure list --profile kenan-dev
$ aws configure set aws_access_key_id bar --profile default
$ aws configure set aws_secret_access_key foo --profile kenan-dev
$ aws configure get aws_access_key_id --profile default
$ aws configure get region --profile kenan-dev
$ brew tap aws/tap
$ brew install aws-sam-cli
$ sam --version
SAM CLI, version 1.27.2
$ brew upgrade aws-sam-cli
$ brew uninstall aws-sam-cli
Demo repository is in the following link.
https://github.com/nodejs-projects-kenanhancer/serverless-azure-functions-typescript-demo
$ brew update && brew install azure-cli
$ az --version
azure-cli 2.26.1 *
core 2.26.1 *
telemetry 1.0.6
Python location '/usr/local/Cellar/azure-cli/2.26.1/libexec/bin/python'
Extensions directory '/Users/kenanhancer/.azure/cliextensions'
Python (Darwin) 3.8.11 (default, Jun 29 2021, 03:08:07)
[Clang 12.0.5 (clang-1205.0.22.9)]
Legal docs and information: aka.ms/AzureCliLegal
You have 2 updates available. Consider updating your CLI installation with 'az upgrade'
Please let us know how we are doing: https://aka.ms/azureclihats
and let us know if you're interested in trying out our newest features: https://aka.ms/CLIUXstudy
$ brew update && brew upgrade azure-cli
# OR
$ az upgrade
$ brew uninstall azure-cli
$ az login
If no web browser is available or the web browser fails to open, you may force device code flow with below command.
$ az login --use-device-code
$ brew tap azure/functions
$ brew install azure-functions-core-tools@3
# if upgrading on a machine that has 2.x installed
$ brew link --overwrite azure-functions-core-tools@3
$ func --version
3.0.3477
$ brew upgrade azure-functions-core-tools@3
$ brew uninstall azure-functions-core-tools@3
Actually, I struggled very very much to understand how API Connect service works. Because, I couldn't find a good documentation in IBM official site. So, I hope that someone who needs to understand may benefit from this article. I think that writing too much about API Connect UI is not very helpful. That is to say, Pictures sometimes may say many things clearly. So, you will see many screenshots with simple descriptions. 😉