FlexDeploy Release Notes

FlexDeploy 5.5.0.6 (07-26-2021)

Version Details

General

  • FLEXDEPLOY-3671 - CyberArk AAM credential store URL property can now define WebService URL other than /AIMWebservice/api/Accounts. This will be useful if customer is using different WebService to retrieve credential values.

Resolved Issues

  • FLEXDEPLOY-3692 - Allow saving files with zero bytes in the reports folder.

FlexDeploy 5.5.0.5 (06-26-2021)

Version Details

General

  • FLEXDEPLOY-3626 REST calls made from FlexDeploy will now honor the Java http proxy settings
  • FLEXDEPLOY-3625 The FlexDeploy SVN client can now pick up configuration changes from the servers file in the subversion configuration directory.
    • ~/.subversion/serves for UNIX based platforms
    • %APPDATA%/Subversion/servers for Windows
  • FLEXDEPLOY-3614 Added performance improvement for topology overview screen.
  • FLEXDEPLOY-3606 Project, Package and Release names all now allows for Letters, Numbers, Underscore, Space, Dash, Dot, Parentheses, Colon , At.
  • FLEXDEPLOY-3589 Packages screen now defaults to filtering only Active packages. User and updated on based default filter is removed.
  • FLEXDEPLOY-3599 Packages screen now defaults to filtering only Active packages. User and updated on based default filter is removed.
  • FLEXDEPLOY-3592 New blueprint for PeopleSoft projects
  • FLEXDEPLOY-3564 ServiceNow integration now supports creating and monitoring of any object (e.g. change task). Previous support included change requests and service catalog requests only.
  • FLEXDEPLOY-3512 Add support for TLSv1.2 in emails by default

Updated Plugins


Salesforce Plugin

  • FLEXDEPLOY-3595 Allow users to set the deploy timeout in Environment Instance properties after which deployments to Salesforce will be timed out.

PeopleSoft Plugin

  • FLEXDEPLOY-3581 Added an option to generate PeopleSoft compare reports as HTML.

Resolved Issues

  • FLEXDEPLOY-3609 If build workflow execution output for project version name matches with initial version name for the build then still version id suffix is added for uniqueness. This is rare situation but it is now handled by workflow engine.
  • FLEXDEPLOY-3495 Fixed an issue where Abort action on Wait Step was giving "Abort requested on wait step that is not running" error message.
  • FLEXDEPLOY-3156 Fixed an error when attempting to perform property replace against an empty file
  • FLEXDEPLOY-3615 Fixed Issue with Pre-Deploy workflow outputs automatically not getting passed to Deploy workflow inputs.
  • SonarQube Plugin
    • FLEXDEPLOY-3635 SonarQube Plugin updated to work with windows scripts.
  • Oracle API Platform Plugin
    • FLEXDEPLOY-3559 Base URI is getting added twice for application update, gateway update, service account update, and service update.
  • Node Plugin
    • FLEXDEPLOY-3544 Added ability to provide either path to node executable or parent directory for plugins that use NodeJS
  • Oracle Database Plugin
    • FLEXDEPLOY-3379 Fixed issues with renames not working in some scenarios.
    • FLEXDEPLOY-2748 Alter length skipped if also adding new column.
    • FLEXDEPLOY-2738 Create columns in same order as source table.
    • FLEXDEPLOY-353 Fixed failure when both queues and tables are selected.
    • FLEXDEPLOY-317 Fixed an issue with incorrect revokes getting generated with renames.
    • FLEXDEPLOY-3286 Add support to include tablespace and storage information on creates only.

FlexDeploy 5.5.0.4 (05-29-2021)

Version Details

Updated Plugins

  • Subversion Plugin
    • FLEXDEPLOY-3541 Added SVN+SSH support.

  • Oracle Database Plugin
    • FLEXDEPLOY-3554 - Revised internal query to improve performance of creating a baseline.

  • REST Plugin
    • FLEXDEPLOY-3540 - Updated REST plugin operations to allow workflow developer to define endpoint specification and user defined inputs.

  • Oracle MFT Plugin
    • FLEXDEPLOY-3539 - Updated MFT plugin operations to allow workflow developer to define endpoint specification.

