Changelog v2.2.0
UI
Changelog
Changelog v2.2.0
[WIT-3849] Visual discovery bug fixes
Bug fixes
- Theme and config docs are now aligned with the current visual discovery pages' state
- Only the top-level domains now show labels when the zoom is 1 in the visual discovery graph
- The currently selected system in the visual discovery graph is now deselected when the search term changes and it’s no longer in the results
- Search state now resets in visual discovery graph when environment or data landscape change
- System labels don’t cut text in the visual discovery graph
Related issue
Closes WIT-3849
[WIT-3844] Documentation rendering error
Bug fixes
- Fixed a documentation rendering error
Related issue
Closes WIT-3844
[WIT-3833] Error on entity unregistration
Bug fixes
- Fixed the import of an unnecessary react module
Related issue
Closes WIT-3833
[WIT-3843] Component identifier picker fails
New features and improvements
- the IdentifierPicker now supports a custom definition of the name and domain fields used to generate the identifier
- the IdentifierPicker now has a flag to disable the validation if needed
Bug fixes
- in case you need to use the IdentifierPicker without the validation, now you can by setting the relative flag.
Related issue
Closes WIT-3843
[WIT-3824] Dependencies tab improvements
New features and improvements
Improvements in the dependencies tab:
- edited cursor
- hover on the system element
- output port cards are fully clickable
- resized elements to enter in full screen from the desktop
Related issue
Closes WIT-3824
[WIT-3830] Visual Discovery Popover improvements
New features and improvements
- Visual Discovery popover improvements
Related issue
Closes WIT-3830
[WIT-3814] Add search and filters to the components table in the overview page
New features and improvements
- Added search and filters in the table custom view element
Related issue
Closes WIT-3814
[WIT-3833] Error on entity unregistration
New features and improvements
- Introduced new events on entity registration/unregistration.
Bug fixes
- Moved all the post-unregistration actions to the right event subscriber.
- Used service authentication for all the cross-plugins actions instead of the logged user's one
Related issue
Closes WIT-3833
[WIT-3832] Wrong error displayed on domain unregister
Bug fixes
- Fixed the message shown to the user on domain registration that contains systems.
Related issue
Closes WIT-3832
[WIT-3825] Visual discovery refinements
New features and improvements
- Minor improvements in the Visual Discovery page
Related issue
Closes WIT-3825
[WIT-3407] Data Contracts graph custom view docs
New features and improvements
- Updated the custom view docs including the new visual discovery-related views
Related issue
Closes WIT-3407
[WIT-3780] Add search and filters to the output ports in the marketplace pages
New features and improvements
- Added search in output ports panel in dependencies tab
Related issue
Closes WIT-3780
[WIT-3770] Introduce logicallyReadsFrom relation
New features and improvements
- Introduced a logical reads from relation as a "shallow" alternative to the standard reads from relation, to document data flows between projects.
Related issue
Closes WIT-3770
[WIT-3566] Remove unused entries when the feature is not enabled
New features and improvements
- removed unused value in the combo box for engines
Related issue
Relates to WIT-3566
[WIT-3804] Improvements on the visual discovery page
New features and improvements
- added the empty hexagon icon
- improved the on change search handle
- fixed stories
Related issue
Closes WIT-3804
[WIT-3796] Improvements data contract page
New features and improvements
-
Align system box with dependencies page system:
- Changed taxonomy to domain
- Put the domain under the system name with breadcrumbs
-
Change popover system:
- Put name on two lines (header)
- Removed system name from breadcrumbs
Bug fixes
- Fix the system icon in the search
- Improve data contract popover interaction
Related issue
Closes WIT-3796
[WIT-3793] Improvements on the dependencies page
New features and improvements
- Removed the disabled button when no input connections
- Removed the disabled button then no output ports
- Changed the link icon on the system elements
- Tooltips on graph buttons
Related issue
Closes WIT-3793
[WIT-3645] Visual discovery search
New features and improvements
- Added tree view and panel research on visual discovery
Related issue
Closes WIT-3645
[WIT-3678] Make creation templates instantiate skeleton entities
New features and improvements
- Creation templates can now instantiate skeleton entities and their parameters
- Introduced 'readonly' skeleton parameters: they can be read, but not modified, by Edit Templates
- Introduced the
__instanceOf__
reserved parameter - Added support for recursive Nunjucks expressions within skeleton parameters
- Performance improvements on the
fetch:template
action
Bug fixes
- Fixed a bug that was preventing the creation templates, other than system/component templates, to be registered
- Fixed a bug that was preventing the creation templates to instantiate domains
Related issue
Closes WIT-3678, WIT-3727
[WIT-3801] Added section in the GETTINGSTARTED to create an auth-key
New features and improvements
- Added a step to describe how to create an auth-key to invoke the Core module's backend API
Related issue
Closes WIT-3801
[WIT-3792] Fix for blueprints URL
Bug fixes
- Fixed the routes for the Blueprint and Template pages
Related issue
Closes WIT-3792
[WIT-3761] Fix non-text file corruption in template editor
Bug fixes
- All images in the template editor are properly rendered
- The binary files are not corrupted anymore
Related issue
Closes WIT-3761
[WIT-3646] Display error in visual discovery
New features and improvements
- Add policy violations display functionality in the visual discovery page
Related issue
Closes WIT-3646
[WIT-3714] Zoom in improvements
New features and improvements
- Improved the Dependencies Tab with visual upgrades
Related issue
Closes WIT-3714
[WIT-3774] Document new RBAC permissions
New features and improvements
- Added documentation about the new permissions to handle permissions and roles
Bug fixes
- Fixed the permission cookbook documentation which stated that no permissions were needed to see the template list where it needed
catalog.entity.create
Related issue
Closes WIT-3774
[WIT-3766] Fix multiple microfrontends per page error
Bug fixes
- Added a key for every microfrontend loaded on a single page, to avoid loading the same for every tab
Related issue
Closes WIT-3766
[WIT-3591] Add Witboost missing relations in the Builder dependencies graph
Bug fixes
- Fixed the Builders' "Relations" card to display all the Witboost relations
- Fixed the Catalog Graph page to display all the Witboost relations
- Patched the plugin to remove the "wb-" prefix from all the Witboost's relations
Related issue
Closes WIT-3591
[WIT-3641] Data contracts lineage pagination
New features and improvements
- the data contracts graph now progressively fetches only the data of data contracts it needs to show
Related issue
Closes WIT-3641
[WIT-3431] Visual discovery view controls
New features and improvements
- Added zoom controls and fit-in-view function in visual discovery
Related issue
Closes WIT-3431
[WIT-3412] Data contracts graph view controls
New features and improvements
- Added zoom controls in the data contract tab
Related issue
Closes WIT-3412
[WIT-3712] Data contracts minor refinements
New features and improvements
- Small UI improvements in the Data Contracts Tab
Related issue
Closes WIT-3712
[WIT-3764] Fix the identities picker title
Bug fixes
- Fixed an error that prevented the title of the identities picker from being displayed.
Related issue
Closes WIT-3764
[WIT-3762] Fix component identifier picker
Bug fixes
- Reviewed the validation mechanism for the identifier picker at the component level.
Related issue
Closes WIT-3762
[WIT-3731] Builder microfrontends
New features and improvements
- Added the possibility to add micro-frontends to the builder pages. You can add micro-frontends to the system detail page and the component detail page, in a similar way to the existing one for the marketplace pages.
Related issue
Closes WIT-3731
[WIT-3759] Fix for the blueprint documentation
Breaking changes
- Changed the URL of the template page to
/templates
and of the blueprints page to/blueprints
.
Bug fixes
- Fixed a bug where the blueprint documentation was not shown on the blueprints list page.
Related issue
Closes WIT-3759
[WIT-3430] Visual discovery heatmap
New features and improvements
- Added heatmap Show button that enables the heatmap layer
Related issue
Closes WIT-3430
[WIT-3721] Fix descriptor generation error after editing
New features and improvements
- Refactored the descriptor builder for performance optimizations
Bug fixes
- Resolved an issue where the "entity not found" error could occasionally appear after saving changes via the Editor Wizard
Related issue
Closes WIT-3721
[WIT-3643] Connect visual discovery and search to overview data contracts and dependencies tabs
New features and improvements
- Connected the marketplace results with Overview, Dependencies, and Data Contracts Tabs
Related issue
Closes WIT-3643
[WIT-3553] Introduce support for skeleton entities in Editor Wizard
New features and improvements
- Extended the Editor Wizard to support skeleton entities and parameter updates (preview)
Related issue
Closes WIT-3553
[WIT-3608] Define default RBAC
New features and improvements
- Introduced the global scope on roles subjects represented by the string
*
on theentity_ref
field. Roles subjects with global scope are allowed to all catalog entities respecting the role's permissions in the entry. - Introduced two new permissions:
rbac.role.create
used to create roles, andrbac.role.edit
used to edit them (assigns permissions and roles subjects). - Introduced the new startup action, which registers a default preset of roles, roles permissions and optional roles subjects. Presets are chosen using configuration
startupActions.rbac.preset
and roles subjects can be assigned via configuration
Breaking changes
- Calls to the RBAC POST and DELETE endpoints are now guarded under the new
rbac.role.create
andrbac.role.edit
, so users performing requests to these endpoints must now have granted these permissions beforehand.
Migration
- Add to an existing admin role the new permissions
rbac.role.create
andrbac.role.edit
, or create a new role assigning these permissions to the users that need to perform said requests.
Related issue
Closes WIT-3608
[WIT-3648] Minor UI improvements for marketplace dependencies page
New features and improvements
- Removed open details popup in the system node in the dependencies tab
- Removed overview tab from drawer panel in dependencies tab
- Replaced link from zoom-in to dependencies tab
- Updated buttons in System Popover and Data Contract Popover
Related issue
Closes WIT-3648
[WIT-3725] Fix core project's vulnerabilities
Bug fixes
- Fix the known vulnerabilities for which a remediation exists.
Related issue
Closes WIT-3725
[WIT-3723] Update CODEOWNERS
New features and improvements
- Updated Core repository's CODEOWNERS
Related issue
Closes WIT-3723
[WIT-3642] Data contracts lineage interaction improvements
New features and improvements
- Miscellaneous improvements to the Data Contracts Graph's interaction
Related issue
Closes WIT-3642
[WIT-3632] Ui disabled support for entity relations picker
Bug fixes
- Added ui:disable support for entity relations picker
Related issue
Closes WIT-3632
[WIT-3647] Disable data landscape division
New features and improvements
- Disabled the data landscape division
Related issue
Closes WIT-3647
[WIT-3628] Description not editable for entity search picker
Bug fixes
- Added description field to Entity Search Picker as helper text
Related issue
Closes WIT-3628
[WIT-3636] Move data contract lineage to marketplace details
New features and improvements
- Removed the Data Contracts page as a standalone page and made it a tab in the system marketplace details page.
Related issue
Closes WIT-3636
[WIT-3510] Automate the EULA setup as a script
New features and improvements
- Introduces the EULA documents to the core package
Related issue
Closes WIT-3510
[WIT-3640] Relations tab
New features and improvements
- Added the new tab for the relations graph in the marketplace's system detail page.
Related issue
Closes WIT-3640
[WIT-3630]Extend the RBAC documentation
New features and improvements
- Extended RBAC documentation with more details and examples.
Related issue
Closes WIT-3630
[WIT-3610] Align default custom views with best practices
New features and improvements
- Align default custom views with the new data product specification
- Removed support for
gridInfo
andsideInfo
in dataProductPage and outputPortPage fields
Breaking changes
Removed support for gridInfo
and sideInfo
in dataProductPage and outputPortPage fields to migrate to custom views
Migration
If you have previously configured gridInfo
or sideInfo
for Data Product Page or Output Port Page and wish to retain that information, you can move those fields directly to the corresponding CustomView and place them wherever you like them to be
Related issue
Closes WIT-3610
[WIT-3633] Change the default environment from development to default
New features and improvements
- Changed the default authorization environment value
auth.environment
fromdevelopment
todefault
Breaking changes
- Instances where authorization is defined and
development
is used as a key under the provider configuration (that is, the objectauth.providers.<provider_name>.development
exists) andauth.environment
is not overridden, authorization will break.
Migration
-
On instances where authorization is defined and
development
is used as a key under the provider configuration (that is, the objectauth.providers.<provider_name>.development
exists) andauth.environment
is not overridden, either:- Set
auth.environment
todevelopment
- Set the environment name key "environment" on
auth.providers.<provider_name>.<environment>
todefault
. Example:
- Set
Old:
auth:
providers:
microsoft:
development:
clientId: #CLIENT_ID
clientSecret: #CLIENT_SECRET
tenantId: #TENANT_ID
New:
auth:
providers:
microsoft:
default:
clientId: #CLIENT_ID
clientSecret: #CLIENT_SECRET
tenantId: #TENANT_ID
Related issue
Closes WIT-3633
[WIT-3635] Refine the governance table
New features and improvements
- Removed "Resource Preprocessing" column from Governance - Policy Table and related Filter
*Bug Fixes *
- Fixed Name and Description column on small-size screens
Related issue
Closes WIT-3635
[WIT-3622] Getting started md improvements
New features and improvements
- Improved the GETTINGSTARTED.md
Related issue
Closes WIT-3622
[WIT-3549] Visual discovery connections
New features and improvements
- Added connections between nodes in discovery graph
Related issue
Closes WIT-3549
[WIT-3408] Data contracts overview zoom-in
New features and improvements
- Implement a change of view when selecting a system in the data contracts overview page: the view will show systems and data contracts connected to that system and allow further exploration of connected elements.
Related issue
Closes WIT-3408
[WIT-3552] Define a custom parser for parameterized catalog info files
New features and improvements
- Introduced parameterized (skeleton) catalog info files and parameters
- Defined a custom entity parser to convert raw skeleton catalog info files to catalog entities
- Added support for skeleton entities on: descriptor generation, new system version, new system snapshot, and new release
- Defined reserved fields and parameters in skeleton entities and the related update rules
- Implemented a custom reader processor to handle skeleton catalog info files
Bug fixes
- Fixed an issue on the descriptor preview panel (Edit and Test tab) that prevented correctly reading catalog info files from multi-level git branches (e.g.,
level1/level2/level3
)
Related issue
Closes WIT-3552
[WIT-3607] Create a data mesh practice shaper location and set it as default
New features and improvements
- Introduce the Practice Shaper Register Action, which registers a set of entity locations about Practice Shaper taxonomies, and sets the Data Mesh taxonomy as default. When Witboost is first installed or upgraded to the newest version (v2.2.0), AND the instance doesn't contain an existing taxonomy already, the platform will register the taxonomy unless overridden (setting
startupActions.catalog.practiceShaperLocations
to[]
)
Breaking changes
When Witboost is first installed or upgraded to the newest version, AND the instance doesn't contain an existing taxonomy already, the platform will register the Data Mesh taxonomy unless overridden
Migration
If the taxonomy is not desired to be registered on new installations, set startupActions.catalog.practiceShaperLocations: []
before upgrading Witboost to the newest version
Bug fixes
Fixed a list of examples provided that weren't valid due to missing the mesh
required field
Related issue
Closes WIT-3607
[WIT-3619] Remove hardcoded snippets from ingress definition
New features and improvements
- Removes hardcoded properties from the nginx definition.
Related issue
Closes WIT-3619
[WIT-3546] Detail pages show more
New features and improvements
- Added responsive behavior (optional) for custom view
- Improved "show more" button for fields
Related issue
Closes WIT-3546
[WIT-3433] Visual discovery legend
New features and improvements
- Implemented the visual discovery legend
Related issue
Closes WIT-3433
[WIT-3508] Startup Action plugin
New features and improvements
- Introduced the Startup Actions plugin, which defines a fixed set of actions to be executed when starting Witboost. Each action is executed correctly once, and the result is stored in the database. If an action is completed, further updates or re-installations of Witboost won't retrigger it.
- Implemented the Location Register Startup Action, which receives a list of locations to be registered on the catalog at startup. This action is useful for registering locations like Practice Shaper or templates.
Related issue
Closes WIT-3508
[WIT-3606] Remove hardcoded ssl redirect from ingress
Bug fixes
- Removes
nginx.ingress.kubernetes.io/ssl-redirect
from ingress template
Related issue
Closes WIT-3606
[WIT-3414] UI container security review
New features and improvements
Restricts the securityContext of the backend and storybook docker images. This allows to use non-root user in the securityContext.
- set
backend.workingDirectory
to/tmp
in app-config. This MUST NOT be overridden by values.yaml in installations - changed techdocs base path to
/tmp
in app-config. This MUST NOT be overridden by values.yaml in installations
Related issue
Closes WIT-3414
[WIT-3594] Fix the wrong merge in arrays with environment configurations
Bug fixes
- during the descriptor build phase, if an environment configuration is set, and an array merge must be done, the target value will replace the source value entirely
Related issue
Closes WIT-3594
[WIT-3547] Default view for marketplace search
New features and improvements
- add new configuration under
mesh.marketplace.ui.searchPage.defaultView
that can holdcards
ortable
value - default to
cards
view
Bug fixes
- tags as strings are correctly displayed in table view
Related issue
Closes WIT-3547
[WIT-3547] Default filters in marketplace search
New features and improvements
- added new key
defaultValues
to the list of filter config
example:
mesh:
search:
marketplace-projects:
filters:
- field: _computedInfo.owner.displayName
label: Owner
type: choice
# Optional default values for a custom filter
defaultValues:
- 'Admin'
- field: tags
label: Tags
type: choice
- field: kind
# Optional default values for a pre defined filter
defaultValues:
- 'dataproduct'
Related issue
Closes WIT-3547
[WIT-3573] Improve error on missing token permissions
New features and improvements
- Improve the error shown when the token does not have enough permissions.
Related issue
Closes WIT-3573
[WIT-2669] PoC on the visual discovery
New features and improvements
- Introduces a draft of the new visual discovery page
Related issue
Closes WIT-2669
[WIT-3542] Implement policy prompt display on update and display pages when the engine is agent
New features and improvements
- Added a constant for using the agent engine's endpoint as the default value.
Related issue
Closes WIT-3542
[WIT-3539] Refresh notifications on the page open
New features and improvements
- Added refresh of notifications data on navigation
Related issue
Closes WIT-3539
[WIT-3336] Fix the search for name values in the builder
Bug fixes
- search now correctly filters entities frontend side for
spec.mesh.name
values with dots
Related issue
WIT-3336
[WIT-3542] Update CGP engine usage
New features and improvements
- Update the integration between the UI and the new CGP engine
Related issue
Closes WIT-3542
[WIT-3290] Fix collating subcomponents in search
Bug fixes
- subcomponents are now correctly collated when the scheduler triggers the collator
Related issue
WIT-3290
[WIT-3290] Subcomponents in search page
New features and improvements
- add sub-components in the search page
- add parent component reference in sub-component's overview page
Related issue
Closes WIT-3290, WIT-3291
[WIT-3541] Fix missing relations in processors
New features and improvements
- made some relations not mandatory: by this, we mean that processing of the source entity is successful even if the target entity is not present in the catalog
- refactored the code to create more separation of duties of the functions that create the relation.
Related issue
Closes WIT-3541
[WIT-3429] Zoom in refinements
Bug fixes
- Resolve ui problems on zoom-in page
Related issue
Closes WIT-3429, WIT-3500, WIT-3498
[WIT-3534] Fix indexing during stitching phase
Bug fixes
- indexing is now fixed during stitching when duplicates are present and also inside arrays
Related issue
WIT-3534
[WIT-3534] Remove duplicates check in the stitching phase
Bug fixes
- add only the unique keys to the output during the stitching phase
Related issue
Closes WIT-3534
[WIT-3015] Fix Witty Governance Agent Engine UI
New features and improvements
- Added the new engine in the UI
Related issue
Closes WIT-3015
[WIT-3429] Resolve minor bug
Bug fixes
- Override stepper style
- Fix on Edit And Test Cards
Related issue
Closes WIT-3429
[WIT-3189] Implement a cron expression picker
New features and improvements
- Created CronExpressionPicker
Related issue
Closes WIT-3189
[WIT-3533] Start report delivery after subscription
Bug fixes
- added the missing start command after subscriptions
Related issue
Closes WIT-3533
[WIT-3372] Update breadcrumbs user experience
New features and improvements
- Added ellipsis and shortening as breadcrumbs' optional props
Related issue
Closes WIT-3372
[WIT-3411] Extend ACL to subcomponents
New features and improvements
- Defined a new configuration
mesh.marketplace.ui.accessControl.requestDialog.maxNumberOfVisibileResources
(default: 5): it determines the maximum number of resources — which are affected by an access request — to show in the access request dialog summary. Ifnull
the resource list is not limited - ACLs are now strictly associated with consumable components or subcomponents
- Added support for static access permissions on subcomponents
- Updated Access Control panel (Marketplace) and Data Access panel (User Settings) to display permissions and active access requests also on subcomponents
- Improved access control tooltips in the Marketplace
Bug fixes
- Fixed the kind/type filter in the
Data Access
panel accessible from the user settings - Fixed visibility rules for the
Request Access
button on non-shoppable systems in the Marketplace
Related issue
Closes WIT-3411
[WIT-3374] Split in new tabs component on detail panel
New features and improvements
- Split the new tabs component in the detail panel.
Breaking changes
- Add indentation for subcomponents on the detail panel
Related issue
Closes WIT-3374
[WIT-3527] Convert Azure dimensions to lowercase
New features and improvements
- all Azure dimensions defined are now lowercase
Bug fixes
- fixed a small issue with DescriptorPicker
Related issue
Closes WIT-3527
[WIT-3395] Remove handle when no connections
New features and improvements
- Removed from the zooming page the handles when there are no connections
Related issue
Closes WIT-3395
[WIT-3449] Data contracts graph rework
New features and improvements
Implementation of the new data contracts graph layouting algorithm
Related issue
Closes WIT-3449
[WIT-3486] Fetch all data contracts in EntitySearchPicker
New features and improvements
- pre filter
system
is not mandatory anymore in the data contract provider: if not specified, all data contracts will be fetched - added
system
user filter - if the pre filter
filter.system
is specified in the template, the user filtersystem
will be ignored, if present
Related issue
Closes WIT-3486
[WIT-3485] Add flat dimensions for Azure Marketplace
Bug fixes
- add flat dimensions for billing reports
Related issue
Closes WIT-3485
[WIT-3476] Make the OIDC plugin resolution configurable
New features and improvements
- Make the OpenId connect profile resolution configurable. When the provider returns a user, it can be matched against a Witboost user by specifying the attributes/annotations to match.
Bug fixes
- Fixed an error that prevented a failed login from showing the reason for the failure to the user.
Related issue
Closes WIT-3476
[WIT-2954] Data Contract Provider
New features and improvements
- add the data contract provider
Bug fixes
- fix consumable provider default environment
Related issue
Closes WIT-2954
[WIT-3467] Azure Marketplace dimensions
New features and improvements
- kill process if delivery fails
- added dimensions as defined
- added tests
Related issue
Closes WIT-3467
[WIT-2606] Save practice shaper graph positions
New features and improvements
- Each node position is saved in the local storage and used to initialize positions when available
Related issue
Closes WIT-2606
[WIT-3469] Fix Template and Blueprint page search
Bug fixes
- Fix search in blueprint and template pages
Related issue
Closes WIT-3469
[WIT-3453] Fix payload size limit in Practice Shaper
Bug fixes
- The payload size limit in the practice shaper is now aligned with the platform payload limit size
Related issue
Closes WIT-3453
[WIT-3444] Upgrade yarn version to 4
New features and improvements
- Upgraded Yarn to version 4
- Upgraded the base docker image to bookworm
- Removed insecure packages with vulnerabilities (high and/or critical)
Related issue
Closes WIT-3444
[WIT-3450] The Data Preview component does not accept the path parameter with the custom view
New features and improvements
- Removed the live data link in the Marketplace > Consumable Interface overview page
Bug fixes
- Now
path
is being taken by the Data Preview component - The no data icon is shown again in the Data Preview component
Related issue
Closes WIT-3450
[WIT-3451] Default component page custom view doesn't show data contract status
Bug fixes
- The component
marketplace_data_contract_policy_status
in the defaultmarketplace_component
custom view no longer defines an obsoletepath
value.
Related issue
Closes WIT-3451
[WIT-3437] Handle late status for data contracts with no results
New features and improvements
- The latency warning is now shown also in the case of data contracts with no results available and late status
Related issue
Closes WIT-3437
[WIT-3315] Remove requirements docs from the repository
Breaking changes
- The requirements doc is moved to the installation repo
Related issue
Closes WIT-3315
[WIT-3445] Fix payload size limit in Marketplace
Bug fixes
- Payload size limit in the marketplace is now aligned with the platform payload limit size
Related issue
Closes WIT-3445
[WIT-3379] Custom view documentation
New features and improvements
- Adds documentation for the zoom-in page custom views
- Add support for
typeId
andtemplateId
for the zoom-in page custom views - Align zoom in page custom views Input Object structure with the standard structure (descriptor fields are in the root, _computedInfo includes outside the descriptor)
- Improve zoom-in page detail panel style
Related issue
Closes WIT-3379
[WIT-3428] Make marketplace disabled by configuration
New features and improvements
- Using the
mesh.marketplace.enabled
configuration, you can completely remove the marketplace module from Witboost by setting it to false
Related issue
Closes WIT-3428
[WIT-3423] Improve marketplace generation script
New features and improvements
- Improved the script to generate data for subcomponents and data contracts
- Added the possibility to remove previously inserted data
Related issue
Closes WIT-3423
[WIT-3345] Integrate data contract monitoring result scheduling
New features and improvements
- The guardian specification — in a guardian descriptor — now supports and validates the definition of monitoring result scheduling info
- When data contract monitoring results are late, a warning is displayed in the Witboost Marketplace
Related issue
Closes WIT-3345
[WIT-3425] Data contracts graph error when result not found
Bug fixes
Fix an error in the data contracts graph when hovering over a data contract whose last result does not exist
Related issue
Closes WIT-3425
[WIT-3420] Introduce the disabled option in the EntitySearchPicker
Bug fixes
- Introduced the
ui:disabled
option in EntitySearchPicker
Related issue
Closes WIT-3420
[WIT-3289] Data contracts graph
New features and improvements
- Implements the new look of the data contracts graph
Breaking Changes
The key dataProduct
in the relationsGraph
palette object has now been renamed system
.
Migration
In customPalette.json
, if relationsGraph.dataProduct
was defined, rename it to relationsGraph.system
instead.
Related issue
Closes WIT-3289
[WIT-3406] Fix nested yaml substitution
Bug fixes
- Fix nested yaml substitution
Related issue
Closes WIT-3406
[WIT-3393] Zoom in improvements
New features and improvements
- Renaming and minor fixes on the zoom-in page
Related issue
Closes WIT-3393
[WIT-3394] Fix the error thrown when the personal token is not set
Bug fixes
- Reworded the error that was thrown in case no personal git token was set during editing
Related issue
Closes WIT-3394
[WIT-3210] Pickers with "allOf"
New features and improvements
- Updated the documentation, explaining the "required" property for the dependent picker in an "allOf"
Related issue
Closes WIT-3210
[WIT-3024] Update the reverse provisioning page
New features and improvements
- Align the reverse provisioning edit page to match the edit template wizard.
Related issue
Closes WIT-3024
[WIT-3338] Fix handling of practice shaper graph entities with the same name
Bug fixes
- Changed set values. From name (not unique) to 'name/kind'
Related issue
Closes WIT-3338
[WIT-3382] Fix href tags in the custom view
Bug fixes
- href in tags now correctly works when setting the display value
Related issue
Closes WIT-3382
[WIT-3380] Fix Editor Wizard that crashes if validation fails
Bug fixes
- Editor Wizard does not crash anymore if a required field is left blank
- DescriptorPicker can now be emptied
Related issue
WIT-3380
[WIT-3193] Visual discovery zoom-in page
New features and improvements
- introduced the new Zoom-In page to show dependencies between systems
Related issue
Closes WIT-3193
[WIT-3370] Allow personal access token when Builder APIs are invoked with server JWT
New features and improvements
- allow the invocation of the Builder APIs with a server JWT while the
usePersonalToken
configuration is set
Bug fixes
- fixed a bug that prevented the releases from being shown in the UI when created by a non-user
Related issue
Closes WIT-3370
[WIT-2955] Add documentation for data contracts
New features and improvements
- Data contracts documentation: user and platform team manuals.
Related issue
Closes WIT-2955
[WIT-3281] Document witboost hardware requirements for k8s
New features and improvements
- Add hardware requirements
Related issue
Closes WIT-3281
[WIT-3368] Fix search in the builder
Bug fixes
Search is now handled backend side only, by using fields:
spec.mesh.name
spec.mesh.tags
metadata.description
metadata.tags
Related issue
Closes WIT-3368
[WIT-3359] Set new data contracts page as default
New features and improvements
- In custom views infos, the "__" prefix is removed in the label of internal fields
Related issue
WIT-3359
[WIT-3346] Documentation for data contract custom views
New features and improvements
- Updates docs for custom views related to the new data contracts page
Related issue
Closes WIT-3346
[WIT-3362] SelectWidget with one option
Bug fixes
- SelectWidget is not disabled whenever there's only one available option unless required.
Related issue
Closes WIT-3362
[WIT-3359-FollowUp] Minor fixes on data contracts
Bug fixes
- removed check in the descriptor for data contracts guardians
- subcomponents in the data contracts graph
Related issue
WIT-3359
[WIT-3359] Refine data contracts implementation
Bug fixes
- Subcomponent were displayed in the search result page
- Subcomponents can now be included in the
readsFrom
list - Fixed data contract drawer custom view download
Related issue
WIT-3359
[WIT-3308] Paginate my project and software catalog pages
New features and improvements
- Added backend pagination for "My Projects" page
- Added backend pagination for "Software Catalog" page
- Removed deprecated Classes for "Favorites" boolean filter
- Made rows per page configurable
Migrations
The number of rows per page can be configured in the app-config.yaml
file for both the My Projects
and Software Catalog
:
builder:
ui:
# TODO this configuration will be removed as soon as the Backstage version will be updated
myProjectsPage:
# It corresponds to the number of projects to display in the "My Projects" page
pageSize: 25
# TODO this configuration will be removed as soon as the Backstage version will be updated
softwareCatalogPage:
# It corresponds to the number of entities to display in the "Software Catalog" page
pageSize: 25
Related issue
Closes WIT-3308
[WIT-3314] Align failed runtime policy notifications to the new CGP resource model
New features and improvements
systemFixNeeded
andsystemOpsImpact
notifications now also handle violations on components and subcomponentssystemFixNeeded
andsystemOpsImpact
notifications have been extended with some new fields:wasAlreadyNonCompliant
- indicates whether the resource was already non compliant with the policy even before this last failureorigin
- a reference to the parent system when the failed resource is a component or subcomponentisDataContractViolation
- whether the resource is a data contract and the reported policy failure is a data contract violation reported by its data contract guardian
systemFixNeeded
andsystemOpsImpact
notifications now support a new configurationskipIfAlreadyNonCompliant
to optionally skip sending the notification if the resource has remained non-compliant with the policy continuously since the last notification was sent. Its scope can be limited to data contracts only- When
systemFixNeeded
andsystemOpsImpact
notifications report data contract violations, their message is diffrent from and more specific than the one on generic runtime policy failures
Bug fixes
- The
notifications.systemOpsImpact.triggerEnvironments
configuration of thesystemOpsImpact
notification was not being read from the expected configuration path
Related issue
Closes WIT-3314, WIT-3332
[WIT-3031] Fix reference parsing in IdentifierPicker
Bug fixes
- Parsed domain entity ref in IdentifierPicker
Related issue
Closes WIT-3031
[WIT-3293] Fix optional parameters in config
Bug fixes
- add missing optional operator in config
Related issue
WIT-3293
[WIT-3293] Data Contracts Settings
New features and improvements
- refactored cron in governance frontend, it is now part of wb-platform
- added cron expression check also in the descriptor validator
- fixed notification name for subcomponents
- fixed some typos in docs and other small improvements in code
- added
_computedInfo.dataContract.settings
object as described in WIT-3293 - new object available in config under
mesh.marketplace.ui.dataContracts.settings
:
mesh:
marketplace:
ui:
dataContracts:
settings:
rootPath: path.to.dataContract.settings # defaults to dataContract.settings
ingestionModePath: path.to.ingestionMode # defaults to rootPath.ingestionMode
onBrokenContractPath: path.to.onBrokenContract # defaults to rootPath.onBrokenContract
descriptionPath: path.to.description # defaults to rootPath.description
Related issue
Closes WIT-3293
[WIT-3327] Data contract graph API integration
New features and improvements
- Update the query used to populate the new data contract page by using the new marketplace table (with the policyId) and the governance API
Related issue
Closes WIT-3327
[WIT-3336] Fix the search functionality for entities with dots in their name
Bug fixes
- if an entity name has a dot in its display name, the search will now work
Related issue
Closes WIT-3336
[WIT-3209] IdentifierPicker crashes when the domain is stored as an object
Bug fixes
- The IdentifierPicker doesn't crash when the domain is an object
Related issue
Closes WIT-3209
[WIT-3251] RegexPicker fails in arrays
Bug fixes
- Resolved custom validation of an array field with regex
Related issue
Closes WIT-3251
[WIT-3334] Rename environment variables
Improvements
Make environment variables consistent
- Deprecate
HASURA_ADMIN_SECRET
in favor ofHASURA_GRAPHQL_ADMIN_SECRET
- Deprecate
DB_
in favor ofCORE_DB_
- Prepend
CORE_
to all the specific variables
Related issue
Closes WIT-3334
[WIT-3179] Default value for a dependent picker is not honored
Bug fixes
- SelectWidget now sets the default value when the dependent picker value changes.
Related issue
Closes WIT-3179
[WIT-3304] Fix Tech docs templates drawer
Bug fixes
- you can now navigate using the left menu in the template tech docs drawer
Related issue
Closes WIT-3304
[WIT-3326] Data contract details api integration
New features and improvements
- Add integration with the governance API to fetch the real policy details in the new data contract drawer
Related issue
Closes WIT-3326
[WIT-3242] ACL revoke button
Bug fixes
- If any ACL row access is provided the revoke button is disabled
Related issue
Closes WIT-3242
[WIT-3307] Use Hasura dependency config map
New features and improvements
- Until now, the graphql endpoint had to be specified in the UI configuration. Now, Hasura automatically calculates the endpoint and places it in a "dependency" config map
Bug fixes
- Fixes some unescaped characters that prevented documentation from building
Related issue
Closes WIT-3307
[WIT-3288] Data contract drawer
New features and improvements
- Add a new Data Contract page (accessible by setting
mesh.marketplace.ui.nextDataContractsPage.enabled
attrue
) duplicated from the current one, containing a new custom viewmarketplace_data_contract_drawer
displayed as the drawer of a selected Data Contract - Add data contract policy result data (mocked for now) as the available data for the
marketplace_component
custom view
*Bug fixes *
- Fix a bug where the data contract graph would attempt to show subcomponents of a data contract
Related issue
Closes WIT-3288, WIT-3287, WIT-3298
[WIT-3292] Populate data contracts table after provisioning
New features and improvements
- created new table
data_contracts
in marketplace - add graphql queries for the new table
data_contracts
- add data contracts rows in table after provisioning
- add new checks to validate the descriptor
- add unit tests
- refactored some methods for better readability
- add descriptor validator check also in the backend commit method, so that an error is thrown also in the deployment tab
Bug fixes
- tooltip in edit and test now correctly updates if validation error is solved
- clean up operations now correctly show subcomponents
- undeploy for subcomponents now correctly removes row in
instances
Related issue
Closes WIT-3292
[WIT-3108] Audit table cleaner
New features and improvements
- changed column
date
from text type to timestamp in the audit table; - added a database cleaner for the audit table: the default job runs every day, and removes entries older than 6 months
Related issue
Closes WIT-3108
[WIT-3259] Github integration
New features and improvements
- Introduced the integration with GitHub. This contains a way to define the new GitHub action and all the facilities needed to store the user's personal token, define a mono repo and multiple repositories, fetch branches, and perform all the builder operations (snapshot, commit, release, and new version).
Related issue
Closes WIT-3259
[WIT-3322] Added description in marketplace instances for domains
New features and improvements
- Ingested description for domain instances for marketplace domains
Related issue
Closes WIT-3322
[WIT-3321] LDAP entity provider is not taking vendor configuration
Bug fixes
- Fixed a bug that prevented LDAP entity provider to take vendor specific configurations set under
mesh.ldapOrg
Related issue
Closes WIT-3321
[WIT-2956] Add registration for guardian infrastructure templates
New features and improvements
- Extended the infrastructure template registration to support guardian templates
- Updated the OpenAPI spec for the template registration endpoint
Related issue
WIT-2956
[WIT-3310] Add logging to LDAP entity provider
New features and improvements
- Added some debug logs on the LDAP catalog module which helps troubleshoot ingestion issues
Related issue
Closes WIT-3310
[WIT-3258] Okta integration
New features and improvements
- Introduced Okta as a new authorization provider
- Introduced Okta as a new organization provider
Related issue
Closes WIT-3258
[WIT-3264] Policy result widget
New features and improvements
- Align the data contracts policy result widget to new design
Related issue
Closes WIT-3264
[WIT-2953] Add descriptor validator for data contracts
New features and improvements
- add
DescriptorValidator
- add tests
- add checks for data contracts
- subcomponents cannot inherit:
__dataContractEnabled
,__dataContractGuardianSpec
from parent
Related issue
Closes WIT-2953
[WIT-3041] Explode sub components in the marketplace
New features and improvements
- Added marketplace migration to explode sub components by making them instances
- Modified marketplace backend
insert-provisioning-results
anddelete
APIs to handle sub components - Modified Hasura queries to show correctly sub components into output port page, visual discovery and data contracts
Related issue
Closes WIT-3041, WIT-3200
[WIT-3263] Update resource evaluation status calls
New features and improvements
- Redirected policy violation and metric status calls to the new CGP's resource evaluation status endpoint
- In the marketplace, policy violations and metric results are now also displayed on components
Related issue
Closes WIT-3263
[WIT-347] Centralize environments
New features and improvements
- expose endpoint to fetch centralized environments from external sources
- add environment service in the backend to fetch environments from backend modules
- add environment API to fetch centralized environments from frontend modules
Breaking changes
- priorities are no longer present in db
marketplace.environments
Migration
- if you want priorities, set them under
mesh.builder.environments
like this:
environments:
- name: dev
priority: 1
- name: prod
priority: 0
otherwise, leave it as it was before, but then priorities will not be present (the first one in the list will be taken as the one with the highest priority)
environments:
- production
- development
Related issue
Closes WIT-347
[WIT-3252] Entity Picker not populated correctly
Bug fixes
- Entity Picker default value is now loaded correctly
Related issue
Closes WIT-3252
[WIT-3250] Fix selectAll action selecting not shoppable components
Bug fixes
- Fix selectAll action selecting not shoppable components
Related issue
Closes WIT-3250
[WIT-3257] Fix noDataLabel and noDataCheck in custom views
Bug Fixes
- In custom views, noDataCheck on the card and sub-card components don’t visualize the card if no data condition is met
Related issue
Closes WIT-3257
[WIT-3160] Handle wrong kind parameter in Software Catalog URL
Bug fixes
- Fixed the selection of the first kind available if the kind parameter in the URL is wrong.
Related issue
Closes WIT-3160
[WIT-3001] Introduce the small logo and favicon
New features and improvements
- Introduced the custom small logo
- Restyled Witboost's favicon
Related issue
Closes WIT-3001
[WIT-3241] Re-introduce the "Select all" button when selecting components to request access
New features and improvements
- Re-introduce the "Select all" button when selecting components to request access
- The button is visible only if
mesh.marketplace.multipleAccessRequestSelection
istrue
Related issue
Closes WIT-3241
[WIT-3246] Fix LDAP provider configuration
Bug fixes
- LDAP configuration now correctly reads the environment
Related issue
Closes WIT-3246
[WIT-3244] Fix domain filters in case sub-domains have empty groups
Bug fixes
- Fix a bug where filters would break if a parent domain had no matching results but one of its subdomains did
Related issue
Closes WIT-3244
Provisioning Coordinator
Changelog v1.9.0
[WIT-3815] Fixed unexpected removal of empty component lists from the descriptor
Bug fixes
- Empty component lists are no longer removed from the descriptor.
Related issue
Closes WIT-3815
[WIT-3798] Update README with info for local run
New features and improvements
- Updated README.md with useful info for the local run
Related issue
Closes WIT-3798
[WIT-3560] Updated Governance Engine in the OpenAPI specification
New features and improvements
- OpenAPI specification of agent governance agent engine is up to date.
Related issue
WIT-3560
[WIT-3723] Update code owners
New features and improvements
- Updated Core repository's CODEOWNERS
Related issue
WIT-3723
[WIT-3653] Update README with local setup instructions
Bug fixes
Added some details on the README to:
- avoid a failure in coordinator run if there's not a local running Witboost UI instance
- fix a frequent error, especially on Windows, in the sbt compile phase
Related issue
Closes WIT-3653
[WIT-2612] Fix Tech Adapter Spec to return a text/plain content when the response status code is 202
Bug fixes
- The Tech Adapter OpenAPI specification has been fixed to return a text/plain content when the response status code is 202
Related issue
Closes WIT-2612
[WIT-3560] Document Governance Agent Engine
New features and improvements
- Witboost's documentation on agent governance agent engine and policies is up to date.
Related issue
WIT-3560
[WIT-2942] Add support for Governance Agent Engine
New features and improvements
- Added support for Governance Agent Engine
Related issue
Closes WIT-2942
[WIT-3452] Register primary resource before evaluating a derived one
Bug fixes
- When registering a derived resource, the primary resource from which it derives is now automatically registered if not already persisted
Related issue
Closes WIT-3452
[WIT-3366] Vulnerability Assessment
New features and improvements
- Upgraded cue version to 0.10.1
- Upgraded node version to 20
- Changed the reference to the docker image to use specifically the cue version needed
Related issue
WIT-3366
[WIT-3446] Fix evaluation result scheduling update rules
Bug fixes
- In case of result scheduling update, if the current result deadline is set and has expired, the new deadline — derived from the new frequency expression — can extend the previous one but cannot reduce it. Otherwise, the new deadline is computed starting from the current time
Related issue
Closes WIT-3446
[WIT-3195] Change error type on evaluation timeout
Bug fixes
- Timed-out governance entity evaluations are no longer marked as "not started" but as failed with the outcome depending on the governance entity severity
Related issue
Closes WIT-3195, WIT-3312
[WIT-3345] Add result scheduling to resource evaluation status
New features and improvements
- CGP: The resource evaluation status can now include details about the expected result frequency
- Coordinator: The Data Contract Provisioning task now updates the expected frequency for data contract monitoring results on CGP, based on the guardian's specification
Related issue
Closes WIT-3345
[WIT-3359] Fix data contract partial provisioning
Bug fixes
- Fixed partial provisioning on data contracts and guardians
Related issue
Closes WIT-3359
[WIT-3357] Coordinator default metadata template upsert creates race condition
Bug fixes
- Upserting default template metadata now is sequential to avoid race conditions on Coordinator startup
Related issue
Closes WIT-3357
[WIT-3314] Align failed runtime policy event to the new resource model
New features and improvements
- Affected resources in a "Runtime policy failed" events now include a
wasAlreadyNonCompliant
field to indicate whether the previous status of the resource in relation to the evaluated policy was already in error - Affected derived resources in a "Runtime policy failed" events now include a
origin
field with a reference to their origin resource
Related issue
Closes WIT-3314
[WIT-3337] Fix mock tech adapter environment retrieval
Bug fixes
- the Mock Tech Adapter is not loading witboost-secrets env vars
Related issue
Closes WIT-3337
[WIT-3229] Autoregister mock tech adapter and use it in the default template
New features and improvements
- Introduced the configuration
provisioning-coordinator.template-metadata
to allow default template metadata registration at startup
Related issue
Closes WIT-3229
[WIT-3335] Rename env variables
New features and improvements
- For a better management of env variables, we want to remove all the env variables that will be specified ad umbrella chart level.
Related issue
Closes WIT-3335
[WIT-3302] Create Database name field
New features and improvements
- Secrets inside the
witboost-secrets
are now entirely loaded as env variables. This is more flexible because developers don't have to add each single env var to the yaml file.
Breaking changes
The extraEnv
field is now an array. The reason behind this change is that as a string, it would not expand anchors, which we use in the umbrella chart to have a cleaner configuration.
The configuration changes from this
extraEnv: |-
- name: SQL_DBNAME
value: "provisioning_coordinator"
To this
extraEnv:
- name: SQL_DBNAME
value: "provisioning_coordinator"
Bug fixes
GCP Database configurations are using the same configurations of the Provisioning Coordinator (same env vars), with the only exception of the db host. This is inconsistent.
This MR adds the GCP_DB_
prefix to all the other DB configurations for GCP, and COORDINATOR_DB_
prefix to all the DB configurations for the coordinator. All database configs have now a fallback to the newly introduced WITBOOST_DB_
configuration.
This MR also adds configurations that were missing and aligns the GCP database config table to the PC one.
Related issue
Closes WIT-3302
[WIT-2959] Implement provisioning for guardian components
New features and improvements
- A data contract provisioning task in now included in the provisioning plan when there's a request to deploy data contracts or guardians
- New endpoints on CGP to register and fetch resources, and update their evaluation status in relation to a governance entity
Related issue
Closes WIT-2959, WIT-3294
[WIT-2956] Add registration for guardian infrastructure templates
New features and improvements
- The registration endpoint for infrastructure templates now supports data contract guardian properties
- Added support for data contract guardian template registration and editing
- Optimized the governance entity status change operation on CGP by removing unneccessary steps
Related issue
Closes WIT-2956
[WIT-3147] Implement resource handling
New features and improvements
- Introduced resources and resource evaluation status
- Refactored the evaluation process to work with resources and update the resource evaluation status
- Exposed a new endpoint
POST /v1/computational-governance/resources/evaluation-status/search-query
to query the evaluation status of one or more resources - Introduced a configuration flag — intended only for maintenance or development purposes — to skip the environments retrieval from the platform services
Breaking changes
- CGP endpoint
GET /v1/computational-governance/evaluation-reports
has been dismissed - Policy violations and metric results endpoints have been dismissed
Related issue
Closes WIT-3147
[WIT-3277] Fix missing secrets in deployment for envs
Bug fixes
- add secret PLATFORM_SERVICES_BACKEND_BASE_URL
- add secret PLATFORM_SERVICES_HTTP_SECRET
Related issue
Closes WIT-3277
[WIT-347] Pull environments from core services
New features and improvements
- environments are fetched from the UI at startup
Breaking changes
- added environments configuration and secret in GCP, instead of a list of hardcoded environments
- to pull environments at startup, the core service should be up and running
Migration
- define
PLATFORM_SERVICES_BACKEND_BASE_URL
env var, that will be placed underplatform-services.base-url
of cgp config - define
PLATFORM_SERVICES_HTTP_SECRET
env var (backstage token), that will be placed underplatform-services.http-secret
of CGP config
Related issue
Closes WIT-347