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

Setup automated build on GitHub #200

Open
ppodgorsek opened this issue Aug 7, 2017 · 3 comments
Open

Setup automated build on GitHub #200

ppodgorsek opened this issue Aug 7, 2017 · 3 comments

Comments

@ppodgorsek
Copy link
Contributor

ppodgorsek commented Aug 7, 2017

Strangely enough, no automated build has been set up for this project. This would allow to perform a first check of all pull requests before a manual review is done.
CodeShip could be a good option, as it allows 100 free builds per months, which should be more than enough for this project.

This depends on PR #199, as it contains the dependency version fix required for automated builds.

@ppodgorsek
Copy link
Contributor Author

If using CodeShip:

  • Install the CodeShip service by going to the project's settings in GitHub > Integration & services > Add service

  • The following commands should be used to setup the project:

      jdk_switcher home oraclejdk8
      jdk_switcher use oraclejdk8
      mvn clean
    
  • The following command should be used to run the tests: (will compile at the same time)

      mvn -B test
    

A branch protection for master must also be defined:

  • Go to the project's settings in GitHub > Branches > Choose a branch > master
  • The following boxes must be checked:
    • Protect this branch
    • Require pull request reviews before merging
    • Require status checks to pass before merging
    • Require branches to be up to date before merging
    • CodeShip required
    • Include administrators

@alexBraidwood
Copy link
Contributor

alexBraidwood commented Aug 31, 2017

This is great idea and I'll definitely look into getting this set up. I might need to get a hold of the repository owner to put this together, though.

I did have another thought, however: What do you think about dogfooding this project with Bitbucket and Jenkins? I wouldn't mind reaching out to Atlassian for a freebie server license.

@ppodgorsek
Copy link
Contributor Author

Having a Bitbucket + Jenkins setup would be great for integration tests.

Nevertheless, I don't think we should use that setup for continuous integration, as our build would be dependent on the code we are actually maintaining (circular loop). The latest major BitBucket release is a good example, as the plugin was not working with that version but we would have needed the plugin to approve any pull request to fix the issue.

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

2 participants