Resolved Issues

  • FLEXDEPLOY-3552 Fixed bug where new user registration through Active Directory, LDAP or SSO does not work. This is regression issue introduced in 5.5.0.3 due to new password policy.
  • FLEXDEPLOY-3573 The FlexRESTClient, which can be used in Ongoing Webhooks and Custom Pipeline gates/steps, throws "java.lang.NoSuchFieldException: method" error when performing PATCH REST operations against an HTTPS endpoint.
  • FLEXDEPLOY-3563 Fixed bug with project templates causing an error creating partial projects "ProjectType must be set for PartialDeployment projects"
  • FLEXDEPLOY-3533 Fixed bug where some users would receive empty logs in notification email.
  • PeopleSoft Plugin
    • FLEXDEPLOY-3562 - Fixed a bug with command execution where there missing spaces in some commands.
  • Salesforce Plugin
    • FLEXDEPLOY-3542 - The issue with Type members not being added to package.xml in Partial Build operations has been fixed.
  • EBS Plugin
    • FLEXDEPLOY-3558 - adopCutover operation was not using Application Restart and Concurrent Manager Wait inputs.

FlexDeploy 5.5.0.3 (05-02-2021)

Version Details

Recommended Changes

Add maxHttpHeaderSize="32768" for Tomcat server.xml as shown below. This will help resolve FLEXDEPLOY-3419 - Project Files, Tasks menu screens gives connection error when there are too many rows to be displayed.

General

  • FLEXDEPLOY-3455 - Approval Tasks and Schedule Tasks can now be searched by Task Id.
  • FLEXDEPLOY-3194 - Estimated Duration field is removed from Manual step in the pipeline. Hereafter pipeline developers will not require to enter estimated duration as a mandatory field.
  • FLEXDEPLOY-3500 - EBS Plugin executeCommand operation may fail to execute due to syntax errors in execute.sh script.
  • FLEXDEPLOY-3486 - Node Executable Path input added to Angular, Oracle Jet, Postman plugins. Previously it was required to setup PATH environment variable for node executable.
  • FLEXDEPLOY-3473 - Property Replacement will not throw exception during replacement for properties that are defined but not set, value will be set to empty string.
  • FLEXDEPLOY-3470 - A new blueprint has been added for ADF applications Build and Deploy(WebLogic)
  • FLEXDEPLOY-3458 - Plugin Execution - Fixed an issue where UNIX shell plugin echo can print encrypted values if there are spaces in it.
  • FLEXDEPLOY-3412 - New webhook functions to create a package based on polling results (createPackage) and retrieve a package (getPackage). Also a minor update to the updatePackage function. CreatePackage will automatically sort the files after creation. GetPackage will find package based on project id and package name. Finally, updatePackage has an overloaded method that allows user to sort the package files.
  • FLEXDEPLOY-3410 - A new blueprint has been added for Oracle CX Files Build and Deploy
  • FLEXDEPLOY-3409 - A new blueprint has been added for Oracle CX server side extension Build and Deploy
  • FLEXDEPLOY-3390 - Webhooks - Added new FlexDeploy function for executing Utility Projects. This function has capability to execute on specified instances as well as set workflow inputs and Flexfield values.
  • FLEXDEPLOY-3205 - Security - Changing passwords now require at least 8 characters, 1 lower case letter, 1 upper case letter, 1 digit, and 1 special character.
  • FLEXDEPLOY-2852 - Optional source script added to Endpoint Details screen allowing user to source environment files or export variables. Anything sourced or exported here will become available to plugin executions on the endpoint.

New Plugins

  • PeopleSoft
  • Artifactory Xray
    • Allows to perform scan of build and artifacts from Artifactory, detects security vulnerabilities and licenses in your software components.
  • OpenShift
    • Allows users to perform maintenance operations on clusters.
    • Allows performing operations like tagging an image, adding labels to resources, scaling pods to requirements, etc.

