SumoLogic / sumologic-net-appenders

Several appenders for .NET developers to use that send logs straight to SumoLogic.
Apache License 2.0
23 stars 39 forks source link

Github Tags + public builds #43

Closed TerribleDev closed 6 years ago

TerribleDev commented 7 years ago

I think we should setup public builds on appveyor, or some other system that would support windows based builds such as Jenkins.

For a few reasons

We woud have public validation for PR's that the code compiles, and that the unit tests run ok. We could also have a build system push out the new nuget packages, and even enforce code coverage. Ideally I'd like to push out new packages through github tags so that in github you can see what was in each release. As we could include release notes in the github tags.

In HardHat (which is of course a simpler project than this) I use appveyor to push out any nuget packages that are generated, and I only generate when a build is from a github tag This both makes things easy, in terms of making new releases, but also lets everyone clearly see the history of deployments inside of github. There is also 1 common place to read the changes in each release.

Even in my very complicated OwinOauthProviders I do this, and that lets all subscribers of all packages easily view all releases.

latkin commented 7 years ago

That all sounds awesome.

I am happy to help review/facilitate this if it's driven by you or other external contributors, but to be totally transparent our team won't have resources to actively contribute. If that sounds ok then I see no reason not to go for it.

TerribleDev commented 7 years ago

our team won't have resources to actively contribute

I can write, and commit the files to use appveyor. Appveyor just reads a yml file in the repo like travis to perform the build. Without basic collaborator rights to this repo, I won't be able to setup appveyor, but once I commit the files in theory you could set it up. Same with coveralls (code coverage analysis).

The other piece for appveyor is an encrypted nuget api key, which would have to be encrypted inside appveyor. Again a small task you will have to do.

If you don't mind doing those tasks, after I commit the things, in theory everything will work. If you wouldn't have the time to setup appveyor, then the only other way this could get done is if you add me as a contributor (100% up to you of course, contributors get commit rights).

If you can commit to spending a few hours logging into appveyor when I make a PR, I can get this going.

latkin commented 7 years ago

At the very least I'm happy to push some buttons the make the final hookups work. I'm personally also fine with adding you as collaborator, but give me some time to touch base with some other folks first to make sure nobody has objections.

TerribleDev commented 7 years ago

@latkin working on this now, sorry its slow going. Doing about 40% of this on my free time. Also I decided to be bold and to port all the unit tests to core.

latkin commented 7 years ago

No worries, just float a PR when you are ready. audentes Fortuna iuvat.

TerribleDev commented 7 years ago

@latkin would it be ok if my PR came, removing/breaking code coverage analysis? I'll promise to add it back later, but its a bit of a pain to do right now in core land.

latkin commented 7 years ago

@TerribleDev yeah that's ok