@@ -44,70 +44,35 @@ jobs:
4444 echo "DEBUG_LEVEL=debug" >> "$GITHUB_ENV"
4545 fi
4646
47- - name : Setup Arduino CLI
48- uses : arduino/setup-arduino-cli@v1
49-
50- - name : Start config file
51- run : arduino-cli config init --additional-urls "https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json,https://espressif.github.io/arduino-esp32/package_esp32_dev_index.json"
52-
53- - name : Update core index
54- run : arduino-cli core update-index
55-
56- - name : Update library index
57- run : arduino-cli lib update-index
58-
59- - name : Install platform
60- run : arduino-cli core install esp32:esp32@${{ env.CORE_VERSION }}
61-
62- - name : Get IDF version
47+ - name : Run Dockerfile and copy files
6348 run : |
64- cd /home/runner/.arduino15/packages/esp32/tools/esp32-arduino-libs
65- IDF_VERSION=$(ls | grep idf-release)
66- echo "ESP_IDF=${IDF_VERSION}" >> "$GITHUB_ENV"
67-
68- - name : Get Known Libraries
69- run : arduino-cli lib install
70- 71- 72- " SparkFun Qwiic OLED Arduino Library" @1.0.13
73- " SparkFun Toolkit" @0.9.2
74- # "SparkFun SiT5358 DCTCXO Arduino Library"@1.0.0
75- # "SparkFun SiT5811 OCXO Arduino Library"@1.0.0
76- # "SparkFun STP3593LF OCXO Arduino Library"@1.0.0
77-
78- - name : Enable external libs
79- run : arduino-cli config set library.enable_unsafe_install true
80-
81- - name : Get Libraries
82- run : arduino-cli lib install --git-url
83- https://github.com/sparkfun/SparkFun_SiT5358_DCTCXO_Arduino_Library.git
84- https://github.com/sparkfun/SparkFun_SiT5811_OCXO_Arduino_Library.git
85- https://github.com/sparkfun/SparkFun_STP3593LF_OCXO_Arduino_Library.git
86-
87- - name : Copy custom app3M_fat9M_16MB.csv
88- run :
89- cp Firmware/app3M_fat9M_16MB.csv /home/runner/.arduino15/packages/esp32/hardware/esp32/${{ env.CORE_VERSION }}/tools/partitions/app3M_fat9M_16MB.csv
90-
91- - name : Compile Sketch
92- run : arduino-cli compile --fqbn "esp32:esp32:esp32":DebugLevel=${{ env.DEBUG_LEVEL }} ./Firmware/GNSSDO_Firmware/GNSSDO_Firmware.ino
93- --build-property build.partitions=app3M_fat9M_16MB
94- --build-property upload.maximum_size=3145728
95- --build-property "compiler.cpp.extra_flags=-MMD -c \"-DFIRMWARE_VERSION_MAJOR=$FIRMWARE_VERSION_MAJOR\" \"-DFIRMWARE_VERSION_MINOR=$FIRMWARE_VERSION_MINOR\""
96- --export-binaries
49+ cd ./Firmware
50+ docker build -t gnssdo_firmware --no-cache \
51+ --build-arg CORE_VERSION=${{ env.CORE_VERSION }} \
52+ --build-arg FIRMWARE_VERSION_MAJOR=${{ env.FIRMWARE_VERSION_MAJOR }} \
53+ --build-arg FIRMWARE_VERSION_MINOR=${{ env.FIRMWARE_VERSION_MINOR }} \
54+ --build-arg DEBUG_LEVEL=${{ env.DEBUG_LEVEL }} \
55+ .
56+ docker create --name=gnssdo_image gnssdo_firmware:latest
57+ mkdir ./build
58+ docker cp gnssdo_image:/GNSSDO_Firmware.ino.bin ./build
59+ docker cp gnssdo_image:/GNSSDO_Firmware.ino.elf ./build
60+ docker container rm gnssdo_image
9761
9862 - name : Create artifact name
9963 run : |
10064 echo "ARTIFACT=${{ env.FILENAME_PREFIX }}${{ env.FILE_ENDING_UNDERSCORE }}" >> $GITHUB_ENV
10165
10266 - name : Create artifact directory
10367 run : |
104- cd Firmware/GNSSDO_Firmware/ build/esp32.esp32.esp32 /
68+ cd ./ Firmware/build/
10569 mkdir ${{ env.ARTIFACT }}
10670 mv GNSSDO_Firmware.ino.bin ${{ env.ARTIFACT }}
71+ mv GNSSDO_Firmware.ino.elf ${{ env.ARTIFACT }}
10772
10873 - name : Upload artifact directory to action - avoid double-zip
10974 uses : actions/upload-artifact@v4
11075 with :
11176 name : ${{ env.ARTIFACT }}
112- path : Firmware/GNSSDO_Firmware/ build/esp32.esp32.esp32 /${{ env.ARTIFACT }}
77+ path : ./ Firmware/build/${{ env.ARTIFACT }}
11378 retention-days : 7
0 commit comments