Updated Plugins

  • Oracle EBS Plugin
    • FLEXDEPLOY-3438 - Option to copy files to patch file system. Once selected, deploy operation will copy all the files part of the package to the patch file system.
    • FLEXDEPLOY-3440 - All EBS server management operations will verify for apps/system or WebLogic passwords are entered and valid before executing the same.
    • FLEXDEPLOY-3463 - Additional Input options to the script. For Example, plugin developers can use -mode=allnodes to stop/start services on all application tier nodes of an instance.
    • FLEXDEPLOY-3425 - EBS Server management operations like stopAll, startAll will use a locking strategy for execution in an environment. This will help sequencing and controlling the EBS services to avoid any conflict when more than one execution is trying to stop/start a certain service in an environment.
    • FLEXDEPLOY-3464 - Allow stopAll operation to wait for all Concurrent Manager (FNDLIBR) processes to stop.
  • Salesforce Plugin
    • FLEXDEPLOY-3491 - Local developer files like jsconfig.json and .eslintrc.json are automatically excluded from the list of files being shown in the Project Files tab for Salesforce projects
    • FLEXDEPLOY-3472 - Test Level and Tests to run in an organization before/during deployment can now be set as inputs for deploySalesforce and deploySalesforceWithSfdx plugin operations
  • Oracle Data Integrator Plugin
    • FLEXDEPLOY-3516 - Added a property to set the type of Deployment Archive being applied to an environment
  • Oracle CX Commerce Plugin
    • FLEXDEPLOY-3492 - Added an Environment/Instance property to allow users to specify the path to Node, and npm packages for situations when it isn't on the path. This works for populate, build, and deploy.
  • Oracle API Platform Plugin
    • FLEXDEPLOY-3457 - Oracle API Platform Plugin now supports OAuth JWT User Assertion and Resource Owner Authentication.
  • REST Plugin
    • FLEXDEPLOY-3498 - Support property replacement for URL, Body and Body Path inputs.

Resolved Issues

  • FLEXDEPLOY-3532 - An issue has been fixed where webhooks could get stuck in Pending status if trying to set an error or log message longer than 4000 characters
  • FLEXDEPLOY-3493 - Fixed issue where Webhook requestBuild fails with flexagon.ff.common.core.exceptions.FlexCheckedException: Project Not Found even when project exists.
  • FLEXDEPLOY-3449 - Dynamic packages are now resorted properly after project files are re-populated.
  • FLEXDEPLOY-3433 - Prevent Duplicate File Error, when package file is inserted twice. Issue can happen if the webhook package does not match what is passed in polling result.
  • FLEXDEPLOY-3396 - Release dashboard Stage Execution Info will show what is common between release projects and snapshot content
  • FLEXDEPLOY-2136 - Build All Files workflow may fail with Closed Connection database error, if export of files from SCM takes long time.
  • Oracle EBS Plugin
    • FLEXDEPLOY-3505 - Fixed issue in datafix validation causing the "equals" validator to behave incorrectly.
    • FLEXDEPLOY-3378 - adopAbort operation will now kill any existing session without waiting for user input.
  • Tomcat Plugin
    • FLEXDEPLOY-3476 - Fixed Tomcat plugin operations so it works on Windows Cygwin SSH Endpoints.
    • FLEXDEPLOY-3465 - Tomcat War Name is now optional for deploy, undeploy, and reloadApplication operations. If Tomcat War Name is not set, then it will attempt to find the war file in the artifacts directory.

FlexDeploy 5.5.0.2 (04-04-2021)

Version Details

General

  • FLEXDEPLOY-3430 - Local Salesforce developer files like jsconfig.json and .eslintrc.json are automatically handled and not deployed to an org in both Standard and Partial projects
  • FLEXDEPLOY-3399 - Pipeline Groovy Methods - Added a getProjectTypeEnum method for ReleaseProjectVersion object and updated the getProjectType method to return a string.
  • FLEXDEPLOY-3388 - A new method has been added to the FLEXDEPLOY webhooks object, getPipelineStepProjectsExecution. The method returns all request and execution data for a particular step in a pipeline execution.
  • FLEXDEPLOY-3373 - The webhook function 'buildProjects', which is present on all Git helper objects has improved logic to determine if a new stream should be created in FlexDeploy
  • FLEXDEPLOY-3371 - Ability to add custom task notes to an External CMS Approval upon approval or rejection. For out-of-the-box providers (ServiceNow, JiraITSM, Freshservice, and BMCHelixRemedyforce), user can write an "Additional Info" groovy script to return a map containing the notes they would like to be associated with FlexDeploy External Approval. Custom Change Management Systems can leverage the same capability by overriding "getAdditionalTicketInfo()" function.
  • FLEXDEPLOY-3370 - Toggle added to OBI Webcatalog Blueprint to indicate if the Oracle BI 2.0 project type should be used.
  • FLEXDEPLOY-3369 - A new blueprint has been added for Oracle Transactional Business Intelligence (OTBI) Webcatalog.
  • FLEXDEPLOY-3364 - A new webhook function 'buildPackages' has been added to all major Git provider objects.
  • FLEXDEPLOY-3344 - In Email Communication settings, a new field is added to allow usage of custom IMAP Server Properties. The IMAP Properties field can reference existing values from IMAP Host Name, IMAP Host Port, and IMAP Enable STARTTLS for quick setup.
  • FLEXDEPLOY-3343 - Fixed issue where REST invocations at times indicate Already connected error message during SSL handshake issues.
  • FLEXDEPLOY-3340 - Pipeline step execution details list now initializes to shows 100 rows at a time.
  • FLEXDEPLOY-3336 - Files tab on workflow execution and request details now has export button to download all file details in excel format.
  • FLEXDEPLOY-3210 - Using built-in LOG function in a webhook will no longer print encrypted values. Incoming webhook Headers, Query Parameters, and Additional Info will mask the value for non-admin users if the key contains "authorization", "bearer", or "token".
  • FLEXDEPLOY-3294 - Increase security when negotiating for SSL connections with several providers.
  • FLEXDEPLOY-3405 - ServiceNow instance now defaults description and sys_class_name when using Scripted REST API for custom API. The number attribute is required in payload returned from API.
  • FLEXDEPLOY-3394 - Improve XML Parser security when parsing workflow xml.

