news in russia - REMMONT.COM

REMONTSit
Posty: 149
Rejestracja: 15 cze 2019, 2:01
Lokalizacja: USA
Kontakt:

news in russia - REMMONT.COM

Postautor: REMONTSit » 19 maja 2021, 21:06

Azure devops integration tests - Эдуард Кабринский


<h1>Azure devops integration tests</h1>
<p>[youtube]</p>
Azure devops integration tests <a href="http://remmont.com">America news today</a> Azure devops integration tests
<h1>PaaS integration testing with Azure DevOps</h1>
<p>Using Azure DevOps pipelines, we can easily spin test environments to run various sorts of integration tests on PaaS resources. Azure DevOps allows powerful scripting and orchestration using familiar CLI commands, and is very useful to automatically spin entire environments using Infrastructure as Code without manual intervention.</p>
<p>Table of Contents</p>
<h2>Sample project</h2>
<p>In this example, we looked at an open-source project Spline (a Data Lineage Tracking and Visualization tool for Apache Spark). Data lineage and governance is a priority topic in many enterprises, and together with my colleague Arvind Shyamsundar, we wanted to evaluate the complexity and benefits of integrating this project into Spark environments.</p>
<p>The Spline project has several components:</p>
<p><ul>
<li>A library that runs on Spark and captures data lineage information</li>
<li>A persistence layer that stores the data on MongoDB, HDFS or Atlas</li>
<li>A Web UI application that visualizes the stored data lineages (supports MongoDB)</li>
</ul>
</p>
<p>We wanted to verify that the MongoDB backend could be swapped by Cosmos DB. As a fully managed, elastic SLA-backed service, Cosmos DB is much easier to manage and integrate than running MongoDB on Virtual Machines. Since Cosmos DB provides wire protocol compatibility with Mongo DB, we expected to be able to plug in Cosmos DB without any changes needed to Spline?s code or libraries.</p>
<p>Since Spline is under active development, we decided to automate testing upfront so that we would be able to test various branches and configurations and retest periodically in the future, rather than testing on a manually deployed environment. Also, we wanted to make the build result publicly available in order to easily share test failures and diagnostic information with the Spline development team.</p>
<p>You can use this patterns to test any software, yours or third-party, in combination with required services and with different configurations.</p>
<h2>Build pipeline</h2>
<h3>Pipeline definition</h3>
<p>The pipeline definition script is azure-pipelines.yml. We first define some variables, including the resource group where we will spin Cosmos DB and a name prefix for Cosmos DB. The name must be unique, and we will generate a unique name for each build to avoid any side effects. We also define the Git branch of the Spline project that we want to test.</p>
<p>We define the type of virtual machine on which the build will run. This is a Microsoft managed VM pool.</p>
<p>The build tasks first create a Cosmos DB instance. Behind the scene, it uses service principals to have access to an Azure subcription. To set up this connection, Navigate to Project settings > Service connections. Create a new service connection of type <em>Azure Resource Manager</em>. Name the connection ARMConnection. Select the subscription. Leave the resource group blank and click OK.</p>
<p>The next tasks run Maven tasks to build the Spline source code and run its unit tests against Cosmos DB, then publish the Spline artifacts (Web UI) into a downloadable artifact.</p>
<p>The last step of the build pipeline deletes the Cosmos DB instance. It is configured to run <em>always</em> so that Cosmos DB will be deleted even if tests fail.</p>
<h3>Build scripts</h3>
<p>The first script run by the pipeline, before-build.sh , creates a Cosmos DB instance with the configuration required by Spline. Spline requires the Mongo DB API, and uses the aggregation pipeline feature. As that feature is in preview, it must be explicitly enabled. It then gets the Cosmos DB connection string (in Mongo DB format) and passes it to the pipeline using the special ##vso syntax. The variable is passed by the Maven test task to the unit test process.</p>
<p>The final script, after-build.sh, deletes the Cosmos DB database, so that no costs are incurred after the end of the tests.</p>
<h2>Results</h2>
<p>Our first run of the build pipeline failed with test failures:</p>
<p style="clear: both"><img src="https://cloudarchitected.com/wp-content ... age-53.png" /></p>
<p style="clear: both"><img src="https://cloudarchitected.com/wp-content ... 24x535.png" /></p>
<p>An investigation showed that the issue was due to a different implementation of regular expressions between native Mongo DB and Cosmos DB. Spline issues database searches using the ?\Q?\E? syntax to mark text as to be searched literally, which is not supported by Cosmos DB that implements the ECMAScript standard. disable regular expression.</p>
<p>We submitted a pull request in order to fix this, and ran the pipeline again. All tests passed (or were skipped). You can download the resulting artifact here.</p>
<p style="clear: both"><img src="https://cloudarchitected.com/wp-content ... 24x396.png" /></p>
<h2>Conclusion</h2>
<p>Using Azure DevOps pipelines as a framework for deploying and testing resources is very light and powerful, even when testing third-party software. This approach can be used for lightweight integration tests, but also for complex testing scenarios, load and performance testing.</p>
<p>Now that we have a verified custom build, let us spin an entire environment with Spark and Spline running in an Azure App Service! <em>(blog post coming soon)</em></p>
<h2>Azure devops integration tests</h2>

<h3>Azure devops integration tests</h3>
<p>[youtube]</p>
Azure devops integration tests <a href="http://remmont.com">Headlines today</a> Azure devops integration tests
<h4>Azure devops integration tests</h4>
PaaS integration testing with Azure DevOps Using Azure DevOps pipelines, we can easily spin test environments to run various sorts of integration tests on PaaS resources. Azure DevOps allows
<h5>Azure devops integration tests</h5>
Azure devops integration tests <a href="http://remmont.com">Azure devops integration tests</a> Azure devops integration tests
SOURCE: <h6>Azure devops integration tests</h6> <a href="https://dev-ops.engineer/">Azure devops integration tests</a> Azure devops integration tests
#tags#[replace: -,-Azure devops integration tests] Azure devops integration tests#tags#
https://ssylki.info/?who=campervan-hire.remmont.com https://ssylki.info/?who=remmont.com/4th-ave-jail https://ssylki.info/?who=remmont.com/si ... do-video-2 https://ssylki.info/?who=vacation-rentals.remmont.com https://ssylki.info/?who=auto-anything.remmont.com

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 52 gości