* Copy released JSON to board URL, not new one
Fixes#8180
The draft release generates a ZIP and JSON. Instead of rebuilding the ZIP
on the publish step (which may result in a different SHA256 due to file time
differences in the new ZIP), just copy the one from the published release
directly.
Also clean up and remove unneeded environment variables and CI steps.
* Be more paranoid about JSON format, check after d/l
Fix release packager issue. Seems when variable set in $GITHUB_ENV
quotation marks are not removed, resulting in URLs with
http://ddd.dd/blah/"3.0.1"/release and JSON entries with the same
quotation problem.
* Fix ESP8266SdFat architecture
Avoid problems reported in
https://forum.arduino.cc/index.php?topic=726897.msg4889319
* Fix Windows CI, python3 now *maybe* exists
Python3 used to be called "python.exe" on earlier VMs, but it looks like
the image has been updated and a "python3.exe" does now exist. Update
the CI script to first check it "python3" exists, and if not then do the
copy hack, OTW do nothing.
Thanks to @mcspr. Make sure the cached toolchain is only valid when the
package.json file is identical. Also, add the Arduino IDE to the cache
to avoid re-downloads.
Check that building the eboot.c block generates the same binary as
the verison checked into the repo. Catches the case where a library
or eboot.c file is changed, but an updated eboot.elf isn't included
in a PR.
Can't do simple binary diff of the ELFs because paths and compile
times will change, so dump the two sections we care about.
Convert the continuous integration process to use GitHub's internal
CI cloud. Allows us to run up to 20 jobs in parallel, speeding up
CI immensely. Keep a short Travis-CI run, too, just for sanity and backup.
Uses new keys and secret when publishing a release to
esp8266.github.io.