New Plugins

  • Python
    • Allows to execute python scripts in various workflows. This plugin also supports partial deployment projects. Python must be installed on the Endpoint. Python plugin also supports user defined outputs.
  • Grunt
    • Allows to build application using Grunt file.
  • NodeJS
    • Allows to install node and global packages, which can be used to execute various plugin based on Node.
    • Allows to execute node script commands.

Updated Plugins

  • Oracle CX Commerce Plugin
    • FLEXDEPLOY-3468 - Always use transferAll input option is now available.
  • Oracle Integration Cloud Plugin
    • FLEXDEPLOY-3393 - JWT User Assertion is now supported on the OIC Cloud Account. This change introduces a new property 'AuthType' on the account that determines how authentication should be handled.
  • Artifactory Plugin
    • FLEXDEPLOY-3358 - Added Output to return the Artifact Id from the Artifact Repository for all upload operations.
  • Microsoft Teams Plugin
    • FLEXDEPLOY-3327 - Improve the error messages generated by the Microsoft Teams plugin.
    • Enable creating messages to Microsoft Teams Incoming Webhooks from FlexDeploy Outgoing Webhooks.

    • Enable approving and rejecting tasks from Microsoft Teams messages using FlexDeploy Incoming Webhooks.

    • Added two new plugin operations that allow using Incoming Webhooks in Teams to send messages to channels. This removes all security and authentication needs from the plugin.
    • If using the legacy authentication method, when sending messages to a team, try to join the team if not already a member.
    • If sending a message to a user, start a new chat if there isn't an existing one.

Resolved Issues

  • FLEXDEPLOY-3442 - Outgoing Webhooks - Clicking apply on a listener is clearing event types.
  • FLEXDEPLOY-3426 - Dashboard - Clicking an Utility project from dashboard throws exception - An Error Has Occurred.
  • FLEXDEPLOY-3414 - Fix for NullPointerException during new user login process.
  • FLEXDEPLOY-3404 - Fixed minor logic bug where loops were executed unnecessarily when adding files to a package from change logs.
  • FLEXDEPLOY-3386 - Bug fixed in webhook function FLEXDEPLOY.getReleaseProjectInfo causing too many projects to be returned.
  • FLEXDEPLOY-3384 - Fixed issue where SCM Type for project is set to None when Editing project on project explorer. Also fixed issue where Project Type shows up on Edit Project popup.
  • FLEXDEPLOY-3383 - Fixed format used by Log Date for webhook messages, so user can identify AM vs PM for date.
  • FLEXDEPLOY-3354 - Fixed issue where Dashboard and Email notification project links do not work for utility projects.
  • FLEXDEPLOY-2773 - Bug fixed causing an error of "Bad Credentials" when using the Bitbucket provider in Blueprints.
  • SonarQube Plugin
    • FLEXDEPLOY-3467 - Fix for SonarQube plugin Analysis not using the sonar path instance property in some cases.
  • Tomcat Plugin
    • FLEXDEPLOY-3446 - Tomcat plugin updated to have compatibility with Windows Cygwin SSH Endpoints.

FlexDeploy 5.5.0.1 (03-07-2021)

Version Details

