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

Continuous Integration Support #1

Open
acmol opened this issue Nov 14, 2017 · 4 comments
Open

Continuous Integration Support #1

acmol opened this issue Nov 14, 2017 · 4 comments

Comments

@acmol
Copy link
Collaborator

acmol commented Nov 14, 2017

Continuous integration is required for bigflow, and we should have a system to support continuos integration.

Maybe we can use travis-ci.org, or teamcity, or we can set up a jenkins at BCC (Baidu Cloud Compute)?

@advancedxy
Copy link
Collaborator

I think we can have both...

TeamCity(https://www.jetbrains.com/teamcity/) is free for a small project.
The professional server license(which is free) supports up to:

  1. 20 build configurations
  2. full access to all product features
  3. support via forum and issue tracker
  4. 3 build agents

which should be sufficient for the development of bigflow.

TeamCity also works nicely with IDEs came from JetBrains.

The only downside is that we have to run teamcity somewhere and requires operating.

@acmol
Copy link
Collaborator Author

acmol commented Nov 27, 2017

I've already set travis-ci up, and it works just fine.

With the help of the travis-ci, now we can run our ci job at every commit on master & every pull request. If any code committed to the master, github pages will be generated to this page, and a release file will be uploaded to here.

But at this moment, there are 3 more things to do:

  1. A spark cluster is required to daily run the ci-test on spark.
  2. The job should be faster by refining the build with caches.
  3. A quicker job to build documents is required. If there is no big change, the docs should be built in a few minutes, not about one hour.

@acmol
Copy link
Collaborator Author

acmol commented Nov 27, 2017

I was so naive...
travis-ci.org's limitation of timeout is 50min, while travis-ci.com's limitation is 120min.

On travis-ci.com, the ci tests ran perfect in about one hour, but now on travis-ci.org it just ... not work.

So speeding up the build becomes more important than before.

@LifeIsStrange
Copy link

Well you could use https://en.m.wikipedia.org/wiki/Ccache for massively speeding up the builds, or the mozilla fork (which support rust too) https://github.com/mozilla/sscache.
You could also in complement, use the meson build system : http://mesonbuild.com/

Also, HS : it's a nice to have (for security and stability reason) feature : https://github.com/Microsoft/checkedc
Even if using Rust code would still be the best way.

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

No branches or pull requests

3 participants