Did you know you can subscribe to updates to the release notes? Right-click and copy this link and paste it into your feed reader of choice.
Known issues
None
Launch Webinar Recordings
FlexDeploy 9.0.0.0 (11-02-2024)
Version Details
FlexDeploy Installer 1.0.23 or later should be used with FlexDeploy 9 upgrades.
FlexDeploy 9.0 requires Java 21 or 17. See Plugin Java Requirements for Java version requirement for plugins.
This contains all features and fixes that are part of 8.0.0.8.
Application Version - 9.0.0.0.710
Docker images:
Application Updates
FLEXDEPLOY-11471 - Several more tables and lists are now multiselect and can perform actions on multiple rows.
FLEXDEPLOY-13009 - A new Admin Operation has been added to view currently active user sessions in real time.
FLEXDEPLOY-13223 - Postgres - Added some indexes to improve dashboard and project execution screen performance.
Platform Update
FlexDeploy 9.0 application requires Java 17 or 21. Plugins will continue to support various Java versions similar to FlexDeploy 8.0.
There are several JDK options available when installing FlexDeploy. The main requirement is that the version of Java used is version 21 or 17. if your Linux distribution includes a build of OpenJDK 21 or 17, you can use that version.
Amazon Corretto - Amazon's build of OpenJDK with security updates
OpenJDK - Adoptium - OpenJDK
Oracle JDK - Oracle's build for those who meet their license restrictions - https://www.oracle.com/java/technologies/downloads/#java21
Automated Rollback
Support for rolling back deployments has been added for Standard and and Package-based project level deployments.
Standard project rollback will deploy a previous build version to a given environment. User can override version to be deployed if necessary.
Package-based project rollback will build rollback package and deploy each file from the chosen Rollback Source Type:
Project Version - Source from a previous project version artifact.
SCM Revision - Retrieve from the project's configured source control system.
Rollback Project File - Select a different project file to build and deploy to roll back. Rollback file is retrieved from project’s source control system. This is project file attribute and can be defaulted as necessary by providing groovy scripts. For example, if file is Fil1.sql then Rollback file can be R_File1.sql. Customers can implement as necessary.
Backup Repository - Restore from a previous backup version. Backup repository must be enabled for this option. See plugin guides to see which plugins support taking backups automatically.
Rollback Source Type is a project file attribute which can be defaulted from a Groovy script entered on the Project Types screen.
Rollback execution history, including linked executions and files, can be easily viewed from the Project Execution page, as well as globally from reports.
GIT Integrations
Advanced Git Integration via OAuth applications.
Mass create integration instances by inspecting available git repositories for the user.
Automatically create repository webhooks and FlexDeploy webhook configuration for building projects and syncing branches
Automatically create and delete remote branches when performing actions in FlexDeploy.
Inspect repository contents when providing Sparse Folder Checkout script.
New Projects Commits page
View a list of commits on the project and see the highest environment they have been deployed to.
A commit details page to show
Pull requests for a commit
Commit changes (including code changes)
Commit timeline
FLEXDEPLOY-12153 - GIT Source Control Integration Instances can now use SSH Type credentials to connect via SSH protocol.
FLEXDEPLOY-8800 - When GIT Integration Instance URLs starts with "git@", then the username and password fields will be hidden. This is similar behavior in the case of using SSH when the URL starts with "ssh://".
FLEXDEPLOY-10061 - Git change logs now include line addition/deletion counts.
Credentials
Credentials are now updated to support different types. These new types are Secret Text, SSH Key, and Certificate.
Secret Text
Has an input for text that will be encrypted. These are commonly associated with passwords and is the standard credential type we have supported in the past.
SSH Key
Supports a private key file upload and an optional input for a passphrase.
These type of Credentials are generally associated with connecting to endpoints and authenticating with GIT.
Endpoints configured with Private Key and optional Passphrase prior to FlexDeploy 9.0 will be migrated to store Private Key with optional Passphrase in Local Credential Store.
SSH Key credentials are now also supported with Git source control instances.
Certificate credentials will support a certificate file upload and an optional password.
Configuration Export Import
FlexDeploy Configuration Export/Import allows Projects and Workflows to be seamlessly migrated between 2 separate FlexDeploy servers.
This is available to FlexDeploy Administrators only and is accessible from Admin Operations page.
Projects and / or workflows can be exported from the source FlexDeploy server as a zip file. This zip file can then be imported in the target FlexDeploy server to migrate these projects and workflows over.
This feature allows projects and workflows to be migrated repeatedly. The import process will create or update objects as needed.
WebSocket
Several FlexDeploy screens now leverage WebSocket, as opposed to a traditional polling mechanism using REST APIs, to both improve UI responsiveness and reduce network traffic and server load. This change has been made on the following screens:
Project Execution List
Execution Workflow Steps
Execution Plugin Logs
Release Dashboard
If WebSocket is not available, the screens gracefully fall back to the prior method of polling updates.
Projects
Project Security options are separated from Folder for clarity. Security can still be overridden at Folder, Project and Release level, if no overrides are done permissions are inherited from parent folder. Additionally, Folder Security tab will show all groups that inherit READ permissions from other permissions as disabled so it is clear that they cannot be deleted.
FLEXDEPLOY-3964 - A new checkbox labeled "All Tasks Required" has been added to the Edit Folder Approval popup. When this box is checked, every group will be required to approve the task. If unchecked, only one group will need to provide approval, maintaining the previous behavior before this checkbox was introduced.
FLEXDEPLOY-9148: The packages list now includes headers for the latest version and environments. The "Latest Version" column will show the most recent successful build for each package, while the environment-specific columns will display the latest successful deployment for each package in its respective environment. Quick access links to the execution pages are also provided for convenience.
FLEXDEPLOY-12191 - A notes field has been added for users to provide on all workflow execution requests, which can be referenced from project executions and reports. Notes are required for rollback requests and optional for all other request types.
FLEXDEPLOY-13033 - Test configuration stored as YAML in Source Control can now be overridden by Project level Configuration. Override is applied using the same testName value.
FLEXDEPLOY-13180 - The commit chip card on the Project Execution tab will now disable the View Change Logs button if the user does not have access.
Release and Pipeline Management
FLEXDEPLOY-12418 - Pipeline Approval Gates now include a new option to require all groups defined on the role to approve the gate before it can continue.
FLEXDEPLOY-12484 - A new Pipeline Gate has been added - "Work Item Validation". This gate has multiple options to validate that each work item in the release meets certain standards before the Pipeline continues.
FLEXDEPLOY-10643 - Release Snapshot Inputs are now available to be specified in 3 new locations: Build Request Form, Promote to Release Popup, and the Promote To Release Pipeline Step. The Promote Pipeline Step supports literal or Groovy expressions.
FLEXDEPLOY-1933 - A new release permission,
Manage Roles
, has been added. This permission will decide who has access to override the Role members for the Release. Previously, theConfigure Pipeline
permission was required.FLEXDEPLOY-12793 - The release permission
Configure Content List
has been separated into two permissions to manage Projects/Packages and Work Items separately. The respective permissions are nowConfigure Content List
andConfigure Work Item List
.FLEXDEPLOY-13075 - Snapshot inputs are now displayed in the order they were created when shown in the UI.
FLEXDEPLOY-12707 - An information message and link has been added on the Release Dashboard when the current snapshot is waiting for another snapshot to finish running steps before it starts processing.
FLEXDEPLOY-13070 - The Edit Stage popup now includes a search filter for the Gates and Steps.
Integrations
FLEXDEPLOY-12475 - Integration provider properties now use the Field Data Type (Text Field, Date Time etc.) that is used on other custom property definitions.
Security
FLEXDEPLOY-8873 - Pipeline security permissions can now be overridden at individual pipeline level to allow for finer-grained access to pipeline management when necessary. Additionally, Bulk Update Permissions is available to simplify the update of permissions on more than one pipeline.
Active Directory / LDAP Realm and Email passwords are now migrated to Local Credential Store.
FLEXDEPLOY-12038 - Encrypted fields on the Email Settings are now stored as credentials. Existing passwords have been converted into credentials with the naming format "Email Communication - <field name>" (e.g. Email Communication - IMAP Password).
FLEXDEPLOY_12040 - Updated Joda Time library to resolve vulnerability CVE-2024-23080.
FLEXDEPLOY-12138 - Updated Spring-Core library to resolve vulnerability CVE-2024-22233.
FLEXDEPLOY-11168 - Updated Pac4J version shipped with FlexDeploy is from 4.5.7 to 5.7.3. This update is relevant for configurations using OpenID or SAML-based SSO and resolves vulnerability SNYK-JAVA-COMNIMBUSDS-6247633.
Dashboards
FLEXDEPLOY-12107 - A new Dashboard panel has been added: Application Errors. This panel is only available to FlexDeploy Administrators.
System Settings
Email OAuth Settings have been migrated to
System Settings -> Integrations
where individual OAuth applications are defined.
Groovy Libraries
Users can now create their own Groovy Libraries that can be shared across all Groovy scripts. A new Groovy Libraries page has been added under the Administration heading for users to create, edit and maintain their custom libraries. Each library is then made available in each Groovy script via a Library Key, for example
LIB_MATH_HELPERS
, just like ourFLEXDEPLOY
,EMAIL
and other helper libraries.The Groovy Library editor also includes a Try It window to test your library in real time as you are developing it!
Groovy Functions
FLEXDEPLOY-12452 - FLEXDEPLOY function now includes methods for getting the plain text values for Credentials.
Code Editor
FLEXDEPLOY-12722 - Classes not found in a groovy script can now be auto imported via "Quick Actions". Quick Actions are available when hovering an error or by hitting `ctrl+.` while the cursor is in the error range (red squiggles).
FLEXDEPLOY-13040 - The Code Editor now supports suggestions for wildcard imports in Groovy scripts.
Purge
Purge settings have changed with the 9.0 release. Please read this section and update your purge settings as desired after upgrading.
FLEXDEPLOY-12790 - Introduced new Purge Setting Keep Production Count, which must be 1 or higher. Additionally, Keep Count setting can be lowered to 0. Keep Success Count and Keep Failed Count are removed. Customer should use other available Keep Count settings.
FLEXDEPLOY-12145 - Purge settings now allow selection on hour of day when purge would be executed. Additionally, if workflow execution threads are overwhelmed then purge will wait for 5 minutes interval till workflow execution threads free up indicating less load on system. Purge execution either Success or Failed is also recorded on Change History report.
FLEXDEPLOY-12870 - Added a new purge setting to control how many days to keep Webhook and Event messages and logs.
Plugin Updates
Oracle BI Plugin
FLEXDEPLOY-11724 - Package Files context menu, now allows to mark WebCatalog object to be deleted during deployment. Objects with ".Folder" extension is not allowed to delete.
downloadWebCatalog
operation now supports download of more than one folders.
Oracle Transactional BI Plugin
FLEXDEPLOY-11724 - Package Files context menu, now allows to mark WebCatalog object to be deleted during deployment. Objects with ".Folder" extension is not allowed to delete.
downloadWebCatalog
operation now supports download of more than one folders.
Oracle Analytics Cloud Plugin
FLEXDEPLOY-11724 - Package Files context menu, now allows to mark WebCatalog object to be deleted during deployment. Objects with ".Folder" extension is not allowed to delete.
downloadWebCatalog
operation now supports download of more than one folders.
Resolved Issues
Projects
FLEXDEPLOY-13036 - Resolved an issue where project properties page shows underlying groovy script instead of showing List of Values.
FLEXDEPLOY-13087 - Resolved an issue where Success Rate and Duration metrics did not update when filtering by execution status for deployment executions on the Project Insights tab.
FLEXDEPLOY-13171 - SCM Defaults will now correctly set the default instance should one be present in the defaults.
FLEXDEPLOY-13209 - The Package select dropdown will now properly render the package description as markdown. If the description contains multiple lines, only the first line will be shown in the drop down.
FLEXDEPLOY-13366 - Resolved an issue that would sometimes display a permission error if hovering execution links on the project execution page.
Release and Pipeline Management
FLEXDEPLOY-12406 - Allow removing projects and packages from completed releases.
FLEXDEPLOY-13072 - Encrypted snapshot inputs will now display a mask value ****** instead of the encrypted value.
FLEXDEPLOY-13288 - The Force Execute option on the Pre-deploy Pipeline step has been renamed to just "Force"
Realms
FLEXDEPLOY-13379 - Resolved an issue causing new LDAP users to not be redirected back to the home page properly after creating their account.
GIT
FLEXDEPLOY-3377 - Resolved an issue where update of GIT URL on source control integration instance may cause issues with build activity. URL update may include just protocol change from https to ssh or vice versa.
FLEXDEPLOY-7839 - Resolved an issue where multiple line commit message may get interpreted as changed file for commit.
Workflow Execution
FLEXDEPLOY-12662 - Resolved an issue to show files in the Execution Reports folder when a file name exists in multiple sub folders.
Work Items
FLEXDEPLOY-13196 - Corrected the documentation links for all Work Item Administration screens to point to the Administration documentation
Security
FLEXDEPLOY-13262 - Resolved an issue where User can unlock their own account.
Credentials
FLEXDEPLOY-13274 - Resolved an issue that caused testing credentials for custom providers to fail every time when using the encrypted value stored in the database.
User Profile
FLEXDEPLOY-13353 - Added missing documentation links to the user profile pages
Purge
FLEXDEPLOY-12989 - Resolved an issue where project versions of Package-based projects were not purged correctly if the workflow execution couldn't be started due to errors such as no endpoint available.
FLEXDEPLOY-12955 - Resolved an issue where project versions of Package-based projects were not purged if they were never deployed.
FLEXDEPLOY-12954 - Resolved an issue where the purge status display would not show the "RUNNING" status in certain cases.
Incompatible Changes
FlexDeploy 9.0 application now requires Java 17 and 21 and FlexDeploy Installer 1.0.23 or later should be used with FlexDeploy 9 upgrades.
FLEXDEPLOY-11843 - FlexDeploy no longer uses Apache Commons Lang. Instead Apache Commons Lang3 is used. This is a potentially breaking change to groovy scripts with custom imports. Use the lang3 import instead if you were importing commons lang.
FLEXDEPLOY-12990 - Deprecated constructor
ReleaseProjectsPojo(Long pProjectId, String pPackageName, Boolean pRequestAllFiles) and added ReleaseProjectsPojo(Long pProjectId, String pPackageName)
URL Changes
The FlexDeploy Patches screen URL has been moved from
/flexdeploy/next/#/administration/patches
to/flexdeploy/next/#/administration/admin-operations/view-patches
Git Accounts
Git Accounts has been removed and Connected Apps has taken its place. Git connected applications will offer the same feature list as Git Accounts and more! However, because Git Accounts were stored only on the users device and not the FlexDeploy server, we are not able to port over existing Git Accounts into Connected Applications. We apologize for this inconvenience.
Topology
FLEXDEPLOY-13170 - Removed the ability to set the
PrivateKey
default value for new Endpoints. This is due to Private Keys now being stored as SSH Key credentials.
Notification
FLEXDEPLOY-11552: The internal email notification system has transitioned from
javax.mail
tojakarta.mail
. This is for informational purposes; if you have custom Groovy scripts utilizingjavax.mail
packages, please adjust them accordingly.