What are the pre-requisite for creating Azure DevOps organization - azure-devops

I have been struggling to find a guidance or best practice documentation for new Azure Tenant who want to start the Azure DevOps Service journey.
The Azure DevOps documentation is created in a piece meal approach and there is no proper documentation about such guidance and it is maddening to scan through several Azure DevOps product/feature to figure out the content I wanted.
From the documentation, I understand that one needs to create Azure Organization and project structure etc. and then users within the AAD (Company's MAC tenant) can be added to Organization or at project level to collaborate.
But if I am a new Organization or Entity that has just acquired a Azure Commercial Cloud subscription then what are the guidelines to setup my Azure DevOps organization?
E.g. Do I have to be a Global Admin of my Azure Commercial
Subscription to first start the Azure DevOps Organization? Or can I be
a Admin for Dev/Test Subscription and then start the Azure DevOps
Organization? Can I use my Dev/test subscription to create Azure
DevOps organization? What are some limitation or restruction with regard to my Azure Subscription in terms of ability to create Azure DevOps organization? What roles are advised to initiate the Organization creation process?
Where is the guidance documentation or best practice documentation around it so we can put a proper governance structure on Azure DevOps - organization/project and users etc.

Here are some high level prerequisite for setting up Azure DevOps Service:
You must have a tenant in Azure Commercial or Public Cloud. You can still deploy and build on other cloud or on-premise. You need public cloud to host your DevOps Org and project configuration and optionally to host the git based code repo.
You need a Subscription in Azure Public cloud tenant
You will need a user with Account Admin, Service Admin or Subscription Admin level privileges to create first DevOPs Organization
After creating the DevOps Organization, Users (scrum master, Managers, developers and testers ) can be invited to these organization from DevOps Organization settings
Users who have Visual Studio (VS) Enterprise licenses will see most of the features in the Azure DevOps Service Organization. So having a Visual Studio Enterprise or professional license subscription is useful and these users are counted as free for Azure DevOps service user pool. These VS license already come with benefit attached and part of those benefit is the access to Azure DevOps service.
It will be greatly beneficial for Admin team (devOps Org management team) to try to understand how Azure DevOps Service Access levels and permission works and how they are mapped to different Visual Studio licenses and how to configure these access for different role of users. You can find useful information in this regard on AzureDocs.
You do not need to have Visual Studio license (it is optional) to use Azure DevOps Service. By default Azure DevOps service is free for small team of 5 developers with limited access to features. So small organization can immediately start using it within their Enterprise Account or Pay-as-you-go subscription. You can add users to your Azure DevOps Service organization irrespective of if they have VS licenses and you can pay for their subscription on a monthly basis.
Also, I will highly recommend training course from Microsoft Learn website on Azure DevOps Service to get excellent understanding of prerequisite and features of Azure DevOps Service. Just search for DevOps keyword and you will find number of courses with different modules that will provide step by step instructions on setting up your first Azure DevOps Service Organization to integrating with GitHub and building pipeline, static code analysis etc.

Related

How to dynamically manage azure devops users

Do you guys know how to dynamically manage (scripts, API, off-the-shelf solution...) the replacement of members coming from Azure AD with proprietary rights in Azure DevOps organizations and also in Azure DevOps projects (which are inside these organizations)
Thanks for your(s) answer(s)

Azure DevOps Server/Services licensing question

Apologies if this is the wrong location for this. We are currently on TFS 2015 and considering a move to either Azure DevOps Services or on-premize Azure DevOps Server 2020.
For DevOps Services, we already have an Azure subscription. Is there an additional charge on top of our existing subscription to use Services?
For DevOps Server, we just purchase a new software license from Microsoft?
"With Azure DevOps Server 2019 you can either pay month-to-month through Azure or you can buy classic software licenses which requires a 3-year commitment. Buying through Azure provides bonus of entitling you to use our cloud service, so you can move to the cloud at your own pace."
https://azure.microsoft.com/en-us/pricing/details/devops/server/
For Azure DevOps Server 2020, you should first check if you have Visual Studio subscriptions (professional or enterprise) that include the server license. You most likely do, so no need for additional server licenses from Microsoft. Then decide if users that don't currently have the mentioned licenses need either one of those or a basic license, or if they a good to go with just a limited stakeholder access.
https://azure.microsoft.com/en-us/pricing/details/devops/server/
Azure DevOps on-premise costs
https://learn.microsoft.com/en-us/azure/devops/organizations/security/get-started-stakeholder?view=azure-devops&tabs=agile-process
For Azure DevOps Services, the answer is a bit more complicated. The basic plan is free for 5 team members, and some CI/CD and artifact storage capabilities. Additional CI/CD and storage capabilities, and extra users add costs per month. Test Plans also cost extra. You can calculate costs here:
https://azure.microsoft.com/en-us/pricing/details/devops/azure-devops-services/
Existing Visual Studio Subscribers can use Azure DevOps with that license, and also bring an extra self-hosted job with them:
https://learn.microsoft.com/en-us/visualstudio/subscriptions/vs-azure-devops
If this sounds confusing, that's probably because it is and I've probably also missed out something here.

Azure Devops Organization Management

can you please help us with the best practices in terms of managing the organization interms of Azure Devops.
Is it suggested to use two different Azure Devops organization for Development and Production.
How the mobility of resources between organization is supported?
How the resources(pipelines,repos,testplans,boards) can be shared accros organization in Azure Devops?
what is the microsoft recommendations of maintaining the multiple Azure Devops Organizations?
There are very few cases to create multiple Azure devops organizations since you can delegate access through project collection administrators to multiple projects. The main reason to create a separate org is for legal or administrative requirements where the two sets of repos/board/pipelines need to be separated and can't have a shared org administrator.
https://github.com/MicrosoftDocs/azure-devops-docs/blob/master/docs/user-guide/plan-your-azure-devops-org-structure.md

Connect Azure Pipelines to GitHub Enterprise

We have a hosted GitHub Enterprise (GHE) account which needs to integrate with Azure Pipelines. I have installed the Azure Pipelines app from the GitHub Marketplace for our GHE account. The installation of the Azure Pipelines app asks to select an Azure DevOps project and GHE repo to setup the integration. This results in one pipeline being connected to a GHE repo.
But my question is, how to we setup other pipelines within Azure DevOps to use repos in GHE?
Nowhere in the Azure Pipelines interface can I find an option to select a GHE repo. Only public GitHub and GitHub Enterprise (on-prem) server repos. It seems that only the Azure Pipelines app setup wizard allows you to configure a pipeline with a GHE.
I can't imagine that we would have to initiate the setup wizard of the Azure Pipelines app every time we want to connect a pipeline to a GHE repo. That wouldn't even be possible, because most coworkers won't have the permissions to do that. What am I missing?
Remark: I realize that we could create a service connection in Azure DevOps using on a Personal Access Token or username+password. But that's tied to someone's personal account. If that person would leave, the connection is broken. Unless you create a service/dummy account, which doesn't seem very elegant.
If you use GitHub Enterprise, then you can integrate with Azure AD. Then based on group membership you can assign access to repositories with the help of Github Teams.
Then based on those permissions the repos to which somebody has access will be visible during the setup of the Azure DevOps pipeline.
Some useful resources:
https://learn.microsoft.com/en-us/azure/active-directory/saas-apps/github-tutorial
https://github.blog/2019-09-24-azure-active-directory-team-synchronization-now-available-with-enterprise-cloud/
https://help.github.com/en/github/setting-up-and-managing-organizations-and-teams/about-teams
https://enterprise.github.com/support
I found out the cause of the issue.
First of all, when you install the Azure Pipelines app from the GitHub marketplace, you first need to make sure that you select your GitHub organisation and not your personal account.
Secondly, during the installation you are taken to Azure DevOps to setup your project. Two different authorization pages will be shown; "Azure Pipelines by Microsoft would like to [...]" and the page for OAuth authorization. As can be seen in below image, there is a small grant button that's easily overlooked. You need to press that button before you press the large green that says "Authorize AzurePipelines"
I am now able to select my GitHub Enterprise repositories when I create a new pipeline in Azure DevOps. I simply choose GitHub as the source where my repository lives.

Can I have multiple Azure DevOps organisations with MSDN Subscription?

I've tried to find an answer to this but nothing that gives anything definite.
I have a MSDN subscription (Visual Studio Enterprise). I have used the benefit from that to create a Azure DevOps environment that works well.
I am looking to create a new set of projects for a specific company, and it seems logical to create a new 'Organisation' to hold that code and work items.
Can you do this with the MSDN license? Or do I need to buy a subscription to bill that Azure DevOps instance to?
Can I have multiple Azure DevOps organisations with MSDN Subscription?
The short answer is NO.
Visual Studio Enterprise and Azure devops are two different products that have their own licenses, they could not share a licenses.
Besides, you can have multiple Azure DevOps organisations for free, but the free tier of resources in your organization is restricted, the Free tier includes:
Five Azure DevOps users (Basic).
Five Azure Artifacts users.
Free Tier of Microsoft-hosted CI/CD (one concurrent job, up to 30 hours per month).
One self-hosted CI/CD concurrent job.
20,000 virtual user minutes of cloud-based load testing.
When you need more than the free tier of resources in your organization, or to buy other features for your users that are offered by Microsoft or other companies via the Visual Studio Marketplace, on the Azure DevOps tab, you need buy a subscription to bill that Azure DevOps instance.
Check following threads for some more details:
Billing overview for Azure DevOps
Pricing for Azure DevOps
Compare features between plans
Hope this helps.
Not sure if Leo entirely answers the question.
Since you do have Azure DevOps as a MSDN benefit beyond the free tier.
MSDN Azure DevOps Benefits
So the question as I understand it is, does the MSDN Azure DevOps benefits follow the user? Or is it tied to just one Organization? Luckily this has just changed or at least been clarified, not sure how it worked before.
Still only states the regular payd plans, and not the MSDN benefits, but I can't see any reason why this should be any different.
One license works across multiple organizations
Starting in late June,
users will only need one license per Azure subscription, even if they
are part of multiple Azure DevOps organizations. This means that
regardless of how many organizations a user is a part of in a given
Azure subscription, they will only need and only pay for one Basic or
one Basic + Test Plans license.
https://devblogs.microsoft.com/devops/a-simpler-way-to-buy-azure-devops/