Explore all DevOps open source software, libraries, packages, source code, cloud functions and APIs.

DevOps is a set of practices that combines software development (Dev) and IT operations (Ops). It aims to shorten the systems development life cycle and provide continuous delivery with high software quality.

Popular New Releases in Devops

kubernetes

Kubernetes v1.24.0-rc.0

moby

v20.10.12

gogs

0.12.6

traefik

v2.6.3

terraform

v1.1.9

Popular Libraries in Devops

kubernetes

by kubernetes doticongodoticon

star image 87661 doticonApache-2.0

Production-Grade Container Scheduling and Management

moby

by moby doticongodoticon

star image 62382 doticonApache-2.0

Moby Project - a collaborative project for the container ecosystem to assemble container-based systems

free-for-dev

by ripienaar doticonhtmldoticon

star image 53713 doticon

A list of SaaS, PaaS and IaaS offerings that have free tiers of interest to devops and infradev

ansible

by ansible doticonpythondoticon

star image 52834 doticonGPL-3.0

Ansible is a radically simple IT automation platform that makes your applications and systems easier to deploy and maintain. Automate everything from code deployment to network configuration to cloud management, in a language that approaches plain English, using SSH, with no agents to install on remote systems. https://docs.ansible.com.

gogs

by gogs doticongodoticon

star image 38876 doticonMIT

Gogs is a painless self-hosted Git service

traefik

by traefik doticongodoticon

star image 37382 doticonMIT

The Cloud Native Application Proxy

chinese-poetry

by chinese-poetry doticonjavascriptdoticon

star image 33797 doticonMIT

The most comprehensive database of Chinese poetry 🧶最全中华古诗词数据库, 唐宋两朝近一万四千古诗人, 接近5.5万首唐诗加26万宋诗. 两宋时期1564位词人,21050首词。

terraform

by hashicorp doticongodoticon

star image 32174 doticonMPL-2.0

Terraform enables you to safely and predictably create, change, and improve infrastructure. It is an open source tool that codifies APIs into declarative configuration files that can be shared amongst team members, treated as code, edited, reviewed, and versioned.

12306

by testerSunshine doticonpythondoticon

star image 30070 doticonMIT

12306智能刷票,订票

Trending New libraries in Devops

Docker-OSX

by sickcodes doticonshelldoticon

star image 21476 doticonGPL-3.0

Run Mac in a Docker! Run near native OSX-KVM in Docker! X11 Forwarding! CI/CD for OS X!

backstage

by backstage doticontypescriptdoticon

star image 16116 doticonApache-2.0

Backstage is an open platform for building developer portals

awesome-compose

by docker doticonhtmldoticon

star image 14536 doticonCC0-1.0

Awesome Docker Compose samples

lima

by lima-vm doticongodoticon

star image 7768 doticonApache-2.0

Linux virtual machines, typically on macOS, for running containerd

kubescape

by armosec doticongodoticon

star image 5495 doticonApache-2.0

Kubescape is a K8s open-source tool providing a multi-cloud K8s single pane of glass, including risk analysis, security compliance, RBAC visualizer and image vulnerabilities scanning.

datree

by datreeio doticongodoticon

star image 5449 doticonApache-2.0

Prevent Kubernetes misconfigurations from reaching production (again 😤 )! Datree is a CLI tool to ensure K8s manifests and Helm charts follow best practices as well as your organization’s policies. See our docs: https://hub.datree.io

FastGithub

by dotnetcore doticoncsharpdoticon

star image 4692 doticonMIT

github加速神器,解决github打不开、用户头像无法加载、releases无法上传下载、git-clone、git-pull、git-push失败等问题

tye

by dotnet doticoncsharpdoticon

star image 4534 doticonMIT

Tye is a tool that makes developing, testing, and deploying microservices and distributed applications easier. Project Tye includes a local orchestrator to make developing microservices easier and the ability to deploy microservices to Kubernetes with minimal configuration.

k0s

by k0sproject doticongodoticon

star image 4410 doticonNOASSERTION

k0s - The Zero Friction Kubernetes by Team Lens

Top Authors in Devops

1

jenkinsci

157 Libraries

star icon36916

2

puppetlabs

129 Libraries

star icon6295

3

aws-quickstart

129 Libraries

star icon3045

4

PacktPublishing

123 Libraries

star icon2462

5

sous-chefs

122 Libraries

star icon9603

6

hashicorp

121 Libraries

star icon131295

7

microsoft

121 Libraries

star icon29936

8

aws-samples

112 Libraries

star icon7026

9

chef-boneyard

107 Libraries

star icon4199

10

bitnami

102 Libraries

star icon10089

1

157 Libraries

star icon36916

2

129 Libraries

star icon6295

3

129 Libraries

star icon3045

4

123 Libraries

star icon2462

5

122 Libraries

star icon9603

6

121 Libraries

star icon131295

7

121 Libraries

star icon29936

8

112 Libraries

star icon7026

9

107 Libraries

star icon4199

10

102 Libraries

star icon10089

Trending Kits in Devops

Java E-Commerce Libraries help build e-commerce websites. It provides various frameworks, tools, and utilities for developing online shopping websites. 


There are many Java E-Commerce libraries available in the market, which enable you to write your own e-commerce website in easy steps. Java E-Commerce Libraries like shopizer, micro-ecommerce, and keyist-ecommerce are also used for developing an eCommerce website. These libraries are used in e-commerce applications since they provide a platform for making payment gateways, shopping carts, and other functionalities of an e-commerce website.


Shopizer is the most popular Java e-commerce library that allows you to create a customized online store without any coding. It comes with integrated payment gateways, shipping plugins, and many other features, which make it one of the best options for small businesses looking to start an online store. Keyist-Ecommerce is an open-source Java library that allows you to build an online store with minimal effort and time. The library supports multiple languages, including English, Chinese, Japanese and Korean. It also offers integrated payment gateways, shipping plugins, and other features that make it easy for developers to build custom websites without having to write any code themselves. Micro-eCommerce is an open-source Java library that allows you to build an online store without any coding knowledge required by developers. It has over 350 features built in along with integrated payment gateways, shipping plugins, and many other features that make it easy for developers to create custom websites. Some of the most popular Java E-Commerce Libraries among developers are given below

shopizer:  

  • Shopizer is an open-source e-commerce software platform designed for building.  
  • It is a flexible and customizable solution for businesses.  
  • Shopizer is released under the Apache 2.0 license, making it open-source and free to use.  

eCommerce-order-service:  

  • eCommerce-order-service is a Java library typically used in websites and e-commerce applications.  
  • It has a Permissive License, and it has a medium support.  
  • It handles various aspects related to customer orders. 

micro-ecommerce:  

  • Micro-ecommerce might refer to the use of microservices architecture in the context.  
  • This architecture aims to improve scalability, maintainability, and agility in the development.  
  • Micro-ecommerce helps describe smaller or lighter e-commerce businesses.  

Keyist-Ecommerce:  

  • Keyist-Ecommerce is a term used within a specific context or community.  
  • It may be beneficial to seek information from sources associated with that context.  
  • This will provide the most accurate and up-to-date information about its features and functionalities.  

e-commerce-microservice:  

  • e-commerce microservice refers to the application of microservices architecture in the development.  
  • Microservices architecture is an approach where a large and complex application decomposes.  
  • Microservice in the e-commerce system handles a specific business capability.  

ddd-example-ecommerce:  

  • DDD is an approach to software development. It emphasizes understanding the business domain and modeling it in code.  
  • DDD often involves defining bounded contexts to encapsulate specific business domains.  
  • DDD distinguishes between entities and value objects. Entities have an identity and are mutable.  

Android-E-Commerce-Shopping-Application:  

  • Android-E-Commerce-Shopping-Application is a Java library. It is typically used in Retail, Security, Authentication, and Firebase applications.  
  • Android-E-Commerce-Shopping-Application has no bugs or vulnerabilities.  
  • It has a Permissive License, and it has low support.  

Ecommerce-Morningmist-Android:  

  • Ecommerce-Morningmist-Android is a Java library that is typically used in retail websites.  
  • Ecommerce-Morningmist-Android has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported. 

FAQ

1. What are Java E-commerce Libraries?  

Java E-commerce Libraries are sets of pre-built, reusable code components and functionalities. These libraries often include modules for product management, cart handling, and payment processing.  

  

2. Why use Java for E-commerce Development?  

Java is popular for its portability, scalability, and robustness. It's platform-independent, making it suitable for building enterprise-level applications. Java has a vast ecosystem and community support. It also contributes to its popularity in e-commerce.  

  

3. Which Java E-commerce Libraries are widely used?  

Some widely used Java E-commerce Libraries include:  

  1. Broadleaf Commerce: An open-source, customizable framework for building e-commerce solutions.  
  2. Hybris: A robust and scalable e-commerce platform.  
  3. Apache OFBiz (Open for Business): An open-source framework for building enterprise automation applications.  

  

4.  How can I integrate Payment Gateways with Java E-commerce Libraries?  

Java E-commerce Libraries often provide APIs or modules for integrating with popular payment. The Developers follow the documentation provided by the library in a specific way.  

  

5. Are there Java E-commerce Libraries suitable for small businesses?  

Yes, some Java E-commerce Libraries cater to the needs of small businesses. The Smaller libraries or frameworks may also be suitable for lightweight e-commerce requirements.  

Developing and deploying apps, managing infrastructure, monitoring, logging activity, and other development and operations procedures can all be automated using C-Sharp DevOps libraries. The programming language C# is frequently used to create various applications, including backend services, desktop, mobile, and web based. On the .NET platform, which offers a wealth of libraries and tools for creating, deploying, and maintaining applications, C# serves as the principal language for developing applications.  


Building and deploying apps, managing infrastructure, and monitoring and logging are just a few development and operations processes that can be automated in DevOps using C# libraries. By automating and streamlining their operations, these libraries can aid developers, and DevOps engineers in producing higher-quality software more rapidly and effectively. DevOps aims to make it possible for businesses to produce higher-quality, more reliable, and quicker software. A software development process called DevOps strongly emphasizes teamwork, communication, and integration between IT operations teams and software developers. Azure Microsoft offers a suite of DevOps tools and services for creating, delivering, and managing applications. It is a cloud-based platform that interfaces with various tools and services, such as GitHub, Azure, and Visual Studio, to offer a full range of DevOps capabilities. 


Check out the below list to find the best C# DevOps libraries for your application: 

You can use these to implement different types of automation, including web scraping, data extraction and manipulation, and workflow management.

 

Python is the most widely used programming language for automation. No matter what kind of task you want to automate in Python, there's a library for it. The most popular Python Automation library is Selenium WebDriver. It is one of the most widely used tools for automating browsers on the internet today. Selenium allows users to access their browsers through code (Python or Java). Other Python automation libraries can be used to test web applications or perform tasks like form filling/submission without requiring human interaction. The biggest advantage of using Python libraries is that they do not require any installation because they are written entirely in Python. So, all you need is your favorite text editor (like Sublime Text).

 

We have handpicked the top and trending open-source Python automation libraries for your next application development project:

 

Ansible:

  • Used in DevOps, Ansible, Docker applications, etc.
  • Makes the deployment and maintenance of applications and systems easier.
  • Helps automate tasks like code deployment, network configuration, cloud management, etc.

Selenium: 

  • Used in Testing, Functional Testing, Selenium applications, etc.
  • Offers a variety of tools and libraries enabling web browser automation.
  • Provides an infrastructure for the W3C WebDriver specifications.

Prefect:

  • Used in Automation, BPM applications, etc.
  • Helps ensure that workflows execute properly.
  • Offers one of the easiest ways to coordinate your dataflow.

Tpot:

  • Used in Artificial Intelligence, Machine Learning applications, etc.
  • Optimizes machine learning pipelines using genetic programming.
  • Helps automate the most tedious part of machine learning.

Robotframework:

  • Used in Automation, Selenium applications, etc.
  • Offers a generic automation framework.
  • Useful for acceptance testing and RPA.

Playwright-python:

  • Used in Testing applications, etc.
  • It’s the Python version of the Playwright testing and automation library.
  • Delivers capable, reliable, and fast automation.

Pyautogui:

  • Used to control the mouse and keyboard programmatically.
  • It’s a cross-platform GUI automation Python module.
  • Supports Python 2 and 3 on Windows, macOS, and Linux operating systems.

Pywinauto:

  • Used to automate the Microsoft Windows GUI.
  • Allows sending mouse and keyboard actions to windows dialogs and controls.
  • Also, supports more complex actions like getting text data.

SeleniumBase:

  • Used in Testing, Functional Testing, Selenium applications, etc.
  • Offers a Python framework for browser automation and E2E UI testing.
  • Includes Test Case Management Software with Markdown technology.

Tox:

  • Used in DevOps, Continous Integration, Jenkin applications, etc.
  • It’s a generic virtual environment management and test command line tool.
  • Helps automate and standardize testing in Python.

Automagica:

  • Used in Automation, Docker applications, etc.
  • Provides AI-powered Smart Robotic Process Automation.
  • Helps automate a variety of tasks and processes.

Selenium-python-helium:

  • Used in Testing, Functional Testing, Selenium applications, etc.
  • Makes it easier to use Selenium-python for web automation.
  • Offers a high-level API for tasks such as Web driver management, iFrames, Window management, etc.

Build automated sanitization robots that can be employed in hospitals and other public and private premises using open-source libraries and frameworks.


Today, sanitization is much needed in every place including hospitals, offices, homes, public places, and whatnot. The Covid-19 pandemic has made sanitization a buzzword even though it existed for ages. In this modern era, robots are playing a vital role in reducing human efforts and helping to get the job done by saving time and money.


We can use these robots to sanitize the hospitals, that would eventually help in saving precious human life. The main purpose of these robots is to minimize person-to-person contact and to ensure cleaning, support in hospitals, and quarantine. This will help in reducing threats to medical staff and doctors taking an active role in pandemic for managing health care systems. You can use open-source libraries and components while building such robots.


