IstoraMandiri / spectrum

💠 Full Gamut Ethereum Lightsuite
BSD 3-Clause "New" or "Revised" License
58 stars 14 forks source link

Travis CI, Coveralls and Sauce Labs #52

Closed nunohora closed 7 years ago

nunohora commented 7 years ago

By making a contribution to this project, I certify that the contributions I make to this project are created in whole by me and I have the right to submit it under the BSD-3-Clause license; OR the contribution is based upon previous work that, to the best of my knowledge, is covered under an appropriate open source license and I have the right under that license to submit that work with modifications, whether created in whole or in part by me, under the BSD-3-Clause license. I understand and agree that this project and the contribution are public and that a record of the contribution (including all personal information I submit with it) is maintained indefinitely and may be redistributed consistent with this project or the open source license(s) involved.

This PR implements Travis CI and Coveralls, as well as Selenium test automation with SauceLabs. You can check that those services are working in my fork:

Created npm test:ci task and sub tasks to run in the travis build, which runs jest with coverage flag and runs cucumber with a new wdio.ci.config.js file, which enables the sauce labs features.

Created npm serve task that fires up a web server so we can run localhost in the travis build and enable selenium tests.

You'll need to create your own Travis, Coveralls and Sauce Labs account in order to make this all work in your repo. The added badges in the README file will have to be modified to point to your repo. Also, in your Travis account you'll need to define the SAUCE_USERNAME and SAUCE_ACCESS_KEY environment variables that are required in the wdio.ci.config.js file.

Regarding Greenkeeper, I think the only thing needed is to install the app in github integrations in the repo settings.

I modified the .gitignore file to include the most common autogenerated files that shouldn't be included in the repo.

I struggled to make node 8+ work with Travis, so I downgraded to node 7 instead. I couldn't find any issues with 7, but maybe this is something you don't want to do.

IstoraMandiri commented 7 years ago

Awesome, thanks for this @nunohora !

I will review this today and get back to you.

30

nunohora commented 7 years ago

I found a couple of issues with the updated selenium tests in the meantime, so the build should fail. I can have a look later.

On 10 Jul 2017 5:59 am, "Chris Hitchcott" notifications@github.com wrote:

Awesome, thanks for this @nunohora https://github.com/nunohora !

I will review this today and get back to you.

30 https://github.com/spectrum/spectrum/issues/30

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/spectrum/spectrum/pull/52#issuecomment-314005135, or mute the thread https://github.com/notifications/unsubscribe-auth/AAPUsRrMHbMcuuGmaDZ6CPPG8CCRSNYJks5sMa_LgaJpZM4OSHcp .

IstoraMandiri commented 7 years ago

Great work, I'll continue those integrations from here.

Before I can accept this PR, please can you copy and paste the CLA from:

https://github.com/spectrum/spectrum/wiki/Contribution-Guide#contributors-license-agreement

Also, please post your ETH address to receive the bounty. Once I have confirmed the integration, those DGDs will on their way to you. Thanks.

IstoraMandiri commented 7 years ago

The issue with failing tests is because of an assumption that the test runs in dev mode. I can fix this, No action needed. Thanks

nunohora commented 7 years ago

0xf9e3622CEa863Dc2E8a5607bA49f0B2Dd4ba310f

Thanks! 💯 🍾

IstoraMandiri commented 7 years ago

@nunohora

Sent https://etherscan.io/tx/0xcc5138d700f670eda20ec1e224a7aa69205667971245da96e082ee539b75043d

Thank you!