I’m attempting to set up a continuous-integration infrastructure that, among other things:
- locally (not cloud) cross-compiles an app for the Photon and deploys it to a test Photon
- automatically performs certain tests over the web against the test Photon running the app
- compiles parts of the same app for x86_64 and links it with cppunit tests for automated unit testing on the host
- and eventually even pulls in some cloud functionality into an end-to-end test
- all tied together in Jenkins, automatically triggered by git commits.
- has anybody ever done such a thing, and lived to tell the tale? If so, where did you tell the tale and is there a recording that you could share with me?
- are there any recommendations for how to go about understanding how the Particle firmware & app build actually works (tons of directories! tons of makefile fragments! app builds defined as a “subroutine” of the firmware build! oh my!) Is there any documentation about how it actually works, rather than just how to invoke it?
- any recommendations for how to repeatably invoke Particle app builds from Jenkins, and manage firmware version/build/… dependencies?
- anybody attempted to refactor the app build in a way that it boils down to something more manageable like “gcc -o firmware *.cpp -lparticle-photon” or such?