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

Add Continuous Integration #56

Closed
12 tasks
Baklap4 opened this issue Jul 12, 2018 · 11 comments
Closed
12 tasks

Add Continuous Integration #56

Baklap4 opened this issue Jul 12, 2018 · 11 comments

Comments

@Baklap4
Copy link
Contributor

Baklap4 commented Jul 12, 2018

Do you want to request a feature or report a bug?

Feature

What did you expect to see?

Currently there's no Continuous integration. In other words this means we have to run the unit tests ourselves, check style coding etc, check if it builds. I bet we don't want that. We'd love to see this repetitive stuff to be automated as much as possible. Here comes CI around the corner.

Expectations

The CI should be able to do:

  • Be triggered upon a push (commit or tags)
  • Restore dependency packages
    • Run the command dotnet restore --packages SOME/LOCATION in the same folder as where the sln file is.
  • Cache the dependencies so our buildtime will decrease
    • Run the previous command with the cached packages when the pipeline builds a second time.
  • Build the project
    • Windows
    • Linux
    • OSx
  • Run tests
    • Windows
    • Linux
    • OSx
  • Once every night run a nightly build.

If the CI meets these expectations AND the push is a tag/release CD will pop up to release a new version. see #57

@Baklap4 Baklap4 mentioned this issue Jul 12, 2018
6 tasks
@Baklap4
Copy link
Contributor Author

Baklap4 commented Jul 12, 2018

@loic-sharma i'd love to set this up with travis-ci, however i'd need access to the webhook area of this github page

@loic-sharma
Copy link
Owner

loic-sharma commented Jul 12, 2018

I was planning on onboarding to VSTS Pipelines once it's released. AFAIK there's no public information about VSTS Pipelines yet, so I won't say too much. Some of Microsoft's .NET projects like Kestrel are already using it.

What were you thinking of using for CI?

@Baklap4
Copy link
Contributor Author

Baklap4 commented Jul 12, 2018

Hmm personally i'm not a big fan of VSTS, since it was so hard to configure (1 year ago) and let it do what it should be doing. Let be creating a docker image or such.. therefore I moved to gitlab which was way easier. Here on Github most of the people do use travis or jenkins to do what they want

@WernerMairl
Copy link
Contributor

I have my own CI Build System here (Jenkins, Docker, implemented in pwsh on Linux)

I like the idea to define/implement a few basic entry points and scripts that can be used from multiple
CI-Systems.....

to avoid deep/hard dependencies into ONE CI-Build system, so we are open for

  • VSTS (Pipeline or Classic)
  • travis et. al
  • custom/on premise systems

that may by a litle bit more of work, but it should bring back a lot of learnings in this area!

what you think about that ?

@loic-sharma
Copy link
Owner

loic-sharma commented Jul 23, 2018

Added Travis CI as part of a4ddace. Feel free to open more issues if you have more ideas! 😄

@loic-sharma
Copy link
Owner

Reopening this. The current set up doesn't run unit tests.

@loic-sharma loic-sharma reopened this Jul 23, 2018
@loic-sharma
Copy link
Owner

Travis will now run the tests as part of the build. Closing this again. Apologies for the noise!

@kirkone
Copy link

kirkone commented Nov 4, 2018

Hi,

Azure DevOps Pipelines are available now and free to use for open source projects. I think it is worth to give it a try.
What do you think?

Greetings,
KirK

@loic-sharma
Copy link
Owner

loic-sharma commented Nov 4, 2018

@kirkone Yup, I'm working on this. See: https://sharml.visualstudio.com/BaGet 😄

@kirkone
Copy link

kirkone commented Nov 5, 2018

@loic-sharma if I can provide any help please let me know.
Maybe .yaml files are a good starting point.

@loic-sharma
Copy link
Owner

I’ve created an Azure Pipelines YAML file here: https://github.com/loic-sharma/BaGet/blob/master/.azure/pipelines/ci-official.yml

Please let me know if you have any suggestions. I’ll add GitHub release mechanisms in the future.

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

No branches or pull requests

4 participants