How does Visual Studio Team Services Transport Secret Variables? - tfs

We are currently in the process of evaluating Visual Studio Team Services (VSTS) release management as our continuous deployment (CD) tool. My System Administrators are not crazy about storing any kind of password or secret in VSTS or any other CD tool without having a good understanding of what security is being used. I have already found documentation that describes how VSTS stores Secret Variables at rest, but what I can not find is documentation that describes what security VSTS uses to transports Secret Variables to the build/Release Agents. This is important because we will be deploying to on-premises pre-production environments which means the credentials and secrets entered into VSTS will be sent over the internet. So to sum up my question what encryption does VSTS use to communicate with agents.
Documentation on how VSTS secures Secret Variables at rest.
https://www.visualstudio.com/en-us/docs/build/define/variables#secret-variables

It's all standard HTTPS. No special protocols or encryption are involved.

Related

Azure Data Factory CI/CD without using AzureDevOps & AzureRepo

With Azure Data Factory, mostly used with Azure Repo & for CI/CD, Azure DevOps is used.
Currently I am using Azure Data Factory, where the AzureRepo not configured and Azure DevOps is not to be used as DevOps need to be build around a framework which included GitLab, Concourse-CI , Terraform and other OpenSource tools. All the JSONs are exported & available on GitLab. From there Azure Data Factory need to be created on every check-in from the ARMs/ADF-JSONs.
Let me know if anyone has came across such scenarios and is there a way to publish Azure Data Factory without using AzureDevOps & AzureRepo.
Yes there is. The JSONs being exported are standard Azure Resource Manager (ARM) templates. These templates can be deployed from outside of Azure DevOps.
Here is how to deploy ARM templates using GitHub Actions
Another option would be to use Powershell New-AzResourceGroupDeployment -ResourceGroupName <resource-group-name> -TemplateFile <path-to-template>
Basically anything on how to deploy ARM templates to Azure will allow for Data Factory pipelines and infrastructure to be deployed.

Unable to install Test Manager extension on Azure DevOps Server 2019

Recently we have upgraded our TFS server to the latest 2019 version.
As the Admin, I was trying to install the downloaded Test Manager extension just like we did in TFS2017 and TFS2018.
However, I was unable to install it even with full access and TFS test plan subscription.
This extension does not support the version of the Server you are
currently using. See Works With for supported Server versions.
What should I do, am I missing something? Why it not work with TFS2019? Appreciate your help.
This is the expected behavior when you try to install the extension in Azure DevOps Server 2019. You do not need to install extra Test Manger for Azure DevOps Server 2019.
The official link is also clearly: This extension does not support the version of the Server you are currently using. See Works With for supported Server versions.
It only work Works with
Team Foundation Server 2017
Team Foundation Server 2018
Note:
Manual testers do not need this extension and can execute tests as a
Basic user in an Azure DevOps organization/collection. Read more on
this here.
This extension is available out-of-the-box in Azure DevOps Services and Azure DevOps Server (2019 onwards) and hence doesn't need to be acquired for them.
We strongly recommend you to use Azure Test Plans or the Test hub in Azure DevOps Service/Server (a fully featured Test management solution) over Microsoft Test Manager for all your test management requirements. There will be no new versions of Microsoft Test Manager.Microsoft Test Manager 2017 (which shipped with Microsoft Visual Studio 2017) is the last version.
More details please take a look at our official tutorial here.
Besides, to use Azure Test Plans in Azure DevOps service you need some License requirements
Azure Test Plans uses an access level called Basic + Test Plans, which is available from Azure DevOps.
For the Manual testing permissions and access suggest refer this link: https://learn.microsoft.com/en-us/azure/devops/test/manual-test-permissions?view=azure-devops#license-requirements
Hope this helps.
As mentiond in the Extension page:
This extension is available out-of-the-box in Azure DevOps Services and Azure DevOps Server (2019 onwards) and hence doesn't need to be acquired for them.
So you don't to install it, it's exist :) just go to the "Test Pans" tab in the left menu (maybe you need give permissions in the settings).

Implementing Azure DevOps Services with On-premise TFS Release Manager

We have Release Management for VS 2013 running for all our builds and releases on-premise. We are not ready to publish our systems to Azure Cloud yet, but would like to migrate our source-code to Azure DevOps Services in the mean time. We are also not ready to publish via Azure DevOps Pipelines to agents installed on our servers. Is it possible to have your source-code in Azure DevOps Repos, build the source using either Microsoft-hosted or self-hosted agents and then have Release Management for VS2013 release them to our environments?
I am able to do normal published via Azure DevOps Services totally to Azure Cloud, and even to on-premises with distributed agents running on servers, with test applications, but this would mean I have to recreate every build definitions, we have created, again in Azure DevOps, and also that we would bypass our Release Management server.
We would like to stick with Release Manager for now for releases, but want to migrate our source-code and work-items into Azure DevOps and build source in Azure DevOps Pipelines.
It's unlikely to work. Release Management Server 2013 only supported XAML builds. 2015 had support for JSON/visual designer builds, but the support wasn't particularly robust. I'm not even 100% sure that RM Server can communicate with a modern Azure DevOps instance. You're using a 6 year old tool that's been deprecated and unsupported for several years; you're not going to find a lot of options to keep it working properly with modern, supported tools.
There is a tool that can extract PowerShell deployment scripts from RM Server that can be used (with some degree of rework) in an Azure DevOps pipeline, but it's not a perfect solution. And I say that as the primary developer of that tool.

Continous Integration on Azure Mobile Services?

Is there any way to enable continuous integration on azure mobile services using Team Foundation (TFS) source control?
I have seen its easily done on Azure Websites and Cloud Services but i dont see an option on mobile services.
My only option is to set up a custom server ?
You are looking for this:
and maybe you shoudl see this too:
Store project code in source control
Git Source Control Integration with Windows Azure Mobile
Services
Update: your source control can be TFS and you should have your own CI Server, and when is all ok you should use a git command to push it to Azure.

Can we use TFS as Source Code Repository for Salesforce?

Can we use TFS as Source Code Repository for Salesforce? If yes then is there any TFS/Salesforce API which can be used to fetch the latest code from Salesforce Dev Org?
You can store your code in any SCM system. Salesforce orgs also have meta-data that affect configuration and this must be exported, usually via an SFDC plug-in to an IDE like eclipse. Deploying code to SFDC must be through their interfaces and requires test code. This could all be scripted in .NET / PS via SFDC API, but that is beyond the scope of a post like this IMO.
Yes. You can fetch the code from Project collection and deploy into Sandbox.
However, the command line fetch from TFS is still evolving and in TFS 2013 , there are some new changes.
AutoRABIT - a release management suite for Salesforce Applications has support for deployments from Team Foundation Server [ TFS 2013 ] - Salesforce Sandbox or auto-commit from Sandbox to TFS .
Niranjan

Resources