This post is part of a series
- 1/3 PlatfomIO overview & compiling + uploading locally and on a Raspberry Pi
- 2/3: Continuous testing and auto release binary generation using PlatformIO & TravisCI
- Related post: EmonESP ESP8266 WiFi developments
- 3/3: Continuous Deployment (OTA to ESP8266)
Following on from my last couple of posts in this series we now have a working continuous cloud-based build & test (firmware compiling) flow using PlatformIO and TravisCI, to quickly recap:
- Code change is committed to the EmonESP repo on GitHub
- TravisCI triggers a build (compile) using PlatformIO running in a TravisCI container in the cloud.
- If build/compilation process fails we get an email alert, if pull-request we get a warning before merging if proposed changes break the build.
- If a Git commit is tagged as a release the build process uploads the generated compiled binary (.bin) to the repo GitHub release page.
The next step is to get the compiled binary from GitHub-releases (EmonESP in this example) deployed to a WiFi connected production ESP8266. Here’s the user facing EmonESP web-interface for this firmware update process:
Read on →