Listed below are the best libraries that can be reused by developers in their projects for building hospital sanitizing robots:

Creating an online voting system using reusable libraries involves selecting appropriate libraries for different components of the system.


In recent years, the usage of mobile phones is increased. It has been surveyed that there is a rising interest in voting on SMS cell phones and through social networking tools like Facebook or Twitter. It's believed the voting process by cell phones gives some decision power to the citizens, which can actuate directly on decisions of their concerns. The voting process also can give ways for numerical information surveillance about social phenomena. It describes the intention to create an electronic voting process using mobile. You can create your own customized online e-voting system. 1. Development Environment 2. Database 3. Vote collecting Web Services 4. E-voting application 5. Vote Tally application

Development Environment

VS code is used for development for web application.

Database

Database is used to collect and maintain the voting data collected during the public voting process.

Vote Tally application

Application is used to tally the votes.

Vote collecting Web Services

The services are dynamic pages which receives parameters via the web browser component from inside Android application.

E-voting application

e-voting application is used for smart voting from various devices

Build enhanced server side scripting for various usecases in Ruby for your application.Get ratings, code snippets & documentation for each library.

This article details the journey of Enatega, an open-source food delivery app solution, now available on the github platform. We've adapted Enatega to seamlessly integrate with github's open-source infrastructure, empowering entrepreneurs to launch their own food delivery ventures.

Our Shift to Open Source

Four years after navigating the complexities of proprietary software, we're thrilled to announce Enatega's open-source availability on github, side project of ninjas code. This move fosters a collaborative environment and empowers businesses to establish their own food delivery services.

Enatega's Advantages

  • Simplified Setup: Enatega streamlines the setup process, allowing you to effortlessly launch the project on your local system.
  • Flexibility and Adaptability: Test Enatega on both emulators and physical devices for seamless cross-platform functionality.
  • Open-Source Benefits: Leverage a vibrant developer community, comprehensive documentation, and instructional videos to navigate the software with ease. Explore and customize the source code on https://github.com/ninjas-code-official/food-delivery-singlevendor.


Introducing Enatega Multivendor

Enatega Multivendor offers a feature-rich solution for multi-vendor food delivery services across iOS, Android, and web platforms. It incorporates Amplitude for insightful dashboard analytics and boasts a user-friendly design for both mobile and web applications.

Technology Stack

The robust technology stack behind Enatega Multivendor ensures exceptional performance and scalability:

  • Frontend: React Native (Mobile Apps), React (Web Dashboard & Customer Web App)
  • Backend: Node.js, MongoDB, ExpressJS
  • Database: MongoDB (with Mongoose for Object Data Modeling)
  • Payments: Stripe, PayPal
  • Analytics & Error Reporting: Amplitude, Sentry
  • Push Notifications: Firebase (Web)

Enatega Full App Features

  • Mobile Apps (iOS & Android) for Customers, Riders, and Restaurants
  • Web App for Customers and Admin Dashboard
  • Feature-Rich API Server
  • Analytics Dashboard with Amplitude Integration
  • Error Reporting with Sentry

Contributing to the Project

We actively seek contributions from developers to further enhance Enatega. Join our Discord community (link at the end of the article) to connect with fellow developers and explore contribution opportunities. You can contribute by creating issues or submitting Pull Requests (PRs).

We welcome your involvement! Fork the repository on [invalid URL removed], create a branch, and request assignment to specific "good first issues." Our development team will review and integrate your contributions, recognizing you as a valuable contributor.

Join us in building a powerful open-source food delivery ecosystem!

