Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Testing appveyor.yml with Ubuntu #4271

Merged
merged 7 commits into from Feb 1, 2021
Merged

Conversation

snakefoot
Copy link
Contributor

@snakefoot snakefoot commented Jan 27, 2021

See also #4270

@snakefoot snakefoot force-pushed the appveyor-ubuntu branch 26 times, most recently from 70dea25 to 8efb6f3 Compare January 29, 2021 07:47
@snakefoot
Copy link
Contributor Author

snakefoot commented Jan 29, 2021

@304NotModified Well now it is possible to run Ubuntu-build on AppVeyor. It is faster than waiting for Travis, but still a single build takes 25 mins because one also is queued for Ubuntu-build on AppVeyor.

It also revealed that NLog is hit by this "bug" on the Linux-platform, that causes NLog Config Variables to no longer work on Net50-platform with Linux. dotnet/runtime#43736 (Will make a PR for the master-branch for this)

I think we should move to AppVeyor and drop Travis. Unless you have some secret desire for the more unstable Azure DevOps Pipeline or the untested Github-Actions?

@snakefoot snakefoot force-pushed the appveyor-ubuntu branch 2 times, most recently from 2101ef8 to 7b0898b Compare January 29, 2021 19:55
@304NotModified
Copy link
Member

I think we should move to AppVeyor and drop Travis. Unless you have some secret desire for the more unstable Azure DevOps Pipeline or the untested Github-Actions?

I prefer of course stability. Unfortunately the single agent on AppVeyor was for me a reason to try moving to Azure. Unfortunately this was never fully completed because of the stability and a lot of release scripts where build on AppVeyor.

25min is long....I'm doubting if we should not try Azure for Linux, it's has more agents and work in parallel.

@304NotModified
Copy link
Member

It also revealed that NLog is hit by this "bug" on the Linux-platform, that causes NLog Config Variables to no longer work on Net50-platform with Linux. dotnet/runtime#43736 (Will make a PR for the master-branch for this

Heavy change in .net 5! We don't need a separate build for .net 5, but only adding the stringComparison for every indexOf and contains?

@snakefoot
Copy link
Contributor Author

Heavy change in .net 5! We don't need a separate build for .net 5, but only adding the stringComparison for every indexOf and contains?

Yes think it is going to give a lot of headache all around. Seems it is only IndexOf that behaves different and requires Ordinal or OrdinalIgnoreCase

@snakefoot
Copy link
Contributor Author

snakefoot commented Jan 29, 2021

But since you agree to move away from Travis, then maybe this will be an okay alternative until someone comes around and fixes the Azure Pipeline?

For me having a 2 hour integration-build on Travis, makes it a little hard to move forward. Hopefully when NLog 5.0 has been released, then all the "exotic" targets can be moved out of the NLog-core-repository and reduce build-times (and instability because of database-service-issues).

25min is long.

It is actually 16 mins, but there is 10 mins queue time before Ubuntu-build begins.

@sonarcloud
Copy link

sonarcloud bot commented Jan 29, 2021

Kudos, SonarCloud Quality Gate passed!

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 0 Code Smells

100.0% 100.0% Coverage
0.0% 0.0% Duplication

@304NotModified
Copy link
Member

304NotModified commented Jan 30, 2021

2 hours? Travis takes 8min? Or do you mean with restarts?

@snakefoot
Copy link
Contributor Author

snakefoot commented Jan 30, 2021 via email

@304NotModified
Copy link
Member

Ow thanks, I missed something.

Ok drop travis indeed. But I think it's wise if we could try Azure as 10 min queue is also not very nice.

I'm not sure if you've the rights to change the Azure pipeline. In my experience the Linux build agents are more stable than the windows ones.

@snakefoot
Copy link
Contributor Author

snakefoot commented Jan 30, 2021

I think I have spent enough time on getting AppVeyor running, so I will leave it for someone else to play around with Azure Pipelines.

But I guess if you remove Travis, then the "conversion" must also happen on master-branch?

@snakefoot
Copy link
Contributor Author

snakefoot commented Jan 30, 2021

But if you can have 10 parallel jobs on Azure Pipelines then you could do this:

  • CodeCoverage NetCoreApp 2.0 + Net461 Windows - Debug
  • Test NetCoreApp 2.0 Windows - Release
  • Test NetCoreApp 2.0 Ubuntu - Release
  • Test NetFramework 3.5 Windows -Release
  • Test NetFramework 4.5.2 Windows - Release
  • Test NetFramework 4.5.2 Ubuntu Mono - Release
  • Test NetFramework 4.6.1 Windows - Release
  • Test NetFramework 4.6.1 Ubuntu Mono - Release

But I think this has to wait until all exotic targets has been removed from NLog. So after NLog 5.0 has been completed, and the exotic targets has moved to own repositories. Right now Azure Pipelines fails 2 out of 3 on Windows, and if having 3 parallel builds that all need to succeed then it will never be a success.

@snakefoot
Copy link
Contributor Author

@304NotModified So are you ready to disable Travis as pull-request requirement, after merging this pull-request?

@304NotModified
Copy link
Member

Yes Will do that!

@snakefoot snakefoot merged commit f3f3302 into NLog:dev Feb 1, 2021
@snakefoot
Copy link
Contributor Author

Could consider to update the master-branch to drop Travis aswell, but lets see. Maybe NLog 5.0 will ready before another release from master is needed.

@snakefoot
Copy link
Contributor Author

@304NotModified The PullRequest has now been merged, so you can remove Travis now.

@304NotModified
Copy link
Member

Done!

@snakefoot snakefoot deleted the appveyor-ubuntu branch July 30, 2022 10:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants