OctopusDeploy / OctopusTentacle

| Public | The secure, lightweight, cross-platform agent for Octopus Server which turns any computer into a worker or deployment target for automated deployments and operations runbooks.
https://octopus.com
Apache License 2.0
11 stars 16 forks source link

Make integration test timeout configurable (for Windows Server 2012) #1006

Open samdanaei opened 2 months ago

samdanaei commented 2 months ago

Background

On our Windows Server 2012 CI agents, we have observed some timeout and disk space issues that occur during certain test runs. We think these are caused by known issues with .NET 8 and Windows Server 2012, as these issues don't occur on any other operating system + .NET runtime combinations, for us.

As Microsoft won't be fixing the known issue, we have needed to deal with failures on our CI when we test tentacle functionality on Windows Server 2012.

Results

We are skipping some tests that may cause issues on our Windows 2012 CI build.

Why would we think that it's okay to skip these tests?

The skipped tests mainly test Tentacle functionality that

We see little risk in skipping these tests on Windows Server 2012 because most customers do not use the Operating System and we may be dropping support for it in the future.

How do we skip these tests on Windows 2012?

We introduced a new test attribute that allows us to read from an environment variable and skip tests based on that. We've introduced the Has_NET8_Compatibility_Issues environment variable and set it to true for the Windows Server 2012 CI build environment.

If this PR is merged, we can reintroduce the Windows Server 2012 dependency to the build pipeline for some level of safety on the OS.

How to review this PR

Quality :heavy_check_mark:

Pre-requisites