For reactUI, nightly builds are available here. It's easy to use nightly builds in your VisionX.
But be careful, because it's not guaranteed that everything is compatible and it's also not officially supported. If you take the risk and test your application, it shouldn't be a big problem.
If you want to use a nightly build in your VisionX application, you have two options:
To update only one application, simply delete the content of <VISIONX_DIR>/rad/apps/<APPNAME>/WebContent/ui
, extract the nightly build archive and copy the content of build directory into the <VISIONX_DIR>/rad/apps/<APPNAME>/WebContent/ui
directory. The advantage of updating only one application is that you can switch back to the old UI. A disadvantage is that automatic UI updates won't work if you have the .custom
file in your UI directory.
To prevent automatic UI updates, create a file with name .custom
in <VISIONX_DIR>/rad/apps/<APPNAME>/WebContent/ui
directory.
To update all applications, simply delete the content of <VISIONX_DIR>/rad/apps/visionx/resources/application/WebContent\ui
, extract the nightly build archive and copy the content of build directory into the <VISIONX_DIR>/rad/apps/visionx/resources/application/WebContent\ui
directory. Start or reastart VisionX and all applications should be automatically updated. A disadvantage is that it's not easily possible to switch back to the old UI. It's possible if you have a backup of the old UI directory.
A template for automatic updates of your application:
<target name="start.updateReactUI.nightly" description="Updates reactUI with nightly build"> <tstamp> <format property="datepattern" pattern="dd_MM_yyyy"/> <!-- yesterday <format property="datepattern" pattern="dd_MM_yyyy" offset="-1" unit="day" /> --> </tstamp> <get src="https://github.com/sibvisions/reactUI/releases/download/build-${datepattern}/reactBuild_${datepattern}.zip" dest="${build}/nightly.zip" usetimestamp="true"/> <!-- prepare nightly build archive extraction --> <delete file="${build}/nightly"/> <unzip src="${build}/nightly.zip" dest="${build}/nightly"> <patternset> <include name="build/*/**"/> </patternset> <mapper> <globmapper from="build/*" to="*"/> </mapper> </unzip> <!-- delete old files --> <delete includeEmptyDirs="true"> <fileset dir="WebContent/ui"> <exclude name="**/images/**"/> <exclude name="**/config/**"/> <exclude name="*.ttf"/> <exclude name="*.css"/> <exclude name="favicon.ico"/> </fileset> </delete> <!-- copy new files --> <copy todir="WebContent/ui"> <fileset dir="${build}/nightly"> <exclude name="app.json"/> <exclude name="application.css"/> <exclude name="favicon.ico"/> </fileset> </copy> </target>