Discord Community Link: [Join us on Discord (https://discord.com/invite/774fJ72qwH)]

kandi 1-Click Install

Here are some of the famous C# Microservice Libraries. C# Microservice Libraries' use cases include Data Access, Business Logic, Security, Automation, Integration, and Monitoring. 


C# Microservice Libraries are packages of code that allow developers to rapidly create, deploy, and manage microservices in the C# programming language. They provide a foundation of reusable code and components, such as authentication, logging, and messaging, that can be used to create and deploy microservices quickly. Additionally, they often provide tools and frameworks to assist in developing, deploying, and managing microservices. 


Let us have a look at these libraries in detail below. 

eShopOnContainers 

  • Built-in support for distributed application architectures and stateful microservices. 
  • Fully container-based architecture. 
  • Support for cloud-native development. 

CAP 

  • Provides a unified API for building distributed, event-driven microservices. 
  • Provides a lightweight, cloud-native infrastructure for running microservices.  
  • Provides a complete set of tools and libraries for developing, testing, and deploying microservices. 

tye 

  • Allows developers to create and manage multiple services with a single command.  
  • Automatically detect and manage configuration changes across services.  
  • Allows developers to iterate and test their code with a single command quickly. 

surging 

  • Supports Dependency Injection (DI), which makes it easier for developers to manage and maintain their code.  
  • Provides API gateways that allow for better control over API traffic.  
  • Provides service discovery, allowing developers to locate network services easily. 

coolstore-microservices 

  • Includes a comprehensive logging and reporting system. 
  • Supports a wide range of service discovery and monitoring tools. 
  • Provides a modern CI/CD pipeline for automated deployment of applications and services. 

run-aspnetcore-microservices 

  • End-to-end monitoring and logging of service calls and performance data. 
  • Intuitive and extensible service-oriented architecture (SOA) framework. 
  • Support for advanced message-based communication between services. 

microdot 

  • Built on the Actor Model, providing a robust framework for distributed, concurrent, fault-tolerant, and scalable applications. 
  • Built-in dependency injection system, allowing developers to quickly and easily inject dependencies into their services. 
  • Built-in support for load-balancing, meaning that services can be distributed across multiple nodes in the cluster. 

Micronetes 

  • Provides a simple way to package, deploy and manage microservices with Docker containers. 
  • Powerful integration layer that allows developers to connect microservices easily with each other.    
  • Supports service discovery, which allows services to be discovered and connected automatically. 

awesome-dotnet-tips 

  • Wide selection of tips and tricks for developing more efficient and maintainable C# microservices. 
  • Easy-to-use command line interface. 
  • Built-in support for the latest versions of popular C# frameworks. 

Convey 

  • Provides various features, such as distributed tracing, service discovery, and resilience. 
  • Offers an opinionated approach to microservices architecture. 
  • Provides a set of tools for testing and monitoring microservices 

OpenCV offers a range of tools. You can make different circles. They can be simple shapes. In OpenCV, circles are mainly used for computer vision and image processing. 


They can show different objects or features in an image. The circles can be simple shapes for image notes or complex patterns for specific uses. You can create circles with OpenCV using various methods. You can create circles by using math. Just give the center coordinates and radius. 


You can make more advanced circles by using graphical techniques. Contour drawing functions let you make detailed shapes by picking points on the edge. OpenCV has a big collection of drawing tools. You can make circles in different styles and sizes.   


To create circles with OpenCV, use the right data types for parameters. This guarantees accuracy when rendering circles. Using the right algorithms for drawing circles can make them better and faster. Organizing your code well and adding comments makes it easier to read and maintain. This is especially important when dealing with complex circle-drawing tasks.  


If you want to improve circles in OpenCV, use anti-aliased shapes. This will give you smoother edges and reduce aliasing artifacts. To control how circles look, use the "thickness" parameter to choose the line thickness. To improve working with circles, organize your code and follow best practices.  


Circles have found practical applications in various domains. In computer vision, circles are often used to track and find objects in videos. They show object position and movement. In image processing, we use circles to find and mark important areas. People use circles in creative applications like digital art and graphic design. You can combine and manipulate them to create attractive patterns and compositions. 

 

To summarize, OpenCV has strong tools for making circles of various types and complexities. Circles are useful in computer vision and image processing. They can track objects in video and enhance digital art. Developers and designers who work with circles find OpenCV's circle generation capabilities essential. It is useful for both practical and artistic projects.  

CODE

  1. Copy the code using the "Copy" button above, and paste it into a Python file in your IDE.
  2. Modify the code appropriately.
  3. The first file that opens is the outline detected, and after closing that, the next image that opens is the same as the previous image but with the circles marked.
  4. Run the file to check the output.


I hope you found this helpful. I have added the link to dependent libraries and version information in the following sections.

Dependent Libraries

Environment Tested

I tested this solution in the following versions. Be mindful of changes when working with other versions.

  1. The solution is created in Python3.11.

Support

  1. For any support on kandi solution kits, please use the chat
  2. For further learning resources, visit the Open Weaver Community learning page.

FAQs  

1. What is a Python OpenCV tutorial, and what are the steps for circle detection?  

A Python OpenCV tutorial is a structured learning resource. It provides guidance and instructions on using the OpenCV library with Python. It is for computer vision and image-processing tasks. The steps for circle detection in OpenCV typically involve the following:  

a. Loading the input image.  

b. Preprocessing the image if necessary (e.g., converting to grayscale).  

c. Applying a circle detection algorithm, such as Hough Circle Transform.  

d. Extracting detected circles' parameters, including center coordinates and radii.  

e. Drawing the detected circles on the image.  

f. Displaying or saving the resulting image with the circles.  

   

2. How do you draw circles using OpenCV in Python?  

You can draw circles in Python using OpenCV. Just specify the center coordinates and radius. The cv2.circle() function is commonly used for this purpose. It would help if you had an image, center coordinates, radius, color, and line thickness to draw a circle.  

   

3. What Circle Detection can solve computer vision problems?  

Computer vision can use circle detection to solve various problems, including: 

  • Object detection and tracking: Circles can represent objects in images or videos. This makes them useful for tracking moving things.  
  • Feature extraction: Detecting circular features in images, like coins or bubbles. It helps with image analysis and object recognition.  
  • Calibration: In-camera calibration circle detection is important. It helps determine camera parameters using circular patterns.  
  • Quality control: Manufacturers use circle detection to find and measure round objects. They also use it to identify issues. 
  • Image annotation: You can draw circles around areas you want to highlight and label in an image. 

   

4. Is Corner Detection necessary for Circle Detection with OpenCV in Python?  

You don't always need to use corner detection for circle detection in OpenCV with Python. The Hough Circle Transform algorithm looks for edges in images to locate circles. In contrast, corner detection finds corners or interesting points in an image. You can use circle detection independently for tasks with circular objects or patterns.  

   

5. How does the input image affect the results of Circle Detection with OpenCV in Python?  

Your picture can affect the outcome when finding circles with OpenCV in Python. Image quality, lighting, noise, and objects can affect the accuracy of circle detection. You may need to enhance images or reduce noise to improve circle detection. To get accurate results, choose the right circle detection parameters. These include the minimum and maximum radius. These parameters help adapt to different image characteristics.  

Here are the best open-source Python build tools libraries for your applications. You can use these for automating software development and simplifying the process of managing dependencies, building, testing, and packaging applications. 

 

Python build tools libraries are essential for software development. They are used for managing dependencies, building, testing, and packaging applications. Numerous build tools libraries in Python help automate the software development process. These libraries are also used for the packaging and distribution of Python modules. They also provide functions like packaging modules into distributable formats, generating installation scripts, and publishing packages to PyPI (Python Package Index). They are also package managers used for installing and managing Python packages. They simplify the process of installing dependencies required by an application and resolve package version conflicts. Other Python build tools help automates testing across multiple virtual environments. Also, they can be used for building, testing, and packaging Python applications and managing different versions of Python on the same machine.

 

With the numerous build tools available, Python developers can choose the ones that best suit their needs and improve their development process. We have handpicked the top and trending open-source Python build tool libraries for your next application development project.

Setuptools:

  • Used for packaging and distributing Python modules.
  • Provides an easy way to package modules into distributable formats.
  • Allows to generate installation scripts and publish packages to the Python Package Index (PyPI).

Pip:

  • Used to simplify the process of installing and managing Python packages.
  • It’s a widely used Python package manager that automatically resolves dependencies.
  • Helps ensure that the required packages are installed in the correct order.

Virtualenv:

  • Used to manage different versions of Python and their dependencies.
  • Offers a tool for creating isolated Python environments.
  • Allows working on multiple projects with different requirements without conflicts.

PyInstaller:

  • Used to convert Python applications into standalone executables.
  • Bundles a Python application and all its dependencies into a single package.
  • The packaged app can run on any system without installing Python.

Tox:

  • Used to run arbitrary commands in isolated environments.
  • Allows to automate testing across multiple virtual environments.
  • Helps to ensure that code works correctly across various Python versions and configurations.

Buildout:

  • Used in DevOps, Continuous Integration applications, etc.
  • Helps automate the creation of development and production environments.
  • Useful in developing web applications, deploying software, and managing servers.

Cookiecutter:

  • Used in Template Engine applications, etc.
  • Allows to generate new Python projects from templates.
  • Helps quickly create new projects with pre-configured settings and configurations.

Pybuilder:

  • Used for building, testing, and packaging Python applications.
  • Provides a simple way to manage dependencies.
  • Allows to run unit tests and generate distributable packages.

Poetry:

  • Used to simplify the management of Python dependencies.
  • Provides a fast and reliable way to manage dependencies.
  • Allows to create virtual environments and build and package Python projects.

Pyenv:

  • Used to ensure that each project uses the correct Python version and dependencies.
  • Offers a tool for managing multiple Python versions on the same system.
  • Enables easy switching between different Python versions. 

Nest.js is a popular framework. It is used for building efficient and scalable server-side apps with Node.js.

It requires robust service discovery mechanisms to ease scalability in distributed systems. It offers tools and methodologies to manage the dynamic nature of microservices architectures. It ensures seamless communication and efficient load balancing across services.   

Here are some of the benefits of these libraries:  

  • Nest.js Integration   
  • Dynamic Service Registration  
  • Service Discovery Mechanisms  
  • Load Balancing  
  • Health Checking  
  • Configuration Management  
  • Fault Tolerance and Resilience  
  • Scalability  

kubernetes:

  • Kubernetes presents a sturdy platform for dealing with containerized applications.  
  • Kubernetes provides built-in service discovery capabilities through its DNS-based service discovery mechanism.   
  • It is used for deploying and managing containerized applications at scale. 

redis:

  • Redis can cache the results of database queries and API responses.  
  • Redis can be used to install rate limiting and throttling mechanisms in Nest.js services.  
  • Redis can be an essential component in the scalability of Nest.js services.  

etcd:

  • It is a central registry for storing information about available services.  
  • It can store configuration data that is shared across many instances of Nest.js services.  
  • etcd provides support for distributed consensus algorithms, such as Raft.  

traefik:

  • Traefik is a contemporary day opposite proxy and cargo balancer.  
  • Traefik supports dynamic routing based on service discovery mechanisms like Docker labels.  
  • Traefik provides built-in support for various load-balancing algorithms.  

istio:

  • Istio is a powerful service mesh platform.  
  • Istio enables sophisticated traffic routing and load-balancing strategies.  
  • Istio includes built-in fault tolerance features such as automatic retries and circuit breaking.  

consul:

  • It allows Nest.js services to register themselves with its agent running on each node in the cluster.  
  • The consul maintains a catalog of all registered services and their associated endpoints.  
  • Consul can be integrated with service mesh frameworks such as Envoy or Istio.  

rancher:

  • Rancher is a container management platform.  
  • Rancher includes built-in service discovery features.  
  • It allows services to be registered and discovered within the Rancher environment.  

eureka:

  • Eureka, advanced via Netflix, is a carrier discovery tool.  
  • It plays a significant role in building scalable microservices architectures.  
  • It allows Nest.js services to register themselves with its server upon startup.  

zookeeper:

  • ZooKeeper may be used to sign in and find out services.  
  • It provides a distributed key-value store that can be used for configuration management.  
  • It is designed to be to be hand-tolerant and fault-tolerant.

coredns:

  • It is a versatile DNS server used as a service discovery tool.  
  • It is used to perform load balancing by distributing DNS queries among many services.  
  • CoreDNS is used as the default DNS server in Kubernetes clusters.  

haproxy:

  • HAProxy is a high-performance TCP/HTTP load balancer.  
  • It is instrumental in the scalability of Nest.js service discovery libraries.  
  • HAProxy distributes incoming traffic across many instances of Nest.js services.  

FAQ

1. What is service discovery, and why is it important in Nest.js applications?  

It is the process of locating and connecting to services in a distributed system. In Nest.js applications, It is crucial to enable seamless communication between microservices. It allows them to scale and adapt to changing workloads.  


2. What are some popular service discovery libraries used with Nest.js for scalability?  

Some popular service discovery libraries used with Nest.js include:  

  • Consul  
  • etcd  
  • ZooKeeper  
  • Eureka.  

These libraries provide features such as:  


  • Dynamic service registration  
  • Discovery  
  • Health checking  
  • Load balancing  

These are essential for building scalable microservices architectures.  


3. How does dynamic scaling work in Nest.js applications using service discovery libraries?  

Dynamic scaling involves adding instances of services based on demand. Service discovery libraries enable dynamic scaling by allowing new instances to register themselves. Other services can discover it. This ensures that the application can handle increasing workloads.  


4. What role do load balancers play in scalable Nest.js architectures?  

Load balancers such as HAProxy are essential components in scalable Nest.js architectures. They distribute incoming traffic across many instances of services. It ensures optimal resource use and prevents any single instance from becoming overwhelmed. Load balancers help improve the scalability, reliability, and performance of Nest.js applications.  


5. How do service discovery libraries handle fault tolerance and resilience in Nest.js?  

Service discovery libraries use mechanisms such as health checking and automatic failover. Nest.js applications use it to ensure fault tolerance and resilience. They check the health of service instances and remove or replace unhealthy instances. This ensures that clients are always directed to available and responsive services.  

In this digital era, convenience is key, especially when it comes to ordering food. The concept of a multiple restaurant food ordering system has revolutionized the way people order food from their favorite restaurants. Instead of being limited to a single restaurant's menu, customers now have access to a wide array of dining options at their fingertips.


The Need for Multiple Restaurant Food Ordering Systems


As the pace of life accelerates, individuals increasingly seek efficiency in their daily activities, including meal planning and ordering. Multiple restaurant food ordering systems fulfill this need by providing users with a centralized platform to explore various cuisines and dining options without the hassle of browsing through multiple websites or apps.


Features and Functionality of Multiple Restaurant Food Ordering Systems


User Registration and Authentication


One of the primary features of a multiple restaurant food ordering system is user registration and authentication. Users can create accounts, save their preferences, and securely log in to access the platform's features.


Restaurant Management


For restaurant owners, these systems offer robust management tools to update menus, adjust pricing, and manage orders efficiently.


Menu Customization


Customers enjoy the flexibility of customizing their orders based on dietary restrictions, preferences, or special requests.


Order Management


Order management functionalities streamline the process for both customers and restaurants, ensuring accurate order placement and timely delivery.


Payment Integration


Secure payment gateways enable seamless transactions, allowing users to pay for their orders online using various payment methods.


Delivery Tracking


Real-time delivery tracking enhances transparency and allows users to monitor the status of their orders from preparation to delivery.


Advantages of Multiple Restaurant Food Ordering Systems


Convenience: Users can explore multiple restaurants and menus from a single platform.

Time-saving: Ordering food becomes quicker and more efficient.

Diverse Options: Access to a wide range of cuisines and dining experiences.

Order Tracking: Users can track their orders in real-time, ensuring timely delivery.


Challenges and Solutions in Implementing Multiple Restaurant Food Ordering Systems


While multiple restaurant food ordering systems offer numerous benefits, they also present challenges such as integrating diverse restaurant menus and managing logistics. However, advanced technology solutions and efficient management practices can address these challenges effectively.


Examples of Popular Multiple Restaurant Food Ordering Systems


1. Uber Eats

2. DoorDash

3. Grubhub

4. Postmates

5. Zomato


Conclusion


The emergence of multiple restaurant food ordering systems has transformed the way people dine, offering unparalleled convenience and access to a diverse culinary landscape. As technology continues to evolve, these platforms will play an increasingly significant role in shaping the future of food delivery and dining experiences.



In today's fast-paced world, the way people dine has undergone a significant transformation. With the rise of technology, customers now expect convenience and efficiency when it comes to ordering food. Traditional methods of dining out or calling in for delivery are gradually being replaced by online food ordering systems. One such innovation that has gained immense popularity is the multiple restaurant food ordering system.

Benefits of Implementing a Multiple Restaurant Food Ordering System

Increased Accessibility for Customers

Gone are the days when customers were limited to ordering from a single restaurant's menu. With a multiple restaurant food ordering system, users can explore a variety of cuisines and dining options all in one place. Whether it's sushi, pizza, or Indian curry, the possibilities are endless.

Streamlined Operations for Restaurants

For restaurant owners, integrating with a multiple restaurant food ordering system can streamline their operations significantly. Instead of managing orders from multiple platforms separately, everything is centralized, making it easier to track orders, manage inventory, and streamline the delivery process.

Enhanced Customer Satisfaction

By offering customers a wide range of choices and providing a seamless ordering experience, multiple restaurant food ordering systems contribute to higher levels of customer satisfaction. Customers appreciate the convenience of being able to order from their favorite restaurants with just a few clicks, leading to increased loyalty and repeat business.

Features of a Multiple Restaurant Food Ordering System

User-Friendly Interface

A well-designed user interface is crucial for a positive ordering experience. A multiple restaurant food ordering system should be intuitive and easy to navigate, allowing users to browse menus, place orders, and track deliveries effortlessly.

Integration with Multiple Restaurants

The ability to integrate with multiple restaurants is what sets these platforms apart. Users should have access to a diverse range of restaurants and cuisines, all within the same app or website.

Secure Payment Gateways

Security is paramount when it comes to online transactions. Multiple restaurant food ordering systems should incorporate robust payment gateways to ensure that customers' financial information is protected at all times.

Order Tracking and Status Updates

Real-time order tracking is a feature that customers have come to expect. Providing updates on the status of their order, from preparation to delivery, helps build trust and confidence in the system.

Customization Options for Users

Personalization is key to enhancing the user experience. Multiple restaurant food ordering systems should allow users to customize their orders, including special instructions or dietary preferences.

How a Multiple Restaurant Food Ordering System Works

The process of ordering food through a multiple restaurant food ordering system typically involves several steps:

  1. User Registration and Login: Users create an account or log in using their existing credentials.
  2. Restaurant Registration and Menu Setup: Restaurants register with the platform and upload their menus, including pricing and item descriptions.
  3. Placing an Order: Users browse through the available restaurants and menus, select their desired items, and add them to their cart.
  4. Payment Processing: Once the order is complete, users proceed to checkout and make payment using the integrated payment gateway.
  5. Order Fulfillment and Delivery: The restaurant receives the order, prepares the food, and notifies the user once it's ready for pickup or delivery.

Challenges and Solutions in Implementing a Multiple Restaurant Food Ordering System

While multiple restaurant food ordering systems offer numerous benefits, they also present some challenges:

Managing Inventory Across Multiple Restaurants

Coordinating inventory levels across multiple restaurants can be complex. However, advanced inventory management systems can help optimize stock levels and prevent overordering or stockouts.

Ensuring Timely Deliveries

With multiple orders coming in simultaneously, ensuring timely deliveries can be challenging. Utilizing route optimization algorithms and efficient delivery logistics can help minimize delivery times and improve customer satisfaction.

Handling Peak Hours and High Order Volumes

During peak hours, such as lunch or dinner rushes, managing high order volumes can strain restaurant operations. Implementing strategies such as dynamic pricing or offering incentives for off-peak ordering can help distribute orders more evenly throughout the day.

Case Studies: Successful Implementations of Multiple Restaurant Food Ordering Systems

Several platforms have successfully implemented multiple restaurant food ordering systems, revolutionizing the way people dine:

  1. Uber Eats: With its extensive network of restaurants and seamless ordering experience, Uber Eats has become a household name in the food delivery industry.
  2. DoorDash: DoorDash's innovative technology and commitment to customer satisfaction have propelled it to the forefront of the market, connecting users with their favorite local restaurants.
  3. Grubhub: Grubhub's user-friendly platform and wide selection of restaurants make it a popular choice among food enthusiasts looking for convenience and variety.

Tips for Choosing the Right Multiple Restaurant Food Ordering System

When selecting a multiple restaurant food ordering system for your business, consider the following factors:

Scalability

Choose a platform that can grow with your business and accommodate increasing order volumes and restaurant partnerships.

Customization Options

Look for a system that allows you to customize the user experience and tailor it to your brand's specific requirements.

Integration Capabilities

Ensure that the platform seamlessly integrates with your existing systems, such as POS systems and inventory management software.

Customer Support

Opt for a provider that offers reliable customer support and assistance whenever you need it.



Repository Link: ninjas-code-official/food-delivery-multivendor: Enatega is a fully realized and customizable food delivery application that can be used to set up your own order/delivery management system. For more information, visit the Enatega product page: 🚀🛒📦🌐 (github.com)

Get Access Now:  https://enatega.com/enatega-multi-vendor/?utm_source=github&utm_medium=referral&utm_campaign=github_guide&utm_id=12345678


Docker is a platform for developing, shipping and running applications in containers. When you use Docker, you use different tools and libraries to make, control, and use containers.  


These libraries help with managing and developing containers. The libraries have tools for Docker. They have modular architecture and real-time monitoring. They also include workflow automation and curated cheat sheets.  


Here are the 14 essential Docker libraries:  

moby  

  • Moby has a modular architecture. Developers can pick and assemble only the components they need. It's for their specific use case.  
  • Moby offers essential Docker parts for users who want to make their own containers.  
  • Moby helps developers collaborate on container projects and experiment with containerization technologies.  

traefik   

  • Traefik can find and set up routes to backend services as they change in size.  
  • The system can handle different types of traffic like HTTP, TCP, and UDP.  
  • Traefik works well with container orchestration platforms such as Docker Swarm and Kubernetes. This makes it easier to handle ingress and load balancing for containerized applications.  

gogs  

  • Gogs is a lightweight Git service. It is self-hosted and has a simple, user-friendly interface for managing repositories.  
  • The software has tools for tracking issues and collaborating with others. It's an all-in-one solution for managing source code and issues.  
  • Users can customize Gogs to fit their needs and preferences.  

dive  

  • Dive is a tool for exploring container images layer by layer. It helps users understand and optimize image size and composition.  
  • Visual Diffs show changes between image layers, aiding troubleshooting and image optimization.  
  • Dive has an interactive CLI. It helps explore container images and analyze Docker images.  

docker_practice 

  • This library helps beginners learn Docker through hands-on exercises.  
  • The exercises begin with simple ideas, like making and using images. They become harder as the user gets better.  
  • The library has real-world examples of Docker, like deploying a web app and running CI.  

docker-development-youtube-series  

  • This library has video tutorials on Docker development. They cover Dockerfile basics, image management, and container orchestration.  
  • Each video tutorial has a code sample that users can use to follow.  
  • The library has a Discord server. Users can ask questions and get help there.  

docker-ce  

  • This is Docker distribution from Docker, Inc.  
  • The complete set of Docker features includes image building, container running, and orchestration.  
  • Docker tools and plugins widely support it.  

portainer  

  • This is a website where you can manage Docker containers and images.  
  • It has many features for managing Docker, like creating, managing, and monitoring containers.  
  • It is easy to use, even for users unfamiliar with Docker.  

Here are other Docker libraries with different programming languages.  

uptime-kuma  

  • Uptime-Kuma can check if services and protocols are available and performing well.  
  • Flexible Alerting helps users receive notifications when services encounter issues or become unavailable.  
  • Uptime-Kuma has a web interface that is easy to use. It lets you configure and see monitoring results. Many people can use it.  

awesome-cheatsheets  

  • The website Awesome-Cheatsheets has cheat sheets and references for programming languages and technologies.  
  • We encourage the community to contribute to keep the cheat sheets up to date and complete.  
  • Developers like the organized and user-friendly repository. It has helpful references and tips.  

n8n  

  • n8n is a tool for automating workflows. It lets users create and manage workflows visually. This makes it easy for both technical and non-technical users to use.  
  • Extensive Integration makes it easier to automate complex tasks with many pre-built integrations.  
  • Since n8n is open-source, you can host it on your server to manage your automation workflows and data.  

appwrite  

  • Appwrite is a platform for building web and mobile apps. It handles the backend. It provides many services, including authentication, storage, and databases.  
  • Appwrite is perfect for creating chat apps and document editors with real-time collaboration.  
  • It works on many platforms and programming languages so developers can use it for any app.

netdata  

  • Netdata is great for monitoring performance in real time. It has a dashboard to see system metrics and application performance.  
  • Users can customize their experience by adding plugins and integrations. These can monitor specific metrics and applications. This allows for greater flexibility and customization.  
  • Netdata has automatic anomaly detection. The system tells users when strange things happen and helps them find problems early.  

devops-exercises 

  • DevOps-Exercises offers exercises and resources to help people and teams practice DevOps principles.  
  • Gain practical experience with DevOps tools and methods through hands-on exercises.  
  • DevOps-Exercises values teamwork and welcomes contributions, which makes it valuable for DevOps enthusiasts.

Trending Discussions on Devops

Azure Pipelines local agent failing to connect with SSL error

Unable to negotiate with 40.74.28.9 port 22: no matching host key type found. Their offer: ssh-rsa

Visual Studio 2022 not showing up in the dropdown

NPM install task failing in Azure Devops, same code worked previously

Deps File Missing for Dotnet 6 Integration Tests

Azure, .Net, Cobertura - ##[warning]Multiple file or directory matches were found

C# WASM without Blazor

Azure DevOps Build pipeline `npm install` failing on node-gyp

How can I suppress or resolve "info: detecting host provider for..." in Git?

Azure Devops - Hosted pool - ubuntu latest - How do i get ubuntu-latest to have the latest visual studio build tools (preview 2022)?

QUESTION

Azure Pipelines local agent failing to connect with SSL error

Asked 2022-Mar-29 at 19:29

We have an on premise server (Windows Server 2012 R2) with an Azure Pipelines agent running on it. Today (31st Jan 2022) this agent could not longer connect to our Azure DevOps organisation.

Log file of azure agent

Judging by the log files, I assume this is because it is trying to connect with an older TLS version, which as of today is no longer available - https://devblogs.microsoft.com/devops/azure-devops-services-to-require-tls-1-2/

So I followed the instructions on how to make sure TLS 1.2 was enabled, and confirmed my settings in the registry editor and by running the PowerShell script suggested here - https://docs.microsoft.com/en-us/security/engineering/solving-tls1-problem#update-windows-powershell-scripts-or-related-registry-settings

All seems ok, yet it still fails to connect with the same issue. The machine has been restarted as well. If I try the URL it is requesting in the in built Internet Explorer browser, it fails, but with Chrome it succeeds, so it must still be trying to connect with TLS 1.2, but I don't know why. I've tried reinstalling the agent (with the latest build) as well but it fails on the same error. Any suggestions?

ANSWER

Answered 2022-Jan-31 at 23:27

Enabling below Cyphers with IISCrypto on the server helped us fix the issue

Cipher Suites

TLS 1.2 (suites in server-preferred order) TLS

  • _DHE_RSA_WITH_AES_256_GCM_SHA384 (0x9f) DH 2048 bits FS 256 TLS
  • DHE_RSA_WITH_AES_128_GCM_SHA256 (0x9e) DH 2048 bits FS 128

This from Vijay's solution

Source https://stackoverflow.com/questions/70929356

QUESTION

Unable to negotiate with 40.74.28.9 port 22: no matching host key type found. Their offer: ssh-rsa

Asked 2022-Mar-28 at 15:54

After start of using NixOS as a new package management system, I get the following error when using git within Azure DevOps repositories and rsa ssh key:

1jaroslavbezdek@mac> git pull
2Unable to negotiate with 40.74.28.9 port 22: no matching host key type found. Their offer: ssh-rsa
3fatal: Could not read from remote repository.
4
5Please make sure you have the correct access rights
6and the repository exists.
7

What can I do with that, please?

ANSWER

Answered 2021-Nov-12 at 12:44

According to this post, you can add ssh.dev.azure.com host config to your ~/.ssh/config file:

Final ~/.ssh/config that worked for me:

1jaroslavbezdek@mac> git pull
2Unable to negotiate with 40.74.28.9 port 22: no matching host key type found. Their offer: ssh-rsa
3fatal: Could not read from remote repository.
4
5Please make sure you have the correct access rights
6and the repository exists.
7Host ssh.dev.azure.com
8    HostName ssh.dev.azure.com
9    User git
10    IdentityFile ~/.ssh/id_rsa
11    IdentitiesOnly yes
12    PubkeyAcceptedAlgorithms +ssh-rsa
13    HostkeyAlgorithms +ssh-rsa
14

Source https://stackoverflow.com/questions/69875520

QUESTION

Visual Studio 2022 not showing up in the dropdown

Asked 2022-Mar-26 at 17:18

We have on-prem Azure DevOps 2020 installed. We built a .net core 6 app in Visual Studio 2022. However, when creating the build pipeline, VS 2022 is not showing up in the dropdown.

Has anyone faced this problem? Is MSFT supposed to release a patch that will start displaying VS 2022 in the dropdown?

enter image description here

ANSWER

Answered 2022-Jan-28 at 15:20

Many people are running into this. No word from MS yet on when or if an update will be available. But these articles may help you find a workaround:

FWIW, I'm working around it by using an explicit MSBuild path as mentioned in this answer. I added a PreferredMSBuildExePath variable to my pipeline and set it equal to %ProgramFiles%\Microsoft Visual Studio\2022\Professional\MSBuild\Current\Bin\amd64\MSBuild.exe. Then I made all my MSBuild steps use $(PreferredMSBuildExePath) as their MSBuild path under Specify Location. I also converted all my Visual Studio steps to MSBuild steps so I could use this explicit path variable.

Source https://stackoverflow.com/questions/70866796

QUESTION

NPM install task failing in Azure Devops, same code worked previously

Asked 2022-Mar-12 at 12:38

I have yaml pipeline running a build in Azure Devops. The Npm@1 task has started failing this morning. npm install works locally with npm version 6.14.5 and it's all green lights on npm Status.

1pool:
2  name: 'Azure Pipelines'
3  vmImage: ubuntu-latest
4
5stages:
6  - stage: 
7    variables:
8      buildConfiguration: "Release"
9      buildPlatform: "AnyCPU"
10    jobs:
11    - job: 
12      steps:      
13      - task: Npm@1
14        displayName: 'npm install'
15        inputs:
16          workingDir: Azure/MySite/ClientApp
17

Here's where things start to go wrong in the logs:

1pool:
2  name: 'Azure Pipelines'
3  vmImage: ubuntu-latest
4
5stages:
6  - stage: 
7    variables:
8      buildConfiguration: "Release"
9      buildPlatform: "AnyCPU"
10    jobs:
11    - job: 
12      steps:      
13      - task: Npm@1
14        displayName: 'npm install'
15        inputs:
16          workingDir: Azure/MySite/ClientApp
17
181156 verbose pkgid node-sass@4.14.1
191157 verbose cwd /home/vsts/work/1/s/Azure/MySite/ClientApp
201158 verbose Linux 5.11.0-1021-azure
211159 verbose argv "/usr/local/bin/node" "/usr/local/bin/npm" "install"
221160 verbose node v16.13.0
231161 verbose npm  v8.1.0
241162 error code 1
251163 error path /home/vsts/work/1/s/Azure/MySite/ClientApp/node_modules/node-sass
261164 error command failed
271165 error command sh -c node scripts/build.js
281166 error Building: /usr/local/bin/node /home/vsts/work/1/s/Azure/MySite/ClientApp/node_modules/node-gyp/bin/node-gyp.js rebuild --verbose --libsass_ext= --libsass_cflags= --libsass_ldflags= --libsass_library=
291166 error make: Entering directory '/home/vsts/work/1/s/Azure/MySite/ClientApp/node_modules/node-sass/build'
301166 error   g++ '-DNODE_GYP_MODULE_NAME=libsass' '-DUSING_UV_SHARED=1' '-DUSING_V8_SHARED=1' '-DV8_DEPRECATION_WARNINGS=1' '-DV8_DEPRECATION_WARNINGS' '-DV8_IMMINENT_DEPRECATION_WARNINGS' '-D_GLIBCXX_USE_CXX11_ABI=1' '-D_LARGEFILE_SOURCE' '-D_FILE_OFFSET_BITS=64' '-D__STDC_FORMAT_MACROS' '-DOPENSSL_NO_PINSHARED' '-DOPENSSL_THREADS' '-DLIBSASS_VERSION="3.5.5"' -I/home/vsts/.node-gyp/16.13.0/include/node -I/home/vsts/.node-gyp/16.13.0/src -I/home/vsts/.node-gyp/16.13.0/deps/openssl/config -I/home/vsts/.node-gyp/16.13.0/deps/openssl/openssl/include -I/home/vsts/.node-gyp/16.13.0/deps/uv/include -I/home/vsts/.node-gyp/16.13.0/deps/zlib -I/home/vsts/.node-gyp/16.13.0/deps/v8/include -I../src/libsass/include  -fPIC -pthread -Wall -Wextra -Wno-unused-parameter -m64 -O3 -fno-omit-frame-pointer -std=gnu++14 -std=c++0x -fexceptions -frtti -MMD -MF ./Release/.deps/Release/obj.target/libsass/src/libsass/src/ast.o.d.raw   -c -o Release/obj.target/libsass/src/libsass/src/ast.o ../src/libsass/src/ast.cpp
311166 error   g++ '-DNODE_GYP_MODULE_NAME=libsass' '-DUSING_UV_SHARED=1' '-DUSING_V8_SHARED=1' '-DV8_DEPRECATION_WARNINGS=1' '-DV8_DEPRECATION_WARNINGS' '-DV8_IMMINENT_DEPRECATION_WARNINGS' '-D_GLIBCXX_USE_CXX11_ABI=1' '-D_LARGEFILE_SOURCE' '-D_FILE_OFFSET_BITS=64' '-D__STDC_FORMAT_MACROS' '-DOPENSSL_NO_PINSHARED' '-DOPENSSL_THREADS' '-DLIBSASS_VERSION="3.5.5"' -I/home/vsts/.node-gyp/16.13.0/include/node -I/home/vsts/.node-gyp/16.13.0/src -I/home/vsts/.node-gyp/16.13.0/deps/openssl/config -I/home/vsts/.node-gyp/16.13.0/deps/openssl/openssl/include -I/home/vsts/.node-gyp/16.13.0/deps/uv/include -I/home/vsts/.node-gyp/16.13.0/deps/zlib -I/home/vsts/.node-gyp/16.13.0/deps/v8/include -I../src/libsass/include  -fPIC -pthread -Wall -Wextra -Wno-unused-parameter -m64 -O3 -fno-omit-frame-pointer -std=gnu++14 -std=c++0x -fexceptions -frtti -MMD -MF ./Release/.deps/Release/obj.target/libsass/src/libsass/src/ast_fwd_decl.o.d.raw   -c -o Release/obj.target/libsass/src/libsass/src/ast_fwd_decl.o ../src/libsass/src/ast_fwd_decl.cpp
321166 error   g++ '-DNODE_GYP_MODULE_NAME=libsass' '-DUSING_UV_SHARED=1' '-DUSING_V8_SHARED=1' '-DV8_DEPRECATION_WARNINGS=1' '-DV8_DEPRECATION_WARNINGS' '-DV8_IMMINENT_DEPRECATION_WARNINGS' '-D_GLIBCXX_USE_CXX11_ABI=1' '-D_LARGEFILE_SOURCE' '-D_FILE_OFFSET_BITS=64' '-D__STDC_FORMAT_MACROS' '-DOPENSSL_NO_PINSHARED' '-DOPENSSL_THREADS' '-DLIBSASS_VERSION="3.5.5"' -I/home/vsts/.node-gyp/16.13.0/include/node -I/home/vsts/.node-gyp/16.13.0/src -I/home/vsts/.node-gyp/16.13.0/deps/openssl/config -I/home/vsts/.node-gyp/16.13.0/deps/openssl/openssl/include -I/home/vsts/.node-gyp/16.13.0/deps/uv/include -I/home/vsts/.node-gyp/16.13.0/deps/zlib -I/home/vsts/.node-gyp/16.13.0/deps/v8/include -I../src/libsass/include  -fPIC -pthread -Wall -Wextra -Wno-unused-parameter -m64 -O3 -fno-omit-frame-pointer -std=gnu++14 -std=c++0x -fexceptions -frtti -MMD -MF ./Release/.deps/Release/obj.target/libsass/src/libsass/src/backtrace.o.d.raw   -c -o Release/obj.target/libsass/src/libsass/src/backtrace.o ../src/libsass/src/backtrace.cpp
331166 error   g++ '-DNODE_GYP_MODULE_NAME=libsass' '-DUSING_UV_SHARED=1' '-DUSING_V8_SHARED=1' '-DV8_DEPRECATION_WARNINGS=1' '-DV8_DEPRECATION_WARNINGS' '-DV8_IMMINENT_DEPRECATION_WARNINGS' '-D_GLIBCXX_USE_CXX11_ABI=1' '-D_LARGEFILE_SOURCE' '-D_FILE_OFFSET_BITS=64' '-D__STDC_FORMAT_MACROS' '-DOPENSSL_NO_PINSHARED' '-DOPENSSL_THREADS' '-DLIBSASS_VERSION="3.5.5"' -I/home/vsts/.node-gyp/16.13.0/include/node -I/home/vsts/.node-gyp/16.13.0/src -I/home/vsts/.node-gyp/16.13.0/deps/openssl/config -I/home/vsts/.node-gyp/16.13.0/deps/openssl/openssl/include -I/home/vsts/.node-gyp/16.13.0/deps/uv/include -I/home/vsts/.node-gyp/16.13.0/deps/zlib -I/home/vsts/.node-gyp/16.13.0/deps/v8/include -I../src/libsass/include  -fPIC -pthread -Wall -Wextra -Wno-unused-parameter -m64 -O3 -fno-omit-frame-pointer -std=gnu++14 -std=c++0x -fexceptions -frtti -MMD -MF ./Release/.deps/Release/obj.target/libsass/src/libsass/src/base64vlq.o.d.raw   -c -o Release/obj.target/libsass/src/libsass/src/base64vlq.o ../src/libsass/src/base64vlq.cpp
34
35
36

There hadn't been any changes to the package.json in several months. Going by the error message, I've narrowed the problem down to something to do with note-sass so here's a minimal package.json to reproduce the error.

1pool:
2  name: 'Azure Pipelines'
3  vmImage: ubuntu-latest
4
5stages:
6  - stage: 
7    variables:
8      buildConfiguration: "Release"
9      buildPlatform: "AnyCPU"
10    jobs:
11    - job: 
12      steps:      
13      - task: Npm@1
14        displayName: 'npm install'
15        inputs:
16          workingDir: Azure/MySite/ClientApp
17
181156 verbose pkgid node-sass@4.14.1
191157 verbose cwd /home/vsts/work/1/s/Azure/MySite/ClientApp
201158 verbose Linux 5.11.0-1021-azure
211159 verbose argv "/usr/local/bin/node" "/usr/local/bin/npm" "install"
221160 verbose node v16.13.0
231161 verbose npm  v8.1.0
241162 error code 1
251163 error path /home/vsts/work/1/s/Azure/MySite/ClientApp/node_modules/node-sass
261164 error command failed
271165 error command sh -c node scripts/build.js
281166 error Building: /usr/local/bin/node /home/vsts/work/1/s/Azure/MySite/ClientApp/node_modules/node-gyp/bin/node-gyp.js rebuild --verbose --libsass_ext= --libsass_cflags= --libsass_ldflags= --libsass_library=
291166 error make: Entering directory '/home/vsts/work/1/s/Azure/MySite/ClientApp/node_modules/node-sass/build'
301166 error   g++ '-DNODE_GYP_MODULE_NAME=libsass' '-DUSING_UV_SHARED=1' '-DUSING_V8_SHARED=1' '-DV8_DEPRECATION_WARNINGS=1' '-DV8_DEPRECATION_WARNINGS' '-DV8_IMMINENT_DEPRECATION_WARNINGS' '-D_GLIBCXX_USE_CXX11_ABI=1' '-D_LARGEFILE_SOURCE' '-D_FILE_OFFSET_BITS=64' '-D__STDC_FORMAT_MACROS' '-DOPENSSL_NO_PINSHARED' '-DOPENSSL_THREADS' '-DLIBSASS_VERSION="3.5.5"' -I/home/vsts/.node-gyp/16.13.0/include/node -I/home/vsts/.node-gyp/16.13.0/src -I/home/vsts/.node-gyp/16.13.0/deps/openssl/config -I/home/vsts/.node-gyp/16.13.0/deps/openssl/openssl/include -I/home/vsts/.node-gyp/16.13.0/deps/uv/include -I/home/vsts/.node-gyp/16.13.0/deps/zlib -I/home/vsts/.node-gyp/16.13.0/deps/v8/include -I../src/libsass/include  -fPIC -pthread -Wall -Wextra -Wno-unused-parameter -m64 -O3 -fno-omit-frame-pointer -std=gnu++14 -std=c++0x -fexceptions -frtti -MMD -MF ./Release/.deps/Release/obj.target/libsass/src/libsass/src/ast.o.d.raw   -c -o Release/obj.target/libsass/src/libsass/src/ast.o ../src/libsass/src/ast.cpp
311166 error   g++ '-DNODE_GYP_MODULE_NAME=libsass' '-DUSING_UV_SHARED=1' '-DUSING_V8_SHARED=1' '-DV8_DEPRECATION_WARNINGS=1' '-DV8_DEPRECATION_WARNINGS' '-DV8_IMMINENT_DEPRECATION_WARNINGS' '-D_GLIBCXX_USE_CXX11_ABI=1' '-D_LARGEFILE_SOURCE' '-D_FILE_OFFSET_BITS=64' '-D__STDC_FORMAT_MACROS' '-DOPENSSL_NO_PINSHARED' '-DOPENSSL_THREADS' '-DLIBSASS_VERSION="3.5.5"' -I/home/vsts/.node-gyp/16.13.0/include/node -I/home/vsts/.node-gyp/16.13.0/src -I/home/vsts/.node-gyp/16.13.0/deps/openssl/config -I/home/vsts/.node-gyp/16.13.0/deps/openssl/openssl/include -I/home/vsts/.node-gyp/16.13.0/deps/uv/include -I/home/vsts/.node-gyp/16.13.0/deps/zlib -I/home/vsts/.node-gyp/16.13.0/deps/v8/include -I../src/libsass/include  -fPIC -pthread -Wall -Wextra -Wno-unused-parameter -m64 -O3 -fno-omit-frame-pointer -std=gnu++14 -std=c++0x -fexceptions -frtti -MMD -MF ./Release/.deps/Release/obj.target/libsass/src/libsass/src/ast_fwd_decl.o.d.raw   -c -o Release/obj.target/libsass/src/libsass/src/ast_fwd_decl.o ../src/libsass/src/ast_fwd_decl.cpp
321166 error   g++ '-DNODE_GYP_MODULE_NAME=libsass' '-DUSING_UV_SHARED=1' '-DUSING_V8_SHARED=1' '-DV8_DEPRECATION_WARNINGS=1' '-DV8_DEPRECATION_WARNINGS' '-DV8_IMMINENT_DEPRECATION_WARNINGS' '-D_GLIBCXX_USE_CXX11_ABI=1' '-D_LARGEFILE_SOURCE' '-D_FILE_OFFSET_BITS=64' '-D__STDC_FORMAT_MACROS' '-DOPENSSL_NO_PINSHARED' '-DOPENSSL_THREADS' '-DLIBSASS_VERSION="3.5.5"' -I/home/vsts/.node-gyp/16.13.0/include/node -I/home/vsts/.node-gyp/16.13.0/src -I/home/vsts/.node-gyp/16.13.0/deps/openssl/config -I/home/vsts/.node-gyp/16.13.0/deps/openssl/openssl/include -I/home/vsts/.node-gyp/16.13.0/deps/uv/include -I/home/vsts/.node-gyp/16.13.0/deps/zlib -I/home/vsts/.node-gyp/16.13.0/deps/v8/include -I../src/libsass/include  -fPIC -pthread -Wall -Wextra -Wno-unused-parameter -m64 -O3 -fno-omit-frame-pointer -std=gnu++14 -std=c++0x -fexceptions -frtti -MMD -MF ./Release/.deps/Release/obj.target/libsass/src/libsass/src/backtrace.o.d.raw   -c -o Release/obj.target/libsass/src/libsass/src/backtrace.o ../src/libsass/src/backtrace.cpp
331166 error   g++ '-DNODE_GYP_MODULE_NAME=libsass' '-DUSING_UV_SHARED=1' '-DUSING_V8_SHARED=1' '-DV8_DEPRECATION_WARNINGS=1' '-DV8_DEPRECATION_WARNINGS' '-DV8_IMMINENT_DEPRECATION_WARNINGS' '-D_GLIBCXX_USE_CXX11_ABI=1' '-D_LARGEFILE_SOURCE' '-D_FILE_OFFSET_BITS=64' '-D__STDC_FORMAT_MACROS' '-DOPENSSL_NO_PINSHARED' '-DOPENSSL_THREADS' '-DLIBSASS_VERSION="3.5.5"' -I/home/vsts/.node-gyp/16.13.0/include/node -I/home/vsts/.node-gyp/16.13.0/src -I/home/vsts/.node-gyp/16.13.0/deps/openssl/config -I/home/vsts/.node-gyp/16.13.0/deps/openssl/openssl/include -I/home/vsts/.node-gyp/16.13.0/deps/uv/include -I/home/vsts/.node-gyp/16.13.0/deps/zlib -I/home/vsts/.node-gyp/16.13.0/deps/v8/include -I../src/libsass/include  -fPIC -pthread -Wall -Wextra -Wno-unused-parameter -m64 -O3 -fno-omit-frame-pointer -std=gnu++14 -std=c++0x -fexceptions -frtti -MMD -MF ./Release/.deps/Release/obj.target/libsass/src/libsass/src/base64vlq.o.d.raw   -c -o Release/obj.target/libsass/src/libsass/src/base64vlq.o ../src/libsass/src/base64vlq.cpp
34
35
36{
37  "dependencies": {
38    "node-sass": "^4.14.1"
39  }
40}
41
42

ANSWER

Answered 2021-Dec-02 at 13:14

I still don't know why this started failing all of a sudden but I have resolved the problem by updating node-sass to version 6.0.1.

1pool:
2  name: 'Azure Pipelines'
3  vmImage: ubuntu-latest
4
5stages:
6  - stage: 
7    variables:
8      buildConfiguration: "Release"
9      buildPlatform: "AnyCPU"
10    jobs:
11    - job: 
12      steps:      
13      - task: Npm@1
14        displayName: 'npm install'
15        inputs:
16          workingDir: Azure/MySite/ClientApp
17
181156 verbose pkgid node-sass@4.14.1
191157 verbose cwd /home/vsts/work/1/s/Azure/MySite/ClientApp
201158 verbose Linux 5.11.0-1021-azure
211159 verbose argv "/usr/local/bin/node" "/usr/local/bin/npm" "install"
221160 verbose node v16.13.0
231161 verbose npm  v8.1.0
241162 error code 1
251163 error path /home/vsts/work/1/s/Azure/MySite/ClientApp/node_modules/node-sass
261164 error command failed
271165 error command sh -c node scripts/build.js
281166 error Building: /usr/local/bin/node /home/vsts/work/1/s/Azure/MySite/ClientApp/node_modules/node-gyp/bin/node-gyp.js rebuild --verbose --libsass_ext= --libsass_cflags= --libsass_ldflags= --libsass_library=
291166 error make: Entering directory '/home/vsts/work/1/s/Azure/MySite/ClientApp/node_modules/node-sass/build'
301166 error   g++ '-DNODE_GYP_MODULE_NAME=libsass' '-DUSING_UV_SHARED=1' '-DUSING_V8_SHARED=1' '-DV8_DEPRECATION_WARNINGS=1' '-DV8_DEPRECATION_WARNINGS' '-DV8_IMMINENT_DEPRECATION_WARNINGS' '-D_GLIBCXX_USE_CXX11_ABI=1' '-D_LARGEFILE_SOURCE' '-D_FILE_OFFSET_BITS=64' '-D__STDC_FORMAT_MACROS' '-DOPENSSL_NO_PINSHARED' '-DOPENSSL_THREADS' '-DLIBSASS_VERSION="3.5.5"' -I/home/vsts/.node-gyp/16.13.0/include/node -I/home/vsts/.node-gyp/16.13.0/src -I/home/vsts/.node-gyp/16.13.0/deps/openssl/config -I/home/vsts/.node-gyp/16.13.0/deps/openssl/openssl/include -I/home/vsts/.node-gyp/16.13.0/deps/uv/include -I/home/vsts/.node-gyp/16.13.0/deps/zlib -I/home/vsts/.node-gyp/16.13.0/deps/v8/include -I../src/libsass/include  -fPIC -pthread -Wall -Wextra -Wno-unused-parameter -m64 -O3 -fno-omit-frame-pointer -std=gnu++14 -std=c++0x -fexceptions -frtti -MMD -MF ./Release/.deps/Release/obj.target/libsass/src/libsass/src/ast.o.d.raw   -c -o Release/obj.target/libsass/src/libsass/src/ast.o ../src/libsass/src/ast.cpp
311166 error   g++ '-DNODE_GYP_MODULE_NAME=libsass' '-DUSING_UV_SHARED=1' '-DUSING_V8_SHARED=1' '-DV8_DEPRECATION_WARNINGS=1' '-DV8_DEPRECATION_WARNINGS' '-DV8_IMMINENT_DEPRECATION_WARNINGS' '-D_GLIBCXX_USE_CXX11_ABI=1' '-D_LARGEFILE_SOURCE' '-D_FILE_OFFSET_BITS=64' '-D__STDC_FORMAT_MACROS' '-DOPENSSL_NO_PINSHARED' '-DOPENSSL_THREADS' '-DLIBSASS_VERSION="3.5.5"' -I/home/vsts/.node-gyp/16.13.0/include/node -I/home/vsts/.node-gyp/16.13.0/src -I/home/vsts/.node-gyp/16.13.0/deps/openssl/config -I/home/vsts/.node-gyp/16.13.0/deps/openssl/openssl/include -I/home/vsts/.node-gyp/16.13.0/deps/uv/include -I/home/vsts/.node-gyp/16.13.0/deps/zlib -I/home/vsts/.node-gyp/16.13.0/deps/v8/include -I../src/libsass/include  -fPIC -pthread -Wall -Wextra -Wno-unused-parameter -m64 -O3 -fno-omit-frame-pointer -std=gnu++14 -std=c++0x -fexceptions -frtti -MMD -MF ./Release/.deps/Release/obj.target/libsass/src/libsass/src/ast_fwd_decl.o.d.raw   -c -o Release/obj.target/libsass/src/libsass/src/ast_fwd_decl.o ../src/libsass/src/ast_fwd_decl.cpp
321166 error   g++ '-DNODE_GYP_MODULE_NAME=libsass' '-DUSING_UV_SHARED=1' '-DUSING_V8_SHARED=1' '-DV8_DEPRECATION_WARNINGS=1' '-DV8_DEPRECATION_WARNINGS' '-DV8_IMMINENT_DEPRECATION_WARNINGS' '-D_GLIBCXX_USE_CXX11_ABI=1' '-D_LARGEFILE_SOURCE' '-D_FILE_OFFSET_BITS=64' '-D__STDC_FORMAT_MACROS' '-DOPENSSL_NO_PINSHARED' '-DOPENSSL_THREADS' '-DLIBSASS_VERSION="3.5.5"' -I/home/vsts/.node-gyp/16.13.0/include/node -I/home/vsts/.node-gyp/16.13.0/src -I/home/vsts/.node-gyp/16.13.0/deps/openssl/config -I/home/vsts/.node-gyp/16.13.0/deps/openssl/openssl/include -I/home/vsts/.node-gyp/16.13.0/deps/uv/include -I/home/vsts/.node-gyp/16.13.0/deps/zlib -I/home/vsts/.node-gyp/16.13.0/deps/v8/include -I../src/libsass/include  -fPIC -pthread -Wall -Wextra -Wno-unused-parameter -m64 -O3 -fno-omit-frame-pointer -std=gnu++14 -std=c++0x -fexceptions -frtti -MMD -MF ./Release/.deps/Release/obj.target/libsass/src/libsass/src/backtrace.o.d.raw   -c -o Release/obj.target/libsass/src/libsass/src/backtrace.o ../src/libsass/src/backtrace.cpp
331166 error   g++ '-DNODE_GYP_MODULE_NAME=libsass' '-DUSING_UV_SHARED=1' '-DUSING_V8_SHARED=1' '-DV8_DEPRECATION_WARNINGS=1' '-DV8_DEPRECATION_WARNINGS' '-DV8_IMMINENT_DEPRECATION_WARNINGS' '-D_GLIBCXX_USE_CXX11_ABI=1' '-D_LARGEFILE_SOURCE' '-D_FILE_OFFSET_BITS=64' '-D__STDC_FORMAT_MACROS' '-DOPENSSL_NO_PINSHARED' '-DOPENSSL_THREADS' '-DLIBSASS_VERSION="3.5.5"' -I/home/vsts/.node-gyp/16.13.0/include/node -I/home/vsts/.node-gyp/16.13.0/src -I/home/vsts/.node-gyp/16.13.0/deps/openssl/config -I/home/vsts/.node-gyp/16.13.0/deps/openssl/openssl/include -I/home/vsts/.node-gyp/16.13.0/deps/uv/include -I/home/vsts/.node-gyp/16.13.0/deps/zlib -I/home/vsts/.node-gyp/16.13.0/deps/v8/include -I../src/libsass/include  -fPIC -pthread -Wall -Wextra -Wno-unused-parameter -m64 -O3 -fno-omit-frame-pointer -std=gnu++14 -std=c++0x -fexceptions -frtti -MMD -MF ./Release/.deps/Release/obj.target/libsass/src/libsass/src/base64vlq.o.d.raw   -c -o Release/obj.target/libsass/src/libsass/src/base64vlq.o ../src/libsass/src/base64vlq.cpp
34
35
36{
37  "dependencies": {
38    "node-sass": "^4.14.1"
39  }
40}
41
42{
43  "dependencies": {
44    "node-sass": "6.0.1"
45  }
46}
47

Source https://stackoverflow.com/questions/70199030

QUESTION

Deps File Missing for Dotnet 6 Integration Tests

Asked 2022-Feb-17 at 21:19

Before I start, I've tried all suggestions from the following and none work:

Integration testing ASP.NET Core with .NET Framework - can't find deps.json

https://zimmergren.net/unable-to-find-deps-json-dotnet-azure-devops/


So I'm trying to write some integration tests for dotnet 6. However, my WebApplicationFactory throws the following error:

System.InvalidOperationException: Can't find '/repos/subscription-info-api/tests/SubscriptionInfoApi.Tests.Integration/bin/Debug/net6.0/...

System.InvalidOperationException Can't find '/repos/subscription-info-api/tests/SubscriptionInfoApi.Tests.Integration/bin/Debug/net6.0/testhost.deps.json'. This file is required for functional tests to run properly. There should be a copy of the file on your source project bin folder. If that is not the case, make sure that the property PreserveCompilationContext is set to true on your project file. E.g 'true'. For functional tests to work they need to either run from the build output folder or the testhost.deps.json file from your application's output directory must be copied to the folder where the tests are running on. A common cause for this error is having shadow copying enabled when the tests run. at Microsoft.AspNetCore.Mvc.Testing.WebApplicationFactory1.EnsureDepsFile() at Microsoft.AspNetCore.Mvc.Testing.WebApplicationFactory1.EnsureServer() at Microsoft.AspNetCore.Mvc.Testing.WebApplicationFactory1.CreateDefaultClient(DelegatingHandler[] handlers) at Microsoft.AspNetCore.Mvc.Testing.WebApplicationFactory1.CreateDefaultClient(Uri baseAddress, DelegatingHandler[] handlers) at Microsoft.AspNetCore.Mvc.Testing.WebApplicationFactory1.CreateClient(WebApplicationFactoryClientOptions options) at Microsoft.AspNetCore.Mvc.Testing.WebApplicationFactory1.CreateClient() at SubscriptionInfoApi.Tests.Integration.UnitTest1.Test1() in /repos/subscription-info-api/tests/SubscriptionInfoApi.Tests.Integration/UnitTest1.cs:line 14 at SubscriptionInfoApi.Tests.Integration.UnitTest1.Test1() in /repos/subscription-info-api/tests/SubscriptionInfoApi.Tests.Integration/UnitTest1.cs:line 16 at Xunit.Sdk.TestInvoker1.<>c__DisplayClass48_0.<<InvokeTestMethodAsync>b__1>d.MoveNext() in /_/src/xunit.execution/Sdk/Frameworks/Runners/TestInvoker.cs:line 264 --- End of stack trace from previous location --- at Xunit.Sdk.ExecutionTimer.AggregateAsync(Func1 asyncAction) in //src/xunit.execution/Sdk/Frameworks/ExecutionTimer.cs:line 48 at Xunit.Sdk.ExceptionAggregator.RunAsync(Func`1 code) in //src/xunit.core/Sdk/ExceptionAggregator.cs:line 90

My actual test code is extremely simple:

1   [Fact]
2    public async Task Test1()
3    {
4        await using var app    = new WebApplicationFactory&lt;Program&gt;();
5        using var client = app.CreateClient();
6        var       res    = await (await client.GetAsync(&quot;/alive-test&quot;)).Content.ReadAsStringAsync();
7        Assert.Equal(&quot;Alive!&quot;, res);
8    }
9

As per the suggestions, I've made sure I'm directly referencing Microsoft.AspNetCore.Mvc.Testing -> 6.0.0 in my integration tests project. I've also tried the various tweaks to the .csproj files that were suggested but nothing seems to be working.

I'm stuck for things to try to debug this further, any ideas?

ANSWER

Answered 2021-Nov-18 at 21:03

You are probably targeting the wrong namespace for Program in your test file (like I was).

I had to add the following at the end of my Program.cs file (last line) to make it visible to my test projects needing it:

1   [Fact]
2    public async Task Test1()
3    {
4        await using var app    = new WebApplicationFactory&lt;Program&gt;();
5        using var client = app.CreateClient();
6        var       res    = await (await client.GetAsync(&quot;/alive-test&quot;)).Content.ReadAsStringAsync();
7        Assert.Equal(&quot;Alive!&quot;, res);
8    }
9public partial class Program { }
10

An example can be found here: minimal api testing example

Source https://stackoverflow.com/questions/69991983

QUESTION

Azure, .Net, Cobertura - ##[warning]Multiple file or directory matches were found

Asked 2022-Feb-16 at 10:41

Hi i am trying to get code coverage with .net5 in azure pipeline.

Run tests (not entire file)

1Starting test execution, please wait...
2A total of 1 test files matched the specified pattern.
3Results File: /home/vsts/work/_temp/_fv-az43-964_2021-08-25_08_31_59.trx
4
5Attachments:
6  /home/vsts/work/_temp/f5dd5e9f-e260-437d-80ef-4fb917215b09/coverage.cobertura.xml
7Passed!  - Failed:     0, Passed:    16, Skipped:     0, Total:    16, Duration: 732 ms - /home/vsts/work/1/s/sda2021_webapi/Test/sda2021_api.tests/bin/Release/net5.0/sda2021_webapi.tests.dll (net5.0)
8Result Attachments will be stored in LogStore
9Run Attachments will be stored in LogStore
10Info: Azure Pipelines hosted agents have been updated and now contain .Net 5.x SDK/Runtime along with the older .Net Core version which are currently lts. Unless you have locked down a SDK version for your project(s), 5.x SDK might be picked up which might have breaking behavior as compared to previous versions. You can learn more about the breaking changes here: https://docs.microsoft.com/en-us/dotnet/core/tools/ and https://docs.microsoft.com/en-us/dotnet/core/compatibility/ . To learn about more such changes and troubleshoot, refer here: https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/build/dotnet-core-cli?view=azure-devops#troubleshooting
11Async Command Start: Publish test results
12Publishing test results to test run '5152'.
13TestResults To Publish 16, Test run id:5152
14Test results publishing 16, remaining: 0. Test run id: 5152
15Published Test Run : https://dev.azure.com/sda-shs/Bratislava2021/_TestManagement/Runs?runId=5152&amp;_a=runCharts
16Async Command End: Publish test results
17Finishing: Dotnet run tests
18

Publish tests(not entire file)

1Starting test execution, please wait...
2A total of 1 test files matched the specified pattern.
3Results File: /home/vsts/work/_temp/_fv-az43-964_2021-08-25_08_31_59.trx
4
5Attachments:
6  /home/vsts/work/_temp/f5dd5e9f-e260-437d-80ef-4fb917215b09/coverage.cobertura.xml
7Passed!  - Failed:     0, Passed:    16, Skipped:     0, Total:    16, Duration: 732 ms - /home/vsts/work/1/s/sda2021_webapi/Test/sda2021_api.tests/bin/Release/net5.0/sda2021_webapi.tests.dll (net5.0)
8Result Attachments will be stored in LogStore
9Run Attachments will be stored in LogStore
10Info: Azure Pipelines hosted agents have been updated and now contain .Net 5.x SDK/Runtime along with the older .Net Core version which are currently lts. Unless you have locked down a SDK version for your project(s), 5.x SDK might be picked up which might have breaking behavior as compared to previous versions. You can learn more about the breaking changes here: https://docs.microsoft.com/en-us/dotnet/core/tools/ and https://docs.microsoft.com/en-us/dotnet/core/compatibility/ . To learn about more such changes and troubleshoot, refer here: https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/build/dotnet-core-cli?view=azure-devops#troubleshooting
11Async Command Start: Publish test results
12Publishing test results to test run '5152'.
13TestResults To Publish 16, Test run id:5152
14Test results publishing 16, remaining: 0. Test run id: 5152
15Published Test Run : https://dev.azure.com/sda-shs/Bratislava2021/_TestManagement/Runs?runId=5152&amp;_a=runCharts
16Async Command End: Publish test results
17Finishing: Dotnet run tests
18##[warning]Multiple file or directory matches were found. Using the first match: /home/vsts/work/_temp/_fv-az43-964_2021-08-25_08_31_59/In/fv-az43-964/coverage.cobertura.xml
19/opt/hostedtoolcache/dotnet/dotnet /home/vsts/work/_tasks/PublishCodeCoverageResults_2a7ebc54-c13e-490e-81a5-d7561ab7cd97/1.189.0/netcoreapp2.0/ReportGenerator.dll -reports:/home/vsts/work/_temp/**/coverage.cobertura.xml -targetdir:/home/vsts/work/_temp/cchtml -reporttypes:HtmlInline_AzurePipelines
202021-08-25T08:32:03: Arguments
212021-08-25T08:32:03:  -reports:/home/vsts/work/_temp/**/coverage.cobertura.xml
22

And of course my pipeline

1Starting test execution, please wait...
2A total of 1 test files matched the specified pattern.
3Results File: /home/vsts/work/_temp/_fv-az43-964_2021-08-25_08_31_59.trx
4
5Attachments:
6  /home/vsts/work/_temp/f5dd5e9f-e260-437d-80ef-4fb917215b09/coverage.cobertura.xml
7Passed!  - Failed:     0, Passed:    16, Skipped:     0, Total:    16, Duration: 732 ms - /home/vsts/work/1/s/sda2021_webapi/Test/sda2021_api.tests/bin/Release/net5.0/sda2021_webapi.tests.dll (net5.0)
8Result Attachments will be stored in LogStore
9Run Attachments will be stored in LogStore
10Info: Azure Pipelines hosted agents have been updated and now contain .Net 5.x SDK/Runtime along with the older .Net Core version which are currently lts. Unless you have locked down a SDK version for your project(s), 5.x SDK might be picked up which might have breaking behavior as compared to previous versions. You can learn more about the breaking changes here: https://docs.microsoft.com/en-us/dotnet/core/tools/ and https://docs.microsoft.com/en-us/dotnet/core/compatibility/ . To learn about more such changes and troubleshoot, refer here: https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/build/dotnet-core-cli?view=azure-devops#troubleshooting
11Async Command Start: Publish test results
12Publishing test results to test run '5152'.
13TestResults To Publish 16, Test run id:5152
14Test results publishing 16, remaining: 0. Test run id: 5152
15Published Test Run : https://dev.azure.com/sda-shs/Bratislava2021/_TestManagement/Runs?runId=5152&amp;_a=runCharts
16Async Command End: Publish test results
17Finishing: Dotnet run tests
18##[warning]Multiple file or directory matches were found. Using the first match: /home/vsts/work/_temp/_fv-az43-964_2021-08-25_08_31_59/In/fv-az43-964/coverage.cobertura.xml
19/opt/hostedtoolcache/dotnet/dotnet /home/vsts/work/_tasks/PublishCodeCoverageResults_2a7ebc54-c13e-490e-81a5-d7561ab7cd97/1.189.0/netcoreapp2.0/ReportGenerator.dll -reports:/home/vsts/work/_temp/**/coverage.cobertura.xml -targetdir:/home/vsts/work/_temp/cchtml -reporttypes:HtmlInline_AzurePipelines
202021-08-25T08:32:03: Arguments
212021-08-25T08:32:03:  -reports:/home/vsts/work/_temp/**/coverage.cobertura.xml
22task: DotNetCoreCLI@2
23            displayName: Dotnet run tests
24            inputs:
25              command: &quot;test&quot;
26              projects: &quot;**/xxxxx/*.tests.csproj&quot;
27              arguments: '--configuration Release /p:CoverletOutputFormat=cobertura --collect:&quot;XPlat Code Coverage&quot; --no-build'
28              testRunTitle: &quot;xxxx&quot;
29          - task: PublishCodeCoverageResults@1
30            displayName: &quot;publish coverage results&quot;
31            inputs:
32              codeCoverageTool: &quot;Cobertura&quot;
33              summaryFileLocation: &quot;$(Agent.TempDirectory)/**/coverage.cobertura.xml&quot;
34

Why is more then one XML generated? I am basically balancing between no XML and more XML. I am just unable to generate one XML. (on my localhost it generates only one) Thanks for any tips.

ANSWER

Answered 2021-Aug-25 at 08:52

Please replace your PublishCodeCoverageResults with following steps:

1Starting test execution, please wait...
2A total of 1 test files matched the specified pattern.
3Results File: /home/vsts/work/_temp/_fv-az43-964_2021-08-25_08_31_59.trx
4
5Attachments:
6  /home/vsts/work/_temp/f5dd5e9f-e260-437d-80ef-4fb917215b09/coverage.cobertura.xml
7Passed!  - Failed:     0, Passed:    16, Skipped:     0, Total:    16, Duration: 732 ms - /home/vsts/work/1/s/sda2021_webapi/Test/sda2021_api.tests/bin/Release/net5.0/sda2021_webapi.tests.dll (net5.0)
8Result Attachments will be stored in LogStore
9Run Attachments will be stored in LogStore
10Info: Azure Pipelines hosted agents have been updated and now contain .Net 5.x SDK/Runtime along with the older .Net Core version which are currently lts. Unless you have locked down a SDK version for your project(s), 5.x SDK might be picked up which might have breaking behavior as compared to previous versions. You can learn more about the breaking changes here: https://docs.microsoft.com/en-us/dotnet/core/tools/ and https://docs.microsoft.com/en-us/dotnet/core/compatibility/ . To learn about more such changes and troubleshoot, refer here: https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/build/dotnet-core-cli?view=azure-devops#troubleshooting
11Async Command Start: Publish test results
12Publishing test results to test run '5152'.
13TestResults To Publish 16, Test run id:5152
14Test results publishing 16, remaining: 0. Test run id: 5152
15Published Test Run : https://dev.azure.com/sda-shs/Bratislava2021/_TestManagement/Runs?runId=5152&amp;_a=runCharts
16Async Command End: Publish test results
17Finishing: Dotnet run tests
18##[warning]Multiple file or directory matches were found. Using the first match: /home/vsts/work/_temp/_fv-az43-964_2021-08-25_08_31_59/In/fv-az43-964/coverage.cobertura.xml
19/opt/hostedtoolcache/dotnet/dotnet /home/vsts/work/_tasks/PublishCodeCoverageResults_2a7ebc54-c13e-490e-81a5-d7561ab7cd97/1.189.0/netcoreapp2.0/ReportGenerator.dll -reports:/home/vsts/work/_temp/**/coverage.cobertura.xml -targetdir:/home/vsts/work/_temp/cchtml -reporttypes:HtmlInline_AzurePipelines
202021-08-25T08:32:03: Arguments
212021-08-25T08:32:03:  -reports:/home/vsts/work/_temp/**/coverage.cobertura.xml
22task: DotNetCoreCLI@2
23            displayName: Dotnet run tests
24            inputs:
25              command: &quot;test&quot;
26              projects: &quot;**/xxxxx/*.tests.csproj&quot;
27              arguments: '--configuration Release /p:CoverletOutputFormat=cobertura --collect:&quot;XPlat Code Coverage&quot; --no-build'
28              testRunTitle: &quot;xxxx&quot;
29          - task: PublishCodeCoverageResults@1
30            displayName: &quot;publish coverage results&quot;
31            inputs:
32              codeCoverageTool: &quot;Cobertura&quot;
33              summaryFileLocation: &quot;$(Agent.TempDirectory)/**/coverage.cobertura.xml&quot;
34       - task: reportgenerator@4
35         displayName: 'Merge code coverage reports'
36         inputs:
37           reports: '$(Agent.TempDirectory)/**/coverage.cobertura.xml'
38           targetdir: '$(Pipeline.Workspace)/coverlet'
39           reporttypes: 'Cobertura'
40           verbosity: 'Verbose'
41     
42       - task: PublishCodeCoverageResults@1
43         displayName: 'Publish code coverage results'
44         inputs:
45           codeCoverageTool: Cobertura
46           summaryFileLocation: '$(Pipeline.Workspace)/coverlet/Cobertura.xml'
47

And you have multiple files, because probably you have more than one test project.

Source https://stackoverflow.com/questions/68919661

QUESTION

C# WASM without Blazor

Asked 2022-Jan-30 at 14:27

I want to be able to call C# code from JavaScript. The mono project used to have a WASM SDK that you could download from their old Jenkins server, but that is no longer public. Existing docs tend to point toward those builds. The Azure Devops builds do not include this SDK. A few messages I've seen on their Github account indicate that they are now focusing on the .NET 6 for WASM. I do not wish to use the Blazor components. Is there a way in .NET 6 to build a minimally sized WASM binary without the Blazor UI?

ANSWER

Answered 2021-Aug-26 at 01:25

Yes it's absolutely possible. Blazor does not have a monopoly on C#/WASM and it's far from clear that it's going to wind up being the best long term option (and a lot of evidence it's not).

I recommend starting with the Uno WASM Bootstrap. https://github.com/unoplatform/Uno.Wasm.Bootstrap

Source https://stackoverflow.com/questions/68927533

QUESTION

Azure DevOps Build pipeline `npm install` failing on node-gyp

Asked 2021-Dec-20 at 12:31

We have a CD/CI Azure Devops build pipeline that has started failing for nodejs/node-gyp.

  • error gyp info using node-gyp@3.8.0
  • error gyp info using node@16.13.0 | win32 | x64

Nothing about our build pipeline has changed, the pool we use is:

1pool:
2  vmImage: 'windows-latest'
3

Which is still mapped to windows-2019 https://docs.microsoft.com/en-us/azure/devops/pipelines/agents/hosted?view=azure-devops&tabs=yaml.

The pipeline fails when we hit the following task in the YAML file:

1pool:
2  vmImage: 'windows-latest'
3- task: Npm@1
4  displayName: 'npm install'
5  inputs:
6    command: 'install'
7    workingDir: 'FrontEnd'
8    verbose: true
9

Log file:

1pool:
2  vmImage: 'windows-latest'
3- task: Npm@1
4  displayName: 'npm install'
5  inputs:
6    command: 'install'
7    workingDir: 'FrontEnd'
8    verbose: true
9error gyp ERR! UNCAUGHT EXCEPTION
10error gyp ERR! stack Error: spawn C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\MSBuild\15.0\Bin\MSBuild.exe ENOENT
11error gyp ERR! stack     at Process.ChildProcess._handle.onexit (node:internal/child_process:282:19)
12error gyp ERR! stack     at onErrorNT (node:internal/child_process:477:16)
13error gyp ERR! stack     at processTicksAndRejections (node:internal/process/task_queues:83:21)
14error gyp ERR! System Windows_NT 10.0.17763
15error gyp ERR! command &quot;C:\\Program Files\\nodejs\\node.exe&quot; &quot;D:\\a\\1\\s\\Presentation\\node_modules\\node-gyp\\bin\\node-gyp.js&quot; &quot;rebuild&quot; &quot;--verbose&quot; &quot;--libsass_ext=&quot; &quot;--libsass_cflags=&quot; &quot;--libsass_ldflags=&quot; &quot;--libsass_library=&quot;
16error gyp ERR! cwd D:\a\1\s\FrontEnd\node_modules\node-sass
17error gyp ERR! node -v v16.13.0
18error gyp ERR! node-gyp -v v3.8.0
19error gyp ERR! This is a bug in `node-gyp`.
20error gyp ERR! Try to update node-gyp and file an Issue if it does not help:
21error gyp ERR!     &lt;https://github.com/nodejs/node-gyp/issues&gt;
22error Build failed with error code: 7
23verbose exit 1
24
25##[error]Error: Npm failed with return code: 1
26

ANSWER

Answered 2021-Dec-13 at 09:42

Azure auto updated the version of node it was using, pushing the required version of node-gyp forward too, this lead to all of our builds failing. The versions it pushed to were:

  • npm@8.1.0
  • node@v16.13.0

Add task: NodeTool@0 to set the Node version to the last passed version which for us was:

  • npm@6.14.15
  • node@14.18.1

The end code looks like this:

1pool:
2  vmImage: 'windows-latest'
3- task: Npm@1
4  displayName: 'npm install'
5  inputs:
6    command: 'install'
7    workingDir: 'FrontEnd'
8    verbose: true
9error gyp ERR! UNCAUGHT EXCEPTION
10error gyp ERR! stack Error: spawn C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\MSBuild\15.0\Bin\MSBuild.exe ENOENT
11error gyp ERR! stack     at Process.ChildProcess._handle.onexit (node:internal/child_process:282:19)
12error gyp ERR! stack     at onErrorNT (node:internal/child_process:477:16)
13error gyp ERR! stack     at processTicksAndRejections (node:internal/process/task_queues:83:21)
14error gyp ERR! System Windows_NT 10.0.17763
15error gyp ERR! command &quot;C:\\Program Files\\nodejs\\node.exe&quot; &quot;D:\\a\\1\\s\\Presentation\\node_modules\\node-gyp\\bin\\node-gyp.js&quot; &quot;rebuild&quot; &quot;--verbose&quot; &quot;--libsass_ext=&quot; &quot;--libsass_cflags=&quot; &quot;--libsass_ldflags=&quot; &quot;--libsass_library=&quot;
16error gyp ERR! cwd D:\a\1\s\FrontEnd\node_modules\node-sass
17error gyp ERR! node -v v16.13.0
18error gyp ERR! node-gyp -v v3.8.0
19error gyp ERR! This is a bug in `node-gyp`.
20error gyp ERR! Try to update node-gyp and file an Issue if it does not help:
21error gyp ERR!     &lt;https://github.com/nodejs/node-gyp/issues&gt;
22error Build failed with error code: 7
23verbose exit 1
24
25##[error]Error: Npm failed with return code: 1
26- task: NodeTool@0
27  inputs:
28    versionSpec: '14.x'
29    
30- task: Npm@1
31  displayName: 'npm install'
32  inputs:
33    command: 'install'
34    workingDir: 'FrontEnd'
35    verbose: true
36

After re-running the pipeline it works again and produces artefacts.

Source https://stackoverflow.com/questions/70332595

QUESTION

How can I suppress or resolve &quot;info: detecting host provider for...&quot; in Git?

Asked 2021-Nov-25 at 13:09

I'm getting the following output when executing a fetch / pull via a powershell script:

info: detecting host provider for '[devops site address]'...

Normally, this wouldn't be an issue, however, Azure DevOps sees this output as an error and labels the release stage as such. Is there a way I can either suppress this output, or resolve it via GIT?

The remote location for the repository is an on-prem version of DevOps.

Thanks!

ANSWER

Answered 2021-Nov-25 at 13:09

This comes indeed from the GCM used by Git.
You can either downgrade to Git 2.32, or wait for the recently released Git-Credential-Manager-Core v2.0.603, which does remove those messages.

Said release is not yet packaged with the latest Git for Windows, like the recent 2.34.0, but expect it in 2.34.1.

A set GCM_PROVIDER=generic could help too.


Update Nov. 25th, 2021: Git for Windows 2.34.1 has been released, and it does include Git Credential Manager Core v2.0.605.12951.

That GCM 2.0.605 includes "Remove noisy messages during auto-detection" (#492, #494).

Source https://stackoverflow.com/questions/69681452

QUESTION

Azure Devops - Hosted pool - ubuntu latest - How do i get ubuntu-latest to have the latest visual studio build tools (preview 2022)?

Asked 2021-Nov-05 at 14:04

Our azure devops pipelines are configured to use hosted ubuntu-latest

vmImage: 'ubuntu-latest'

I am using Azure Functions that require the package: packages/microsoft.net.sdk.functions/4.0.0 The hosted ubuntu latest is throwing non compatible framework version error.

1 /home/vsts/.nuget/packages/microsoft.net.sdk.functions/4.0.0/build/Microsoft.NET.Sdk.Functions.Build.targets(32,5):
2 error : It was not possible to find any compatible framework version 
3 /home/vsts/.nuget/packages/microsoft.net.sdk.functions/4.0.0/build/Microsoft.NET.Sdk.Functions.Build.targets(32,5):
4 error : The framework 'Microsoft.NETCore.App', version
5 '6.0.0-rc.1.21451.13' was not found.**
6

Azure devops error image

When changing the pool to run on an on premise build agent, I was able to install the latest build tools (the one that comes with visual studio 2022 preview) and everything works fine. My question is how do I get the ubuntu-latest to have the latest dotnet build tools?

This is the output of dotnet info of the ubuntu-latest agent.

1 /home/vsts/.nuget/packages/microsoft.net.sdk.functions/4.0.0/build/Microsoft.NET.Sdk.Functions.Build.targets(32,5):
2 error : It was not possible to find any compatible framework version 
3 /home/vsts/.nuget/packages/microsoft.net.sdk.functions/4.0.0/build/Microsoft.NET.Sdk.Functions.Build.targets(32,5):
4 error : The framework 'Microsoft.NETCore.App', version
5 '6.0.0-rc.1.21451.13' was not found.**
62021-10-27T04:54:16.4629465Z .NET SDKs installed:
72021-10-27T04:54:16.4630372Z   2.1.302 [/usr/share/dotnet/sdk]
82021-10-27T04:54:16.4630865Z   2.1.403 [/usr/share/dotnet/sdk]
92021-10-27T04:54:16.4631327Z   2.1.526 [/usr/share/dotnet/sdk]
102021-10-27T04:54:16.4631821Z   2.1.617 [/usr/share/dotnet/sdk]
112021-10-27T04:54:16.4632292Z   2.1.701 [/usr/share/dotnet/sdk]
122021-10-27T04:54:16.4632746Z   2.1.818 [/usr/share/dotnet/sdk]
132021-10-27T04:54:16.4633218Z   3.1.120 [/usr/share/dotnet/sdk]
142021-10-27T04:54:16.4633687Z   3.1.202 [/usr/share/dotnet/sdk]
152021-10-27T04:54:16.4634147Z   3.1.302 [/usr/share/dotnet/sdk]
162021-10-27T04:54:16.4634616Z   3.1.414 [/usr/share/dotnet/sdk]
172021-10-27T04:54:16.4635086Z   5.0.104 [/usr/share/dotnet/sdk]
182021-10-27T04:54:16.4635541Z   5.0.208 [/usr/share/dotnet/sdk]
192021-10-27T04:54:16.4636008Z   5.0.303 [/usr/share/dotnet/sdk]
202021-10-27T04:54:16.4636462Z   5.0.402 [/usr/share/dotnet/sdk]
212021-10-27T04:54:16.4636703Z 
222021-10-27T04:54:16.4637082Z .NET runtimes installed:
232021-10-27T04:54:16.4637683Z   Microsoft.AspNetCore.All 2.1.2 [/usr/share/dotnet/shared/Microsoft.AspNetCore.All]
242021-10-27T04:54:16.4638405Z   Microsoft.AspNetCore.All 2.1.5 [/usr/share/dotnet/shared/Microsoft.AspNetCore.All]
252021-10-27T04:54:16.4639112Z   Microsoft.AspNetCore.All 2.1.12 [/usr/share/dotnet/shared/Microsoft.AspNetCore.All]
262021-10-27T04:54:16.4639839Z   Microsoft.AspNetCore.All 2.1.24 [/usr/share/dotnet/shared/Microsoft.AspNetCore.All]
272021-10-27T04:54:16.4640553Z   Microsoft.AspNetCore.All 2.1.30 [/usr/share/dotnet/shared/Microsoft.AspNetCore.All]
282021-10-27T04:54:16.4641691Z   Microsoft.AspNetCore.App 2.1.2 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
292021-10-27T04:54:16.4642420Z   Microsoft.AspNetCore.App 2.1.5 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
302021-10-27T04:54:16.4643130Z   Microsoft.AspNetCore.App 2.1.12 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
312021-10-27T04:54:16.4643823Z   Microsoft.AspNetCore.App 2.1.24 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
322021-10-27T04:54:16.4644541Z   Microsoft.AspNetCore.App 2.1.30 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
332021-10-27T04:54:16.4645263Z   Microsoft.AspNetCore.App 3.1.4 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
342021-10-27T04:54:16.4645958Z   Microsoft.AspNetCore.App 3.1.6 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
352021-10-27T04:54:16.4646889Z   Microsoft.AspNetCore.App 3.1.20 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
362021-10-27T04:54:16.4647598Z   Microsoft.AspNetCore.App 5.0.4 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
372021-10-27T04:54:16.4648286Z   Microsoft.AspNetCore.App 5.0.9 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
382021-10-27T04:54:16.4648995Z   Microsoft.AspNetCore.App 5.0.11 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
392021-10-27T04:54:16.4649693Z   Microsoft.NETCore.App 2.1.2 [/usr/share/dotnet/shared/Microsoft.NETCore.App]
402021-10-27T04:54:16.4650357Z   Microsoft.NETCore.App 2.1.5 [/usr/share/dotnet/shared/Microsoft.NETCore.App]
412021-10-27T04:54:16.4651045Z   Microsoft.NETCore.App 2.1.12 [/usr/share/dotnet/shared/Microsoft.NETCore.App]
422021-10-27T04:54:16.4651737Z   Microsoft.NETCore.App 2.1.24 [/usr/share/dotnet/shared/Microsoft.NETCore.App]
432021-10-27T04:54:16.4652407Z   Microsoft.NETCore.App 2.1.30 [/usr/share/dotnet/shared/Microsoft.NETCore.App]
442021-10-27T04:54:16.4653101Z   Microsoft.NETCore.App 3.1.4 [/usr/share/dotnet/shared/Microsoft.NETCore.App]
452021-10-27T04:54:16.4653781Z   Microsoft.NETCore.App 3.1.6 [/usr/share/dotnet/shared/Microsoft.NETCore.App]
462021-10-27T04:54:16.4654445Z   Microsoft.NETCore.App 3.1.20 [/usr/share/dotnet/shared/Microsoft.NETCore.App]
472021-10-27T04:54:16.4655124Z   Microsoft.NETCore.App 5.0.4 [/usr/share/dotnet/shared/Microsoft.NETCore.App]
482021-10-27T04:54:16.4655799Z   Microsoft.NETCore.App 5.0.9 [/usr/share/dotnet/shared/Microsoft.NETCore.App]
492021-10-27T04:54:16.4656459Z   Microsoft.NETCore.App 5.0.11 [/usr/share/dotnet/shared/Microsoft.NETCore.App]
502021-10-27T04:54:16.4656807Z 
51

ANSWER

Answered 2021-Nov-05 at 14:04

use this in your pipeline definition:

1 /home/vsts/.nuget/packages/microsoft.net.sdk.functions/4.0.0/build/Microsoft.NET.Sdk.Functions.Build.targets(32,5):
2 error : It was not possible to find any compatible framework version 
3 /home/vsts/.nuget/packages/microsoft.net.sdk.functions/4.0.0/build/Microsoft.NET.Sdk.Functions.Build.targets(32,5):
4 error : The framework 'Microsoft.NETCore.App', version
5 '6.0.0-rc.1.21451.13' was not found.**
62021-10-27T04:54:16.4629465Z .NET SDKs installed:
72021-10-27T04:54:16.4630372Z   2.1.302 [/usr/share/dotnet/sdk]
82021-10-27T04:54:16.4630865Z   2.1.403 [/usr/share/dotnet/sdk]
92021-10-27T04:54:16.4631327Z   2.1.526 [/usr/share/dotnet/sdk]
102021-10-27T04:54:16.4631821Z   2.1.617 [/usr/share/dotnet/sdk]
112021-10-27T04:54:16.4632292Z   2.1.701 [/usr/share/dotnet/sdk]
122021-10-27T04:54:16.4632746Z   2.1.818 [/usr/share/dotnet/sdk]
132021-10-27T04:54:16.4633218Z   3.1.120 [/usr/share/dotnet/sdk]
142021-10-27T04:54:16.4633687Z   3.1.202 [/usr/share/dotnet/sdk]
152021-10-27T04:54:16.4634147Z   3.1.302 [/usr/share/dotnet/sdk]
162021-10-27T04:54:16.4634616Z   3.1.414 [/usr/share/dotnet/sdk]
172021-10-27T04:54:16.4635086Z   5.0.104 [/usr/share/dotnet/sdk]
182021-10-27T04:54:16.4635541Z   5.0.208 [/usr/share/dotnet/sdk]
192021-10-27T04:54:16.4636008Z   5.0.303 [/usr/share/dotnet/sdk]
202021-10-27T04:54:16.4636462Z   5.0.402 [/usr/share/dotnet/sdk]
212021-10-27T04:54:16.4636703Z 
222021-10-27T04:54:16.4637082Z .NET runtimes installed:
232021-10-27T04:54:16.4637683Z   Microsoft.AspNetCore.All 2.1.2 [/usr/share/dotnet/shared/Microsoft.AspNetCore.All]
242021-10-27T04:54:16.4638405Z   Microsoft.AspNetCore.All 2.1.5 [/usr/share/dotnet/shared/Microsoft.AspNetCore.All]
252021-10-27T04:54:16.4639112Z   Microsoft.AspNetCore.All 2.1.12 [/usr/share/dotnet/shared/Microsoft.AspNetCore.All]
262021-10-27T04:54:16.4639839Z   Microsoft.AspNetCore.All 2.1.24 [/usr/share/dotnet/shared/Microsoft.AspNetCore.All]
272021-10-27T04:54:16.4640553Z   Microsoft.AspNetCore.All 2.1.30 [/usr/share/dotnet/shared/Microsoft.AspNetCore.All]
282021-10-27T04:54:16.4641691Z   Microsoft.AspNetCore.App 2.1.2 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
292021-10-27T04:54:16.4642420Z   Microsoft.AspNetCore.App 2.1.5 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
302021-10-27T04:54:16.4643130Z   Microsoft.AspNetCore.App 2.1.12 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
312021-10-27T04:54:16.4643823Z   Microsoft.AspNetCore.App 2.1.24 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
322021-10-27T04:54:16.4644541Z   Microsoft.AspNetCore.App 2.1.30 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
332021-10-27T04:54:16.4645263Z   Microsoft.AspNetCore.App 3.1.4 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
342021-10-27T04:54:16.4645958Z   Microsoft.AspNetCore.App 3.1.6 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
352021-10-27T04:54:16.4646889Z   Microsoft.AspNetCore.App 3.1.20 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
362021-10-27T04:54:16.4647598Z   Microsoft.AspNetCore.App 5.0.4 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
372021-10-27T04:54:16.4648286Z   Microsoft.AspNetCore.App 5.0.9 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
382021-10-27T04:54:16.4648995Z   Microsoft.AspNetCore.App 5.0.11 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App]
392021-10-27T04:54:16.4649693Z   Microsoft.NETCore.App 2.1.2 [/usr/share/dotnet/shared/Microsoft.NETCore.App]
402021-10-27T04:54:16.4650357Z   Microsoft.NETCore.App 2.1.5 [/usr/share/dotnet/shared/Microsoft.NETCore.App]
412021-10-27T04:54:16.4651045Z   Microsoft.NETCore.App 2.1.12 [/usr/share/dotnet/shared/Microsoft.NETCore.App]
422021-10-27T04:54:16.4651737Z   Microsoft.NETCore.App 2.1.24 [/usr/share/dotnet/shared/Microsoft.NETCore.App]
432021-10-27T04:54:16.4652407Z   Microsoft.NETCore.App 2.1.30 [/usr/share/dotnet/shared/Microsoft.NETCore.App]
442021-10-27T04:54:16.4653101Z   Microsoft.NETCore.App 3.1.4 [/usr/share/dotnet/shared/Microsoft.NETCore.App]
452021-10-27T04:54:16.4653781Z   Microsoft.NETCore.App 3.1.6 [/usr/share/dotnet/shared/Microsoft.NETCore.App]
462021-10-27T04:54:16.4654445Z   Microsoft.NETCore.App 3.1.20 [/usr/share/dotnet/shared/Microsoft.NETCore.App]
472021-10-27T04:54:16.4655124Z   Microsoft.NETCore.App 5.0.4 [/usr/share/dotnet/shared/Microsoft.NETCore.App]
482021-10-27T04:54:16.4655799Z   Microsoft.NETCore.App 5.0.9 [/usr/share/dotnet/shared/Microsoft.NETCore.App]
492021-10-27T04:54:16.4656459Z   Microsoft.NETCore.App 5.0.11 [/usr/share/dotnet/shared/Microsoft.NETCore.App]
502021-10-27T04:54:16.4656807Z 
51- task: UseDotNet@2
52  displayName: 'Use .NET Core sdk'
53  inputs:
54    version: 6.0.x
55    includePreviewVersions: true
56

To explain, firstly Visual Studio only runs on Windows, so you can't install Visual Studio on Linux, but that's fine because you actually only want the .NET SDK. Secondly, both Visual Studio 2022 and .NET 6 are in preview.

Next, Azure DevOps have documented what software is pre-installed on all their hosted agents: https://docs.microsoft.com/en-us/azure/devops/pipelines/agents/hosted?view=azure-devops&tabs=yaml#software

If you follow the link to .NET Core SDK on Ubuntu 20.04 (latest), you see that they only pre-install Generally Available (GA; released) versions of the .NET SDK, not preview versions. After all, most customers building their production applications don't want the risk of using preview tools that might have bugs and break their builds.

So, if you want a preview .NET SDK, you need to explicitly install it as part of your build steps. The UseDotNet task does that, allowing you to specify a bunch of parameters, but in this case the most important two are version and include preview versions.

For other scenarios, for example anyone not using Azure Pipelines, the .NET team also have dotnet-install scripts, which you can download and execute in your pipeline.

For what it's worth, .NET 6 is having a launch party on the 9th to the 11th of November, and Visual Studio 2022 is having a launch event on the 8th of November. I don't know how quickly Azure DevOps will update their VM images with the newly released tools, but I guess it will be within days, so installing preview tooling in your build scripts won't be needed for much longer, unless you want to keep using preview tools. Note that once .NET 6 SDK's 6.0.100 goes GA, then the script that installs preview 6.0.x tooling will start installing the preview 6.0.200 previews

Source https://stackoverflow.com/questions/69733179

Community Discussions contain sources that include Stack Exchange Network

Tutorials and Learning Resources in Devops

Tutorials and Learning Resources are not available at this moment for Devops

Share this Page

share link

Get latest updates on Devops