Release 7.1.0
Features
- Support wait type
WAIT_UNTIL_STOPPED
for process control groups. Starting a process in such a group will wait for the process to exit again. Can be used (for instance) to run certain preparative tools before launching the actual application, or running certain tools in order which need to run in sequence. - It is now possible (and the new default) to expand variables in the command line preview of an application in Configure Parameters.
- Introduce dedicated log file storage. Use the new
--logData
argument whileinit
, or using theconfig
command on existing installations to set this up. When not set up explicitly, the log data directory will resolve to the existing{{P:DATA}}
for each instance. When set up,{{P:LOG_DATA}}
will resolve to an instance specific subdirectory of the configured log data directory. - Support the "All Users" automatic user group, which allows configuration of "public" permissions for artifacts in BDeploy.
Warning
This change removes the "automatic" public status of Software Repositories. To emulate the previous behaviour, all Software Repositories need to have aREAD
permission assigned manually for the All Users group. - Support installing and activating instance configurations even when certain nodes participating in that configuration are offline. Installation of the missing bits is done when the node comes back online. Accompanying UI changes will hide node contents on the instance dashboard when the node is offline or not yet brought up to the required state (shown as "Synchronizing").
- Autostart support for
CLIENT
applications. The BDeploy launcher will now add itself to operating system autostart when running the installer (always). On startup it will check for to-be-started applications and run them just as usual. Applications must specify that they are autostart-capable by setting thesupportsAutostart
attribute in theprocessControl
section ofapp-info.yaml
; autostart can then still be enabled or disabled in the instance configuration as well as manually by the end-user in the BDeploy launcher. - Add support for the
startScriptName
attribute in theprocessControl
section ofapp-info.yaml
. The given name will be made available in the PATH of the user installing the application. The user can then access the installed application using this name from any terminal. - Add support for better content assist and inline as well as overall configuration file validation regarding linked value expressione (e.g
{{X:var}}
). Unresolvable expressions will be marked as error in the editor, and saving will not be possible in the instance configuration.Warning
This feature only validates when files are changed in the online editor. Also, there are a few things that worked in the past "by accident", for example referencing application parameters from a configuration file. This will no longer pass validation (intentionally). For now, these changes only affect the online editor, not the actual validation on the backend, so saving is possible even with warnings. This will change in a future release. - Add support for starting
CLIENT
applications even when the server is not reachable temporarily. This needs to be allowed using theofflineStartAllowed
flag of theprocessControl
section inapp-info.yaml
. If allowed, failing to contact the server will no longer abort the launch of an already installed application on the client. - Add support for file associations to
CLIENT
applications using thefileAssocExtension
attribute of theprocessControl
section inapp-info.yaml
. Setting this (e.g. to.myext
) will associate files with this extension on the client PC with the application.
Improvements
- Update all third party dependencies, most notably Angular 18.
- Add support for
loginStorage
to the gradle plugin. - Many, many small improvements to the overall code quality, maintainability and readability.
- Many, many small improvements to the user documentation (typos, capitalization, phrasing).
- Many small improvements to user feedback, adding a lot more clarity to many messages and documentation.
- Allow arithmetic (+ and -) for all linked values. Previously only template variables allowed arithmetic, now (almost) all expansions can use it, e.g.
{{X:my-instance-var:+2}}
. - Improved the hierarchical data files (and log files) browsers to be able to search for filenames in sub-directories. This functionality was lost when switching from a flat list to a hierarchical display.
- Added support for writing launcher logs on linux as well.
- Improved meta-data displayed for executables and associated files on Windows.
- Add and align validators for certain use cases in the frontend, e.g. E-Mail addresses.
- Removed the option to download a "portable" launcher as ZIP file from the Web UI. Those launcher ZIPs - if actually ever required - can be grabbed from the binary distribution ZIP file instead.
- Improve disabled button handling in the frontend to explain better why buttons are disabled.
- Add a
--open
flag to theremote-instance
tool to open the instance dashboard in the browser directly from the CLI. - The local login tool (
bdeploy login
) now no longer listens to theBDEPLOY_REMOTE
environment variable to avoid confusion with other commands, as the meaning was slightly different. - Add the
--status
flag to theremote-system
tool to grab the overall runtime status report for each instance in a given system. - Add the
--start
,--stop
and--restart
flags to theremote-system
tool, allowing to issue start/stop/restart commands to all instances in a system. - Add the possibility for secure password input request on the console of the
remote-user
tool when no password is given on the CLI. - Made the
--version
argument to theremote-transfer
tool optional. Not passing it will transfer the determined latest version of the product. - Add the
--regex
argument to theremote-transfer
tool allowing the--version
argument to specify a regular expression instead of a full version. - Changed the
remote-product
tool to allow filtering the--list
result by product key and version, optionally version being a regular expression. - Bulk-deletion of products now uses a single call to the backend to delete all selected products. This has multiple benefits including avoidance of connection overuse and also the ability to skip products which are still in use without aborting the overall process.
- Added the optional
--openUrl
argument to thelogin
commands--open
argument, allowing to open any arbitrary URL within a given remote BDeploy in the browser. - Added the possibility to update
bin/bdeploy.bat
automatically during update.Warning
This change does not affect existing installations of BDeploy. To be able to benefit from future updates, you need to manually copybin/bdeploy.bat
andbin/_bdeploy.bat
from a 7.1+ installation or the 7.1+ distribution ZIP.
Note
The update of the bat file happens only when initially starting the bat file (e.g. on server boot). This is due to limitations in bat files in general. - Install and activate triggered through a
CENTRAL
will now properly update theMANAGED
servers UI as well. - Updated splash art for the BDeploy launcher, as well as adding the SSI Schaefer logo to a few places (login, splash, readme, documentation).
- Uninstalling an application will now ask for confirmation regardless of how and where it is being uninstalled. Previously only uninstalling from the launcher application would ask for confirmation. Now uninstalling from Add/Remove Software or from the CLI will also prompt for confirmation. If not wanted, this can be disabled using the
--yes
command line flag.
Fixes
- Fixed processing order of template variables to be the same as defined in the template, not lexically sorted.
- Fixed spelling of liveness probes - previously misspelled as lifeness probes.
- Fixed cleanup logic related to BDeploy launchers to no longer erroneously delete launcher versions even though they are still required.
- Fixed issues messing up the launcher UI when using dark theme on different operating systems.
- Fixed discarding of streams (stdout and stderr) when launching applications to no longer block in case the target application writes output.
- Fixed an issue where the system variables page would be initially empty even though variables existed.
- Fixed an issue where operating system issues with process cleanup would break the process controller when trying to figure out exit codes of processes.
- Fixed an issue where the
--open
flag of thelogin
command would not properly hand over the one-time-password used for automated login to the browser application. - Fixed an issue where cookies would not be transferred correctly when proxying requests through BDeploy. This restores limited inline-capability for certain Web UI endpoints.