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

Enable CI/CD #74

Closed
nbarbettini opened this issue Mar 28, 2017 · 9 comments
Closed

Enable CI/CD #74

nbarbettini opened this issue Mar 28, 2017 · 9 comments
Assignees
Labels

Comments

@nbarbettini
Copy link
Contributor

It should be pretty easy to use travis-ci or AppVeyor to build this repo when code is checked in. Additionally, the CI script could produce the nupkg file automatically and push it somewhere like MyGet.

I've set this up before, so I'm happy to assist if you want to do this.

@abatishchev
Copy link
Member

Would greatly​appreciate your help here. I'm familiar with TFS/VSO/TeamCity but never actually touched modern popular web-based systems such as those two.
Please configure them. I'll give the necessary permissions if needed, here or/and on NuGet.

@nbarbettini
Copy link
Contributor Author

👍 I can work on this. Can you add me as a collaborator on the project?

@abatishchev
Copy link
Member

I'm not the owner too, don't have the permission but asked to add your in #47

@abatishchev
Copy link
Member

Hey Nate, did you have a chance to get any progress, or at least thoughts, on this?

@nbarbettini
Copy link
Contributor Author

Sorry, I got busy over the weekend and didn't have a chance to look at it. I can work on it this week.

Here's what I've done in the past, let me know if this workflow sounds good:

  • Write a build script using cake that can build and test the project, and produce a nuget package. (This isn't 100% necessary, but it's nice to be able to have your CI tool call a single script)

  • Enable the project in AppVeyor, and configure the AppVeyor build settings to run the cake script.

  • Depending on whether you want to, AppVeyor can also be configured to automatically push packages to MyGet or NuGet. This way it's really easy to publish prerelease (or even stable) packages once you know all the tests pass.

@nbarbettini nbarbettini self-assigned this Apr 3, 2017
@nbarbettini
Copy link
Contributor Author

Also, we should merge #72 first because the build scripts will be different after that PR.

@abatishchev
Copy link
Member

Sure, no problem at all, glad you're still here/ interested :)

I don't have any preferences for the framework to write the build script for, whether it's cake, fake, or paket. Up to you and your experience.
I think perfect start would be to have a gated build that runs​ tests for every pull request. And then as a phase two, one click publish to NuGet.
Makes sense? What do you think?

@nbarbettini
Copy link
Contributor Author

I think perfect start would be to have a gated build that runs​ tests for every pull request. And then as a phase two, one click publish to NuGet.
Makes sense? What do you think?

Sounds good! 👍

@abatishchev abatishchev modified the milestone: 2.0 Apr 3, 2017
@nbarbettini nbarbettini modified the milestones: 3.0, 2.0 Apr 14, 2017
@nbarbettini
Copy link
Contributor Author

Sorry for the long delay, it's been a busy week.

I made some progress on this, but I am going to wait until after #72 is merged as it requires a lot of changes to the cake build script. Easier to do it all at once.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Development

No branches or pull requests

2 participants