CICD: failure to upload is reflected in pipeline status.
pio test
always returns 0 if run with --without-building
and --without-uploading
.
This prevents the pipeline from catching upload failures.
On the contrary, pio run -t upload
returns a meaningful status code; however it must be
run necessarily with -t nobuild
, otherwise Platformio rebuilds the whole project.
Moreover, for pio run -t upload -t nobuild
to correctly "accept" the firmware built in
the previous stage, we have to pass the checksum of the project together with the firmware
files.
[skip hw container] [skip examples]
Edited by Pietro Saccardi