@@ -22,12 +22,14 @@ jobs:
2222 matrix :
2323 # idf_ver: ["latest", "release-v5.1", "release-v5.0", "v5.0.1", "v5.0"]
2424 # idf_ver: ["release-v5.0", "v5.0.1", "v5.0", "release-v4.4", "v4.4.4", "v3.3.4"]
25- idf_ver : ["latest", "release-v5.1", "release-v5.0", "v5.0.1", "v5.0", "release-v4.4", "v3.3.4"]
25+ # idf_ver: ["latest", "release-v5.1", "release-v5.0", "v5.0.1", "v5.0", "release-v4.4", "v3.3.4"]
26+ idf_ver : ["release-v5.0", "v5.0.2", "v5.0.1", "v5.0", "release-v4.4", "v3.3.4"] # v3.3.4 is our own fork / special handling
2627 idf_target : ["esp32"]
28+ mongoose_ver : ["6.11"] # 6.11 is our own fork / special handling
2729 include :
2830
2931 # All the following items are 'default' values for ALL the matrix entries
30- - patch_mongoose : true
32+ - patch_mongoose_6_11 : true
3133 build_command : " idf.py build"
3234 sdkconfig : " sdkconfig.defaults.esp5.0.1"
3335 patch_esp_idf_ovms : false
@@ -44,18 +46,18 @@ jobs:
4446
4547 # - idf_ver: "v4.4.4"
4648 # sdkconfig: "sdkconfig.defaults.esp4"
47- # patch_mongoose : false
49+ # patch_mongoose_6_11 : false
4850 # patch_esp_idf_whole_archive: true
4951
5052 # - idf_ver: "v3.3.6"
5153 # build_command: "make -j all"
52- # patch_mongoose : false
54+ # patch_mongoose_6_11 : false
5355 # force_wolfssl_470: true
5456
5557 - idf_ver : " v3.3.4"
5658 build_command : " TERM=vt100 make defconfig all"
5759 sdkconfig : " sdkconfig.defaults.esp3"
58- patch_mongoose : false
60+ patch_mongoose_6_11 : false
5961 patch_esp_idf_ovms : true
6062 # force_wolfssl_470: false
6163
@@ -118,9 +120,24 @@ jobs:
118120
119121 # For ESP-IDF v5+ builds, we need to patch our "old" version of mongoose
120122 - name : ' Patch mongoose (ESP-IDF v5+)'
121- if : matrix.patch_mongoose
123+ if : |
124+ matrix.patch_mongoose_6_11 &&
125+ (matrix.mongoose_ver == '6.11')
122126 run : ' git apply --directory="vehicle/OVMS.V3/components/mongoose/mongoose" "vehicle/OVMS.V3/support/mongoose-espv5.patch"'
123127
128+ # For Mongose >= 7, we checkout this specific version
129+ - name : ' Switch mongoose dir'
130+ if : |
131+ (matrix.mongoose_ver != '6.11')
132+ run : |
133+ cd "vehicle/OVMS.V3/components/mongoose/mongoose"
134+ git remote set-url origin "https://github.com/cesanta/mongoose.git"
135+ git fetch --all
136+ git reset --hard
137+ git clean -fxd
138+ git checkout "${{ matrix.mongoose_ver }}"
139+ cd -
140+
124141 # For older builds (3.3.x), we need to switch back to the (official) wolfssl version that
125142 # was used in those builds + patch it and update the build system
126143 # - name: 'Patch WolfSSL (ESP-IDF v3) with OVMS tweaks'
@@ -137,14 +154,20 @@ jobs:
137154 - name : ' Setup configuration'
138155 run : ' cp "vehicle/OVMS.V3/support/${{ matrix.sdkconfig }}" "vehicle/OVMS.V3/sdkconfig.defaults"'
139156
157+ - name : ' Patch configuration for Mongoose 6.11 (SSL cannot compile)'
158+ if : |
159+ matrix.patch_mongoose_6_11 &&
160+ (matrix.mongoose_ver == '6.11')
161+ run : ' sed -i -e "s/CONFIG_MG_ENABLE_SSL=y/#CONFIG_MG_ENABLE_SSL=/g" "vehicle/OVMS.V3/sdkconfig.defaults"'
162+
140163 - name : Cache build dependencies
141164 id : esp-idf-build
142165 uses : actions/cache@v3
143166 with :
144167 path : |
145168 vehicle/OVMS.V3/build
146169 vehicle/OVMS.V3/sdkconfig
147- key : build-${{ runner.os }}-${{ matrix.idf_target }}_esp-idf-${{ matrix.idf_ver }}
170+ key : build-${{ runner.os }}-${{ matrix.idf_target }}_esp-idf-${{ matrix.idf_ver }}_mg-${{ matrix.mongoose_ver }}
148171
149172 # Now, we can build it. Let's not forget to install `dos2unix` first as it is needed.
150173 - name : ' Build project with IDF-${{ matrix.idf_ver }} for ${{ matrix.idf_target }}'
@@ -165,7 +188,7 @@ jobs:
165188 - name : ' Archive build output artifacts'
166189 uses : ' actions/upload-artifact@v3'
167190 with :
168- name : ' ${{ matrix.idf_target }}_esp-idf-${{ matrix.idf_ver }}'
191+ name : ' ${{ matrix.idf_target }}_esp-idf-${{ matrix.idf_ver }}_mongoose-${{ matrix.mongoose_ver }} '
169192 path : |
170193 vehicle/OVMS.V3/build/bootloader/bootloader.bin
171194 vehicle/OVMS.V3/build/partition_table/partition-table.bin
0 commit comments