General

  • [FLEXDEPLOY-3011] - Specific attributes of Endpoint are trimmed of leading and trailing white space - Endpoint Name, Endpoint Address, Port, Base Directory, JDK Home, User Name, Private Key File, Run As (sudo), Group, and Subgroup etc. i.e. if user enters value with leading or trailing space, then value is trimmed.
  • [FLEXDEPLOY-3304] - SSH timeout is now added on system settings. This defaults to no timeout but it can be adjusted to some lower value in seconds if customer is seeing hang situations with SSH executions. Additionally, during connect more steps are taken to avoid hang if target server is not responding. If SSH timeout is set, then we recommend value to be lower than keep alive interval.

  • [FLEXDEPLOY-3279] - Added snapshot description to the pipeline execution approval emails.
  • [FLEXDEPLOY-3121] - Populating from a backend server for partial deployment now gives option to inactivate missing project files. When a partial deployment project type does not allow user to sort, the populate popup no longer allows option to sort all files, and the entire list of project files are resorted automatically.
  • [FLEXDEPLOY-3070] - Added Azure Git as an option for Git provider in Blueprints.
  • [FLEXDEPLOY-3050] - Pipeline execution generally deploys or executes to all configured instances on project. In case if some instance(s) is not mapped to current environment, then those are skipped. FlexDeploy stage execution information now provides ability to configure override instance(s) either using UI or Groovy function to limit instance(s) targeted for deploy or execute.

Oracle BI and Oracle Transactional Business Intelligence

  • The OBIEE plugin now supports two different partial deployment project types:
    • Oracle BI - This project type has been renamed from Oracle Business Intelligence, and populates project files into object types based on the Web Catalog object type. This categorization makes it easy to filter by type.
    • Oracle BI 2.0 - This new project type populates project files into a single object type, called WebCatalog, and appends the Web Catalog object type name as an extension. This makes it easier to filter objects by name and see heterogeneous types by name/extension.
  • [FLEXDEPLOY-3251] - Root folder from the WebCatalog Object Path project property is now included in the project files during populate for OBI and OTBI partial deployment projects.

Oracle Transactional Business Intelligence

  • [FLEXDEPLOY-3251] - Root folder from the WebCatalog Object Path project property is now included in the project files during populate for OBI and OTBI partial deployment projects.
  • [FLEXDEPLOY-3249] - New plugin operation to export web catalog objects from the server, which is useful for automatically syncing the objects to a source control management system.

Oracle CX Commerce

FlexDeploy Oracle CX Commerce plugin now supports deployment of Global Resource, Page Layout, Site Settings, Snippets, Stack, Static, Theme, Widget, Global Element etc. These files can be either sourced from source code repository or development environment. Additional operation is provided to publish deployed objects as well as operation to check for any unpublished objects.

Salesforce

Dependent meta data files handled automatically on Salesforce tab. Meta-data files will be pulled from Salesforce and automatically selected and committed to Source Control.

Change Management System Integration

  • Added an out-of-box integration with Jira ITSM for change management
  • Added support for dot notation in CMS field groovy scripts.

Updated Plugins

  • Oracle Integration Cloud Plugin
    • [FLEXDEPLOY-3248] - OAuth is now supported.
  • SonarQube Plugin
    • [FLEXDEPLOY-3242] - Added SonarQube client path property at SonarQube analysis tool instance configuration.
  • Oracle Database Plugin
    • [FLEXDEPLOY-3041] - Support was added to allow for schema names to be different across deploy environments. To utilize this feature, the project property of schema name should remain unset. The plugin with then use the user name defined o the environment instance as the schema name in each environment. This does imply that only a single schema will be handle by a project when using this feature. To use multiple schemas across environments, the schema names must remain the same.

