<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class=""><div class=""><br class=""></div><div class="">My directory structure for firmware releases on <a href="http://api.openvehicles.com" class="">api.openvehicles.com</a>:</div><div class=""><br class=""></div><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><div class="">/firmware/ota</div></blockquote><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><div class="">v3.0</div></blockquote></blockquote><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><div class="">main</div></blockquote></blockquote></blockquote><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><div class="">v3.1</div></blockquote></blockquote><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><div style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0);" class="">edge</div><div style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0);" class="">pre -> eap</div><div class="">eap</div><div class="">main</div></blockquote></blockquote></blockquote><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><div class="">v3.2 -> v3.1</div><div class="">v3.3</div></blockquote></blockquote><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><font color="#000000" class="">edge -> ……/firmware/ota/v3.1/edge</font></blockquote><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><span style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0);" class="">pre -> </span><span style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0);" class="">……/</span><span style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0);" class="">firmware/ota/v3.1/pre</span><div class="">eap</div><div class="">main</div></blockquote></blockquote></blockquote><div class=""><br class=""></div><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><div class="">I build v3.1/edge automatically each night.</div></blockquote><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><div class=""><div class=""><br class=""></div><div class="">cd $IDF_PATH</div><div class="">git config pull.rebase false</div><div class="">git pull</div><div class="">git submodule init</div><div class="">git submodule update</div></div><div class=""><br class=""></div><div class=""><div class="">cd $OVMS_TREE</div><div class="">git config pull.rebase false</div><div class="">git fetch --tags</div><div class="">git pull</div><div class="">git submodule init</div><div class="">git submodule update</div></div><div class=""><br class=""></div><div class=""><div class="">cd $OVMS_PATH</div><div class="">make defconfig</div></div><div class=""><br class=""></div><div class=""><div class="">make size >$INFO_PATH</div><div class="">echo >>$INFO_PATH</div><div class="">git log --graph --decorate --pretty=oneline --abbrev-commit --all -n 10 >>$INFO_PATH</div></div><div class=""><br class=""></div><div class=""><div class="">cp build/ovms3.bin $REL_PATH/${REV_NEW}.ovms3.bin</div><div class="">cp build/ovms3.elf $REL_PATH/${REV_NEW}.ovms3.elf</div><div class="">echo $REV_NEW >${REL_PATH}/ovms3.new</div><div class="">echo `/usr/bin/date -u` "Automated build ($HOSTNAME)" >>${REL_PATH}/ovms3.new</div><div class="">echo >>${REL_PATH}/ovms3.new</div><div class="">cat $INFO_PATH >>${REL_PATH}/ovms3.new</div><div class="">rm -f ${REL_PATH}/ovms3.bin</div><div class="">ln -s ${REL_PATH}/${REV_NEW}.ovms3.bin ${REL_PATH}/ovms3.bin</div><div class="">rm -f ${REL_PATH}/ovms3.elf</div><div class="">ln -s ${REL_PATH}/${REV_NEW}.ovms3.elf ${REL_PATH}/ovms3.elf</div><div class="">mv ${REL_PATH}/ovms3.new ${REL_PATH}/ovms3.ver</div></div></blockquote></blockquote><div class=""><br class=""></div><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><div class="">The v3.1/pre, */eap, and */main are all manually released when ready.</div></blockquote><div class=""><br class=""></div><div class="">My directory structure for plugin releases on <a href="http://api.openvehicles.com" class="">api.openvehicles.com</a>:</div><div class=""><br class=""></div><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><div class="">/plugins</div></blockquote><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><div style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0);" class="">plugins.json</div><div style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0);" class="">plugins.rev</div><div class="">abrp</div><div class="">auxbatmon</div><div class="">chgind</div><div class="">chgthrottle</div><div class="">edimax</div><div class="">foglight</div><div class="">helloworld</div><div class="">pwrmon</div><div class="">regenmon</div><div class="">repidscan</div><div class="">retools</div></blockquote></blockquote><div class=""><br class=""></div><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><div class="">I build plugins automatically each night.</div><div class=""><br class=""></div></blockquote><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><div class="">See support/buildplugins.pl</div></blockquote></blockquote><div class=""><br class=""></div><div class="">That is what I do today. At some point, we will build the v3.3 tree separately (rather than symlink to v3.1), to take advantage of a ESP32 rev3 specific sdkconfig.</div><div class=""><br class=""></div><div class="">Regards, Mark.</div><div class=""><br class=""></div></body></html>