Releases: bdeployteam/bdeploy
Releases · bdeployteam/bdeploy
Release 5.0.0
Note
BDeploy 5.0CENTRAL
can be used with BDeploy 4.xMANAGED
Servers. However updating aMANAGED
Server to 5.0 will make it write data in a format incompatible with 4.x, so downgrading is not possible.
Warning
BDeploy 4.x CLI installations will not be able to properly process data received from 5.x servers. This is due to an incompatible data format.
Features
- Link Expressions and Content Assist Feature Discovery
- Link Expression editors for parameters, endpoints, variables.
- Content Assist for Link Expression editors.
- Content Assist for Configuration File eidtors.
- Expression preview on the Link Expression editor will do best-effort previewing of the fully expanded value resulting from an expression.
- Systems, System Variables, Instance Variables Feature Discovery
- Support for Systems, System Variables and association of Instances to Systems, including grouping/filtering.
- Instance Variables, including custom editor support from plugins.
- Template support for Instance Variables. Templates for Systems are to be implemented in the future.
- Global parameters are now officially deprecated, but still supported.
- Support for migration from global parameters to Instance Variables for existing instances.
- Shared Parameter Definitions Feature Discovery
- YAML Schema and Validation Feature Discovery
- YAML Schema CLI using
bdeploy schema
allows listing, exporting, validating against all supported schemas. - The new public remote schema API allows to fetch the current schema directly from a BDeploy server into a capable editor (e.g. using
yaml-language-server
).
- YAML Schema CLI using
- Internally, all historically
uuid
anduid
named fields have been renamed to match the newerid
naming. This change is kept as compatible as possible but will prevent downgrading from 5.0 to 4.x.
Improvements
- Better recovery on startup if MinionManifest has been corrupted (i.e. power outage during write).
- Various logs with low to zero value have been silenced or removed.
- No longer automatically add non-mandatory (optional) parameters having a condition once this condition is fulfilled to a process configuration.
- Error pages have been reworked (mostly used for UI endpoint proxying), and now include customized imagery.
- Allow bulk deletion of BDeploy system update versions.
- Introduce the ability to provide a regular expression per instance which filters eligible product versions presented to the user, and considered as potential update.
- Standalone servers will regularly check GitHub for new BDeploy releases and hint (administrator) users to it.
- If a product was imported from a software repository initially, show a notification to the user once a newer version of that product is available in the origin software repository.
- The client launcher now checks for appropriate permissions on directories and files, and displays according error messages.
- The client launcher now memorizes the concrete path to its installation directory and verifies that it did not change, as this causes problems on network drive installations for some applications.
- The client launcher now supports a fully unattended mode via the already existing
/Unattended
switch. The installation process will be silent now. - The client launcher (as well as our demo products) are now fully branded using the 'new' icons which are already used in the Web UI for a while now.
- Allow importing of products through the Web UI even if
runtimeDependencies
need to be fetched from other software repositories on the same server. - A reworked grouping panel provides better user experience and comprehensive preset management.
- The card view supports sorting now in addition to grouping.
- Conditions on parameters can now provide a Link Expression to expand instead of a parmeter whos value is used to match against.
- Conditional expansion allows to expand fixed values based on a boolean expression, e.g.
{{IF:X:my-instance-var-boolean?YES:NO}}
. - For UI Endpoints, also show the hosting process name in the Client Application list to be able to distinguish similarly named endpoints on different processes.
- Update tons of third party dependencies, and get rid of some deprecated, unneeded and vulnerable dependencies.
- Improve performance of the
groupForInstance
public endpoint. - Improved UI for importing products from software repositories into instance groups.
Fixes
- Various Fixes to avoid ExpressionChangedAfterItHasBeenCheckedErrors in Angular.
- Fix validation in Configure Parameters panel.
- Various Fixes related to updating the internal parameter contents when changes are performed through the UI or when updating the product.
- Fix parameter alignment when pasting applications.
- Fix endpoint proxying for endpoints using a slash ('/') in their ID.
- Fix searching in history
- Fix race conditions regarding user authentication in the Web UI, leading to spurious errors and redirects in some edge cases.
- Fix issues with the WebSocket connection to the backend when logging out and back in.
- Fix showing process output for
OUTDATED
and stopped processes. - Fix issues with synchronization to a central server when deleting instance versions on a managed server. This fix will be re-visited in the future to further improve on the topic.
- Fix render scale issues in the client launcher on HiDPI screens with increased text scaling on Windows.
- Fix an issue with spurious history entry panel errors after deleting an instance version from the instance history.
- Fix the 'Install'/'Activate' banner being shown even if the instance is not synchronized on
CENTRAL
. - Fix the 'Fetch instance states' button on
CENTRAL
to not fail is a single managed server is not reachable. - Fix the Linux client launcher installer to show a better error message in case the remote server is not reachable at all.
- Fix a long-standing but undetected issue which prevented permission checks on backend APIs in certain scenarios.
Release 4.5.4
Fixes
- Make sure that directories are created before trying to unzip files into them. This had an impact in certain situations when installing client applications with specific configuration for the first time.
Release 4.5.3
Fixes
- Update third party dependencies - some caused classloading issues in certain conditions, most notably preventing
bdeploy init
in some scenarios.
Release 4.5.2
Improvements
- Use error code
503
instead of412
in case dynamic proxying to applications cannot be performed.
Fixes
- Another fix for the configuration file path issues (
{{P:CONFIG}}
) - now finally all situations are handled correctly.
Release 4.5.1
Fixes
- Fix an issue where the resolution of
{{P:CONFIG}}
was wrong due to changes in configuration files in 4.5.0. - Update all Java 8 projects to Java 11 as announced.
Release 4.5.0
Warning
Java 8 support is known to be broken in this release and will be completely removed in an upcoming release. The minimum supported Java Version for external users of the BDeploy API release is Java 11 from now on.
Features
- Configuration Files for
CLIENT
Applications allows to whitelist certain instance configuration directories per process; those directories are made available on the executing BDeploy Launcher's host. Feature Discovery
Improvements
- The History View's
Compare With...
panels default to only showing differences now. - Grouping presets now allow empty presets, in addition to resetting to defaults.
- Further improvements to the user documentation.
Fixes
- Fix issue with log files not being listed on
CENTRAL
servers. - Fix scenarios where editing instance configuration could lead to unwanted side effects and broken configuration.
- Fix issues with default comparator for product versions to properly handle nulls.
- Fix issue where adding a configuration file to an instance will reset the current search/filter.
- Fix issue where password type parameters are not validated properly until the password input is manually unlocked.
Release 4.4.0
Features
- UI Endpoints for Server Applications with proxying support. Feature Discovery
Improvements
- Avoid duplicate API calls to the backend is possible to reduce load times.
- Performance improvements for the instance browser. Persistent and ephemeral caches for various levels of information have been added.
- Add a CLI tool to calculate the total disc usage for given manifest(s) in a BHive.
- Update to Angular 14.
- Record deleting an instance version in the instance history. This will be visible if the same instance version is created again.
- Don't show misleading WebSocket error message in case there is no connection to the backend at all.
- Introduce ability to only show differences in instance history diff views.
- Various smaller improvements to the documentation of existing features.
Fixes
- Fixed a potential hang for users migrated from the LDAP to the OIDC authentication provider.
- Fixed a bug where the
Install
button would stay active instead of switching over toActivate
after a successful install. - Fixed a crash in the CLI when encountering custom parameters in a process configuration.
- Add missing loading spinner on instance group permission panel.
- Make sure the process start confirmation dialog is closed automatically if another process is selected in the dashboard.
- Fixed a race condition where the SSL context could be (permanently) initialized wrong during startup of BDeploy if processes using startup probes would start before the first request from a BDeploy Frontend.
- Fixed issues with setting the log level for Grizzly/Jersey at runtime.
Release 4.3.1
Features
- Add OAuth2/OpenID Connect authentication support.
Improvements
- Add possibility to search for an instance ID on the instance group browser, showing the instance group which contains the requested instance.
- Add possibility to lookup and instance group by an instance ID via the public API.
- Add possibility to edit existing custom parameters instead of requiring the user to delete and re-create a parameter if anything but the value should change, e.g. the position on the command line (predecessor).
Fixes
- Fix a blocker where BDeploy would lock up in
CENTRAL
mode as soon as a bogus connection refused to close (e.g. caused by broken VPN configuration, Router, etc.). - Fix/provide missing information in parameter description popups.
- Increase the timeout for parameter description popups, so they are not so easily in the way.
- Fix missing description for certain runtime history events.
- Fix wrong error behavior in some cases when navigating to non-existant URLs.
- Fix excessive notifier threads per BHive in the system to use a common thread pool.
Release 4.3.0
Features
- Node replacement and restoring allows to get physically failed nodes back online without re-configuration. Feature Discovery
- Node conversion allows to integrate existing
STANDALONE
orMANAGED
servers asNODE
into another existing setup. Feature Discovery - Feature discovery series videos will explain new features every release from now on, see the above links.
Improvements
- Work (a lot) on SonarCloud issues to bring them down to a manageable amount.
- Make sure to not show "old" data while loading the contents of pages.
- The Launcher now no longer uses cmd.exe to gather information (Windows OS Version, etc.) to avoid confusing error logs.
- Slightly improve error messages when template processing configuration files is not possible to include the reason.
- Further reduce the amount of records displayed per table group to improve performance at the cost of having to use the search slightly earlier.
- Properly show the tooltips on various buttons in the UI, especially ones without a label.
- Add proper validation of allowable range of number values for
CLIENT_PORT
andSERVER_PORT
type parameters, both in the frontend as well as the backend, e.g. when updating to another product version. - Improve product details UI to show references to dependencies.
- Add possibility to view product details to the product CLI.
- Improve error message when a parameter passed on the CLI misses an argument.
- Improve the existing instance "overall state" display in the instance browser to keep information persistent for a while, so that re-visiting the instance browser does not require re-fetching instance state for all instances.
- Improve the existing instance "overall state" to be fetchable as bulk operation for selected instances only, instead of the need to fetch the state for all instances in an instance group.
- Certain operations and connections now time out at some point to prevent soft-lockups and the need to restart a server in certain corner cases.
- Improve the error message in case a full authentication token cannot be parse at all (e.g. because it is not a valid full authentication token).
- The instance browser now allows to save global filter/grouping presets which are applied for all users which do not have their own saved preset.
- The usual third party dependency updates to keep BDeploy up to date.
Fixes
- Remove too aggressive HTTP resource caching which resulted in BDeploy not updating properly after a reload (after a server update).
- Fix a ConcurrentModificationException in the PCU while notifying listeners of state changes.
- Fix an issue where uses could confirm a manual start without entering the proper confirmation string and just hitting enter (even though the button was disabled).
- Fix an issue where wrong manifest insertion order when fetching/pushing could lead to issues with listeners trying to read those manifests at a point in time where references can not (yet) be resolved.
- Fix an issue where navigating within the BHive Browser would not clear the current search, and immediately filter all items on the new location.
- Fix an issue where deleting referenced dependencies of a product can be deleted despite the product version still requiring them in software repositories.
- Fix an issue where the user was not guided to attach existing instance groups to a
CENTRAL
server after migration fromSTANDALONE
toMANAGED
. - Fix an issue where bad timing in requesting instance start, install of a newer version and instance stop would lead to a soft-lockup of a standalone or managed server.
Release 4.2.2
Features
- Parameter pinning will highlight per-process important information on the process dashboard panel when selected in parameter configuration.
Improvements
- Improve handling of bulk process control together with multiple nodes and/or process control groups.
- Improve documentation and test coverage for certain corner cases.
Fixes
- Fix another occurence of an issue where stopping a single process would lead to stopping all processes instead.