Resolved Issues

  • [FLEXDEPLOY-3372] - Service Now test connection gives bad error message when HTML response is received from REST API call. Test connection now also indicates if ServiceNow instance is hibernating.
  • [FLEXDEPLOY-3337] - Copying pipeline parallel or sub steps now maintains source structure. If a sub step is copied without it's associated parent step, then that step is added to the end of the existing steps in the target stage.
  • [FLEXDEPLOY-3333] - Jira test Connection gives bad error message when HTML response is received from REST API call. Also, clear error message is displayed in case of Forbidden 403 return code.
  • [FLEXDEPLOY-3298] - Pipeline Execution - In rare situation, stage steps were initiated twice causing some step to execute twice.
  • [FLEXDEPLOY-3292] - Fixed bug causing an exception to be thrown when refreshing the workflow execution page for running workflow.
  • [FLEXDEPLOY-3207] - Fixed bug where approval request email contained deployment comparisons for instances not mapped to the current stage (environment).
  • [FLEXDEPLOY-3192] - Fixed issue where some properties were not showing up in the Helm Parameter value script when using ctrl+space.
  • [FLEXDEPLOY-3171] - Project Files are now populated correctly for Microsoft TFVC sourced projects, when files are removed from source repository.
  • [FLEXDEPLOY-3330] - IMAP Store object was not closed, which caused it to be closed by background Finalizer thread (garbage collection). At times, this close was taking long or hanging which leads to memory issues for FlexDeploy application.
  • [FLEXDEPLOY-3302] - Webhooks findProjectsForChange, findPackagesForChange, and findProjectsForNewBranch functions were not correctly finding corresponding objects in some cases. Now, as expected, a webhook trigger needs to exist for a package to be returned, and an all files trigger needs to exist for a partial deployment project to be returned.
  • [FLEXDEPLOY-3341] - Thycotic Secret Server Integration Fixes.
    • SSL Handshake issues can cause Already connected exception, provide appropriate error message, so customer can take appropriate action.
    • GET call may fail with non 200 error code, in such case throw exception to signal failure.
  • [FLEXDEPLOY-3300] - Blueprint fixes
    • Environment sort number is now set as 1 for Build, 2 for Dev and 3 for Test. Previously both Build and Dev got 1 as sort number.
    • ORDS blueprint was marking Test environment as Build environment.
    • Workflow step name updated for ORDS build workflow.
  • EBS Plugin
    • [FLEXDEPLOY-2844] - "SHOW ERRORS" and "exit sql.sqlcode" commands are dynamically added or removed from deployment command at runtime for SQL files. If a SQL file does not contain "EXIT", then the commands are added to the deployment command, otherwise they are removed.
  • Terraform Plugin
    • [FLEXDEPLOY-3307] - Terraform plugin operations no longer halts execution for variable inputs, when the variables are already set.
  • ODI Plugin
    • [FLEXDEPLOY-3288] - Issue with incorrect inputs being passed to ODI SDK causing execution to throw Export Key Incorrect Format errors have been fixed.

FlexDeploy 5.5.0.0 (02-07-2021)

Version Details

With the 5.5 upgrade the first server start will migrate the plugins from the database to the filesystem.  This migration may take 10-20 minutes to complete, depending on the number of plugin versions you have on your server.  You will not be able to launch FlexDeploy in a browser until the migration completes.  After the migration all subsequent restarts will be as normal. 

General

Platform Updates

  • All plugins now support JDK 9, 10, 11
  • Endpoint base working directory permissions no longer set to world writable when using run as user on Unix.
  • Plugin JAR files are now stored on the FlexDeploy server filesystem instead of the database.  This increases storage requirements on the filesystem and decreases storage requirements on the database.

Project Classification

FlexDeploy has support for full and partial deployment style projects, as well as utility projects. Now we are introducing a new project type, namely Container, for Docker and Kubernetes use cases. When creating project, user can easily identify the classification (i.e. type) of the project being created. In addition, specific project configuration tabs are hidden to allow for a better user experience. Furthermore, if customer is not using Issue Tracking and/or Change Management integration those configuration tabs are also hidden.

Dynamic Packages

Partial deployment now support Dynamic Packages, in addition to the traditional user-managed packages.  Dynamic Packages, by virtue of include/exclude regular expressions, have their content managed automatically as new project files are populated into the project.  This feature simplifies the management of the package when it consists of files mapping to a folder and can be built and deployed together in a logical grouping.  FlexDeploy's change detection mechanism ensures that only files which have changed are deployed when the package is migrated.  As such, a dynamic package containing many files can safely deployed even when only a small subset of its files have changed.

Pre-deploy Workflows

The FlexDeploy workflow engine now supports "pre-deploy" workflows for standalone project execution, as well as pipeline execution. Pre-deploy workflows are executed prior to the actual deployment as a means to perform a validation or review. See Workflows for more details. This can be applied to many use cases where validation and/or review is required prior to deployment, and is supported for Terraform plan, Oracle DB Plugin review and Salesforce deployment validations out of box. For example, deployment for Oracle DB Plugin will create review tasks for Database Administrators where someone can review the calculated DDL statements to be executed and approve or reject it. This is an optional execution pattern, and can be adopted/adapted for use in custom workflow solutions as well. See blog article for an introduction.

Workflow Execution Reports

