Closed ianfixes closed 3 years ago
I was going to wait to see whether the tests passed 😉
The remaining error looks like a problem with the platform definition.
Discovered example sketch... GoldilocksAnalogueTestSuite.ino
Requested library example platform 'Goldilocks Analogue' is defined in 'platforms' YML... ✓
Configured platforms that match architectures in library.properties...
Goldilocks Analogue
...Configured platforms that match architectures in library.properties
Installing dependency of <compile/libraries>: 'AVR Standard C Time Library'... ✓
Installing dependency of <compile/libraries>: 'Goldilocks Analogue DAC Library'... ✓
Installing dependency of <compile/libraries>: 'Goldilocks Analogue SPI RAM Library'... ✓
Compiling GoldilocksAnalogueTestSuite.ino for Goldilocks:avr:"Goldilocks Analogue"...
Last command: $ /usr/local/bin/arduino-cli --format json compile --fqbn Goldilocks:avr:"Goldilocks Analogue" --warnings all --dry-run /github/home/Arduino/libraries/FreeRTOS/examples/GoldilocksAnalogueTestSuite/GoldilocksAnalogueTestSuite.ino
Error during build: platform not installed
✗
I'm not familiar enough with that architecture to say what the fix should be.
Just one failure now, related to the special platform "Goldilocks Analogue". All the libraries seem to be properly installed for the build, which is great!
So, somehow I've not got the language to get the variant files for Goldilocks Analogue properly installed. This is standard AVR platform, but just an additional variant file.
My attempt to get it right is here... thoughts?
Perhaps it needs to say below instead?
package: Goldilocks:avr
My first thought was that it was a problem in the string quoting of Goldilocks:avr:"Goldilocks Analogue"
but I'm wondering if I'm even attempting to install a platform if it's first defined in an example dir. I'm checking that now.
The answer is in the board name
$ arduino-cli board listall | grep -i goldilocks
Goldilocks 20MHz Goldilocks:avr:goldilocks_20MHz
Goldilocks 22.1184MHz Goldilocks:avr:goldilocks_22MHz
Goldilocks Analogue Goldilocks:avr:goldilocks_analogue
- board: Goldilocks:avr:"Goldilocks Analogue"
+ board: Goldilocks:avr:goldilocks_analogue
Perfect (nearly, just needed to add the SD library).
But, TBH, I've no idea why the board is referred to as goldilocks_analogue
. I don't have a definition like that anywhere AFAIK???
Anyway. Fixed and green tick. :heavy_check_mark:
I couldn't say how any of the internals work; my knowledge of architectures/platforms/boards extends only as far as knowing what strings to send to the arduino-cli
executable that I use as a backend.
Thanks for helping me find a few ways to improve this!
The
EXPECT_*
environment variables are felt by the program as eithernil
or non-nil, which means that bothtrue
andfalse
in the action config will evaluate to non-empty strings.... effectivelytrue
. This had the effect of expecting unit tests when none should be expected.