ole-vi / BeLL-Apps

This is the third iteration of the BeLL software. It's a Backbone.js app that caches itself in the browser that is backed by CouchDB when a server is available and PouchDB in the browser when a server is not available. Initial support for PDFs is currently implemented, support for Videos and single HTML5 Apps coming next. Tracking bugs and new features in the Wiki at the moment.
1 stars 12 forks source link

Improve Travis CI build stability #84

Open waryhermit opened 7 years ago

waryhermit commented 7 years ago

We have had a streak of Travis CI build errors, must of which have not been code issues but configuration and dependency issues.

waryhermit commented 7 years ago

Might also want to make some of the script tests @dogi made to be allowed to fail: https://docs.travis-ci.com/user/customizing-the-build#Rows-that-are-Allowed-to-Fail

dogi commented 7 years ago

@waryhermit awesome - lets do this

waryhermit commented 7 years ago

Yarn doesn't intend to replace npm, more like improving on it. It uses the same package.json file, and saves dependencies to the node_modules/ folder. You can read about some of the benefits of yarn here. The two features I think will make the most difference for us are:

To start the process of switching to yarns method of resolving dependencies I made sure all our packages were listed in package.json, deleted the node_modules folder and then ran yarn to rebuild the node_modules in the yarn way.

In order obtain the benefits of yarn, everyone adding dependencies should use yarn. They can still use npm - but then we will still be in the same situation as before. Nothing will break, but we will have the same problems we have right now.

There are a zillion ways of installing yarn. The commands are almost exactly the same as npm, see Migrating from npm. Adding node_modules to .gitignore will help keep our pull requests clean.

As far as deployments go - all that should need to be done is include the node_modules in the .zip and installer .exe. For the inno installer, that should be as simple as running a few yarn commands during the build script and making sure the node_modules folder is listed in the folders to include. I imagine it would be the same for the legacy deployment script.

Do you want me to make pull requests to update to build scripts before this pull request is merged with ole-BeLL-Apps ?

waryhermit commented 7 years ago

Putting all yarn stuff on hold for now since @dogi does not feel this is a good time.

waryhermit commented 7 years ago

I am 3/4 of the way through converting all the python tests to js and adding retries.