[Ovmsdev] Build / release infrasructure
Mark Webb-Johnson
mark at webb-johnson.net
Mon Mar 7 10:50:43 HKT 2022
My directory structure for firmware releases on api.openvehicles.com <http://api.openvehicles.com/>:
/firmware/ota
v3.0
main
v3.1
edge
pre -> eap
eap
main
v3.2 -> v3.1
v3.3
edge -> ……/firmware/ota/v3.1/edge
pre -> ……/firmware/ota/v3.1/pre
eap
main
I build v3.1/edge automatically each night.
cd $IDF_PATH
git config pull.rebase false
git pull
git submodule init
git submodule update
cd $OVMS_TREE
git config pull.rebase false
git fetch --tags
git pull
git submodule init
git submodule update
cd $OVMS_PATH
make defconfig
make size >$INFO_PATH
echo >>$INFO_PATH
git log --graph --decorate --pretty=oneline --abbrev-commit --all -n 10 >>$INFO_PATH
cp build/ovms3.bin $REL_PATH/${REV_NEW}.ovms3.bin
cp build/ovms3.elf $REL_PATH/${REV_NEW}.ovms3.elf
echo $REV_NEW >${REL_PATH}/ovms3.new
echo `/usr/bin/date -u` "Automated build ($HOSTNAME)" >>${REL_PATH}/ovms3.new
echo >>${REL_PATH}/ovms3.new
cat $INFO_PATH >>${REL_PATH}/ovms3.new
rm -f ${REL_PATH}/ovms3.bin
ln -s ${REL_PATH}/${REV_NEW}.ovms3.bin ${REL_PATH}/ovms3.bin
rm -f ${REL_PATH}/ovms3.elf
ln -s ${REL_PATH}/${REV_NEW}.ovms3.elf ${REL_PATH}/ovms3.elf
mv ${REL_PATH}/ovms3.new ${REL_PATH}/ovms3.ver
The v3.1/pre, */eap, and */main are all manually released when ready.
My directory structure for plugin releases on api.openvehicles.com <http://api.openvehicles.com/>:
/plugins
plugins.json
plugins.rev
abrp
auxbatmon
chgind
chgthrottle
edimax
foglight
helloworld
pwrmon
regenmon
repidscan
retools
I build plugins automatically each night.
See support/buildplugins.pl
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.
Regards, Mark.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openvehicles.com/pipermail/ovmsdev/attachments/20220307/77bdb788/attachment.htm>
More information about the OvmsDev
mailing list