FlexDeploy now introduces the concept of report files, which are the result of any type of workflow execution, but are not necessarily artifacts. This may include files necessary to review Pre-deploy execution, but it can be used for other workflow types as well. For example, workflow designer can choose to save test execution files that may be used for further review of test execution. This is visible on workflow execution page.

Workflow Execution Tasks

Deploy and Utility workflow execution may have various approval, schedule or review tasks. Governance mechanisms are put in place as part of the process, and it may optionally include integration with external Change Management systems such as ServiceNow, BMC, or FreshService. Each workflow execution now displays any related tasks which were completed to help with easier auditability.  For example, a deployment execution may have had an approval task and a scheduled task which were part of the pipeline stage for the snapshot.

Oracle Transactional Business Intelligence

FlexDeploy now provides an innovative solution for building and deploying OTBI web catalog objects.  Using the partial deployment support paired with dynamic packages customers can migrate web catalog objects from source control or a development OTBI instance to other instances across the pipeline.  See blog article for an introduction.

Oracle CX Commerce

FlexDeploy introduces support for Oracle CX Commerce cloud service. This solution provides out of box support for build and deployment of Server Side Extensions for Oracle CX Commerce stores. Future versions of this solution will provide additional capabilities.

Thycotic Secrets Server

An integration with Thycotic Secret Server is now available out of the box, allowing secrets to be moved out of FlexDeploy and into your enterprise secrets solution.  Thycotic joins the other FlexDeploy secrets management integrations for Hashicorp, CyberArk, and Azure Key Vault.

Docker & Kubernetes

Several enhancements have been added regarding native container support within FlexDeploy. At the forefront is a reworked Project Container Configuration which now includes options to scan images via Anchore or DockerBench as well as automatically running containers during the deploy workflow. Performing container deployments in this fashion will also "link" the container to the Project allowing several quality of life enhancements including:

  • Starting/stopping the container
  • Viewing container logs
  • Viewing runtime statistics 

Other notable features include Kubernetes monitoring and direct links to your Kubernetes applications should your deployment have a service exposed.  See blog article for an introduction.

UX Improvements

Many UX improvements in 5.5 and throughout the last year.  Check out this recent blog article.

Other Enhancements

  • [FLEXDEPLOY-3149] - Issue Tracking System - comment groovy script now allows for InstanceCode, InstanceName, RelDefinitionId, ReleaseName, SnapshotId, SnapshotName, ServerBaseURL.
  • [FLEXDEPLOY-3094] - Webhooks - Added a buildProjects function to Github, Bitbucket, Bitbucket Server, GitLab, and Azure providers
  • [FLEXDEPLOY-3082] - Added the ability to test the connection for Teams and Slack Messaging instances
  • [FLEXDEPLOY-3081] - Added the ability to test the connection for Jenkins CI Server instances
  • [FLEXDEPLOY-3080] - Added the ability to test the connection for Nexus artifact repository instances
  • [FLEXDEPLOY-3031] - Added new Kubernetes integration instance in Topology
  • [FLEXDEPLOY-2867] - New Change History Report has been added, which shows history of group membership changes, user name changes, password changes, and active flag changes
  • [FLEXDEPLOY-2997] - Last login date for each user is now being saved and displayed on the users page, as well as on the users report
  • [FLEXDEPLOY-2919] - Added option to tag latest on the Docker project configuration tab
  • [FLEXDEPLOY-2867] - New Change History Report has been added, which shows history of group membership changes, user name changes, password changes, and active flag changes
  • [FLEXDEPLOY-2853] - Jira Issue Tracking Systems - New groovy variables added for Release Id, Release Name, Snapshot Id, Snapshot Name, Server Base URL, and Release Link
  • [FLEXDEPLOY-2809] - Added a variable 'topology' to the validation script of flexfields allowing several topology related functions to be executed
  • [FLEXDEPLOY-1989] - All running or queued workflow executions will now be failed upon server startup. This prevents any workflows that were running during a shutdown from being stuck in the Running state
  • [FLEXDEPLOY-1785] - Credential Stores and Providers can now be deactivated if not in use
  • [FLEXDEPLOY-1737] - Added ability to create a new pipeline by copying an existing pipeline. When editing pipeline, any number of steps and gates can be copied from one stage to another
  • [FLEXDEPLOY-1566] - REST API - Added the ability to get and update overridden project properties
  • [FLEXDEPLOY- 690] - When editing or creating a Credential from Project, Environment Instance or Credential screen, user has option to test the credential is valid for Database connections and HTTP Basic authentication based URLs

