MyHush / hush

Hush is a fork of Zcash focused on secure communications
https://myhush.org
Other
67 stars 37 forks source link

Continuous Integration #36

Closed leto closed 7 years ago

leto commented 7 years ago

Describe the issue

Hush does not have CI.

Can you reliably reproduce the issue?

Yup

If so, please list the steps to reproduce below:

  1. Observe
  2. No CI
  3. Exists

Expected behaviour

Continuously integrated goodness

Actual behaviour + errors

No way to tell if a commit breaks the build!!!

The version of Hush you were using:

All

radix42 commented 7 years ago

500 HUSH bounty to get CI building master and dev branches on Debian 8. 200 HUSH additional for cross compiled Windows branch. Mac will be a PITA because of the need for a macOS worker.

WaveringAna commented 7 years ago

I have one running for zen that would be extremely easy to port over https://github.com/ZencashOfficial/zen/pull/64

WaveringAna commented 7 years ago

https://github.com/zencashofficial/botio

WaveringAna commented 7 years ago

Wine likes to freeze when running *-gtest.exe so that may be a problem

WaveringAna commented 7 years ago

Plus does it have to be Debian? I can never get cross-compiling done on Stretch/Jessie. Only on Xenial

radix42 commented 7 years ago

The mingw64 threading library on Ubuntu is busted.....things build, but some software, such as zcash and hush and other forks, just spin a CPU at 100% in Windows when you run them. I need to get better pre-requisites and instructions up, but all my Windows cross compiles and dev are done on Jessie. So its not Jessie that's is busted, but prolly a missing dep.

On Thu, Sep 21, 2017 at 12:46 PM, Procrastinator notifications@github.com wrote:

Plus does it have to be Debian? I can never get cross-compiling done on Stretch/Jessie. Only on Xenial

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/MyHush/hush/issues/36#issuecomment-331261764, or mute the thread https://github.com/notifications/unsubscribe-auth/AF9e0AjqxGJ2z_T2UlMikUwFBOzHG8Zaks5skr0fgaJpZM4Pfoij .

lludlow commented 7 years ago

Is this bounty for a hosted solution? or just providing the means to the CI?

leto commented 7 years ago

Either me or @radix42 can host this on AWS. We need the code and devops config that works to David's spec

WaveringAna commented 7 years ago

I'm not sure how you guys do windows but its pretty easy to setup with botio since it just runs shell commands https://github.com/aayanl/botio-hush

radix42 commented 7 years ago

it is cross compiled with zcutil/build-win.sh I see I have under-specified things, my bad, I'll whip up some better acceptance criteria

leto commented 7 years ago

@radix42 I think @madbuda deserves to get 500HUSH for getting this far:

https://build.madbuda.me/

There are Linux and Windows builds on every commit, and know we need your dark, dark magic to build the Mac version.

lludlow commented 7 years ago

@radix42 @leto https://build.madbuda.me/ windows and linux builds, will add pipelines to build pr's

@leto I think it was 500 hush for CI plus 200 hush for the windows part

leto commented 7 years ago

@madbuda if it's complex, i am pretty sure @radix42 will add more bounty if you can have jenkins comment on PR's directly on Github, about the build/fail status. i see that in a lot of big open source projects and it is hella useful

lludlow commented 7 years ago

no, I just haven't done it yet.

The mac build will be more complex since I need to build an osx VM, setup xcode, and sign the .app

jenkins-hush commented 7 years ago

CI test2

lludlow commented 7 years ago

@leto @radix42 Jenkins sets build status on the PR plus will add build status to an issues that is tied tot he PR added nightly build for dev branch that keeps the last 5 build artifacts

Didn't want to trigger a build on every commit yet, but seeing that most changes would be a PR this should cover most of it. We can always manually trigger a build if we make changes in dev directly

Also, since adding in PR integration we now have a build status for every PR

leto commented 7 years ago

@madbuda works for me. This is awesome!!!! :very_happy:

leto commented 7 years ago

@madbuda @radix42 calling this done, let's make new bounties for further CI improvements

lludlow commented 7 years ago

Bounties for CI improvements would require outside access to our CI, perhaps we work on this internally

leto commented 7 years ago

Yeah, didn't think of that. This is mostly be done by hush core folks