azure devops qt integration pipeline - azure-devops

I'm setting up my first pipeline job in azure devops. My C++ application uses the QT framework with qmake to create the make files. It also makes heavy use of the QT framework.
I'd like to use the Microsoft managed ubuntu server. How do I get the QT open source framework and tools installed on the build server? Or, do I have to use a self-managed server?

You can find all the supported Software packages in Ubuntu 1604 image at here. So as per the official docs QT is not supported by the Ubuntu hosted agent,which means you have to use your own custom agent for the build.

Related

service fabric running .net 6.0 application

We are migrating our application from .NET 4.6.1 to .NET 6.0.
after deploying the migrated application, it is failing to find framework dlls. After logging into cluster VM looks like .NET 6.0 is not installed on machines. Do we have to have to separately install .NET 6 on cluster?
existing cluster is configured for auto fabric upgrade and current fabric version is 9.0.1028.9590
Thanks
You definitely don't need to install .NET frameworks on Service Fabric - this should be bundled as part of your Service Fabric application packages. We recently went through the exact process of upgrading our applications and I can also confirm that our cluster does not have any recent .NET frameworks installed.
How do you create your deployment packages? I suspect this may be the source of your problem...
For example, if using Azure DevOps, basically you need the following build tasks:
Use Net Core => to install 6.0.x SDK
Restore nuget packages
Build your .sln file via VS Studio build task
Build your .sfproj file via another VS Studio build task with parameters /t:Package /p:PackageLocation=$(build.artifactstagingdirectory)\applicationpackage
And publish artifact using source $(build.artifactstagingdirectory)
Finally, use the default powershell script Deploy-FabricApplication.ps1 that comes with default VS Studio to register and deploy your application to cluster.

Azure DevOps: What do I need to build .Net 6 solutions?

We have an on-premises Azure DevOps 2019 server, with build pipelines for numerous .Net 4.x solutions that our small team maintains using VS2019.
The team is about to upgrade to VS2022, and at some point I would like to migrate some solutions to .Net 6. Can DevOps 2019 build .Net 6 solutions, and if so what changes are needed to support this (such as presumably installing VS2022 on the server)?
Will those solutions' build pipelines require any changes or should they continue to work as-is? They don't contain anything too clever, with steps such as: NuGet restore, build solution, run unit tests, NuGet pack & push. (The build pipelines are managed via the web GUI, not YAML, if that makes a difference).
Some solutions will remain .Net 4.x, so the server will still need to support (build) these.
You should just need two things:
First you have to install the corresponding SDK for building the apps (see sdk download - Build apps - SDK) on your build-agents.
(Optional) Add or modify your set SDK Task in your pipelines (see use dotnet core task).
One more hint, you don't need to install a whole VS on the server. The Build-Tools are enough (VS2022 Buildtools preview).

How to get VS build agent capabilities without installing the full Visual Studio application?

I've installed the latest VS Build Tools (2022), but my on-prem build agent isn't picking up the VisualStudio-related capabilities. I've been under the impression that we no longer need to install the full application in order to get these capabilities.
An example from this blog post:
I've added all workloads to my offline layout, and I've included them in my installation.
I know this is possible, because earlier I accidentally included Python and VS 2019 Build Tools in my Node.js installation configuration. The VS-related capabilities were found by the agent then.
But I'm trying to get 2022, so I uninstalled 2019.
How can I get the 2022 VS-related capabilities to be installed and detected by my build agent, without installing the full Visual Studio product?
You need to upgrade the agent to a recent enough version. You can download the agent from the azure-pipelines-agent repository's releases page. Or manually specify the capabilities.
You may need to set a special environment flag on the agent to prevent it from automatically being downgraded to whatever version shipped with your version if Azure DevOps Server or Team Foundation Server.
And then you'll also need to install the latest version of the vsbuild/msbuild and vstest tasks
Required agent version
You will need to install the most recent agent from the azure-pipelines-agent repository for it to auto-detect Visual Studio 2022, or alternatively add the capabilities to the agent manually.
You may need to force Azure DevOps Server to not downgrade back to its preferred agent version. You can do so by setting the following environment variable at the system level on your server before launching the agent:
AZP_AGENT_DOWNGRADE_DISABLED=true
These tricks will work for most tasks in the azure-pipelines-tasks repository, as long as it doesn't depend on a UI extension or service connection type that isn't available in your version of Azure DevOps Server.
https://jessehouwing.net/adding-visual-studio-2022-to-azure-devops-server-2020/

Adding SSIS to a ADO build server for Build and Deploy

I have a VSTF build server which we use to build and deploy our applications mostly C#. I have now been challenged with deploying SSIS packages. From a manual perspective on my laptop we can get things accomplished, but on the build server we are having issues. This has been our guide, but it was written in 2017. https://www.red-gate.com/simple-talk/sql/ssis/deployment-automation-for-sql-server-integration-services-ssis/
We are on VSTF2019, VS2019. On the build server we use only the MSBuild tools, but it seems like SSIS on the build server wants the full UI for VS2019 and SQL Server Management Studio and SSIS.
Our issue is our C-Drive has insufficient space to support these UI's and they don't fully allow us to deploy them to the D-Drive where we have more then enough space.
I am looking for a document or how-to add SSIS (2019) to our build server so that it can be built and deployed using the least amount of space on the c-drive, like build tools. or does SSIS need a build server of its own?
You can use SSDT standalone installer to install Integration Services without a SQL server. See document here for more information.
does SSIS need a build server of its own?
Building SSIS package needs the required tools(VS2019+SSIS) to be installed in the build server. If this is achievable. You can just install the tools in your existing build server.
Or you can just create on-premise build agent on a new build server which has the tools installed.
If you are able to have a build server with Visual Studio and SSIS designer installed. Deploying SSIS packages would be much easier. You can use the SSIS Build/Deploy task directly in your pipeline. See document here.

How to enable nuget on Artifactory without using Pro features?

I just started using Artifactory for my pet project and I want to configure it to support nuget. I know that Artifactory Pro supports nuget but I am curious if it's possible to do that without using Pro.
It is not possible. You might consider applying for an account in oss.jfrog.org (if your project is popular and open-source).