New Plugins

  • Oracle CX Commerce
  • Oracle Transactional Business Intelligence
  • DockerBench - two operations both centered around the docker bench container scanning utility
    • runDockerBench - Downloads and runs the docker-bench-security.sh with the provided arguments
    • runDockerBenchChecks - Identical to runDockerBench but provides helpful inputs for those not familiar with the docker bench security cli
  • Anchore - three unique operations for container scanning
    • scanLocalImage - Scans a local docker image for vulnerabilities. Unlike analyzeLocalImage, scan does not publish the results
    • analyzeLocalImage - Scans a local docker image and publishes results to a provided Anchore Engine application
    • analyzeImage - Submits a published docker image to be analyzed in an Anchore Engine application

Updated Plugins

  • Docker
    • [FLEXDEPLOY-2918] - Added option to tag built Docker image as latest from project configuration
  • Groovy
    • [FLEXDEPLOY-3157] - partial operation now gives an error message that contains the error messages of all previous errors when stop on error is false
    • See recent blog article
  • Jython
    • [FLEXDEPLOY-3157] - partial operation now gives an error message that contains the error messages of all previous errors when stop on error is false
  • Oracle Data Integrator
    • [FLEXDEPLOY-3067] - A new operation, applyRollbackArchive, has been added to allow the application of rollback archives
    • [FLEXDEPLOY-3066] - The plugin now supports the use of Export Key in patch archives to import secure data and the application of Initial Deployment archives
    • See recent blog article
  • Salesforce
    • [FLEXDEPLOY-3004] - Added New plugin operation 'analyzeApexCode'. It will help you find common programming flaws like unused variables, empty catch blocks, unnecessary object creation, and many more using PMD Source code analyzer.
    • [FLEXDEPLOY-3225] - Salesforce Plugin - Deploy for classes fails with error "Must specify the metadata file"
    • See recent blog article
  • Terraform
    • [FLEXDEPLOY-3141] - Terraform Plugin - Terraform plugin plan operation now generates a plan report file when changes are detected for compatibility with pre-deploy review

Resolved Issues

  • [FLEXDEPLOY-3203] - Approval Task - If background thread fails, no other tasks will be evaluated
  • [FLEXDEPLOY-2996] - Post Refresh Requests will now work with All Files Only Package Build Type
  • [FLEXDEPLOY-3182] - Issue Tracking System - Azure Boards testConnection not taking userid into account while validating
  • [FLEXDEPLOY-3169] - Deploy Request Form - Instance not mapped to any environments does not affect environment filtering at times
  • [FLEXDEPLOY-3166] - Folder and File Count display correctly when Project Workflow Request Screen is opened for the first time
  • [FLEXDEPLOY-3139] - Copying the project link now accurately URI encode the project name in the link
  • [FLEXDEPLOY-3068] - Double quotes in the input and property values are now escaped when the script code is generated
  • [FLEXDEPLOY-3054] - The first deployment of a package deployment to a target environment will update all ITS issues related to the current and any previous project build versions of the package
  • [FLEXDEPLOY-2923] - Git - Test connection fails with slash at end when using key auth
  • [FLEXDEPLOY-2904] - REST GET call may fail on Issue Tracking Instances if underlying ITS System is not active
  • [FLEXDEPLOY- 223] - Workflow Definition - Allow user to set an input as secure so that they can pass in a secure property, and then don't print that property since it is secure
  • [FLEXDEPLOY-3033] - Fixed issues with locking of git access when initializing of local repository
  • [FLEXDEPLOY-2473] - Resolved issue with several plugins failing on JDK 9+ with java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException

Incompatible Changes

REST Project API

FlexDeploy 5.5 introduces Project Classificationwhich replaces the Partial Deployment flag on the project.  As such, there is an incompatible change to the Project API. If you are using the Project API you should replace any POST/PUT request with the following:

Partial Deployments
//old
"partialDeployment": true,

//new
"projectClassification": "PartialDeployments"
Full Deployments
//old
"partialDeployment": false

//new
"projectClassification": "Standard"

For more information regarding projectClassification, see REST Project API.

Docker Registry

The Docker Plugin environment instance properties for Docker Registry AddressDocker Registry User, and Docker Registry Password have been combined into a Registry Account, which can now be specified as a Project Configuration, Plugin Input or Environment Instance property.