Skip to main content

Changelog 0.3.0

UI

Changelog v0.6.0

[#603] Improvements on E2E tests for control panel

New features and improvements

  • Added end-to-end test: scenario where user creates DP and modifies repo file (both of the data and the output).
  • A user using button: "New Snapshot", "Commit", "Deploy", "Undeploy".
  • After each modifying, there will be assertions of expecting results to check if it's going the right way.
  • There will be checking is buttons clickable or not (in dependence of logic and rules, after pressing for example or if button must be not clickable) during progress of scenario.
  • In addition, this branch has schedule pipeline settings that can use to configure another pipeline.

Related issue

Closes #603 Closes #612

[#572] Change environments in Mesh Supervision

Migration

You need to set the priority field for the Environment table of the marketplace.

It is mandatory that the "production" environment has a priority of 0, and all the others have the priority field with a value greater than 0 (they will be displayed in the UI in ascending order of priority).

Bug fixes

Now the dashboard correctly displays the data taken from the underlying environments.

Related issue

Closes #572

[#630] Breadcrumb is not working properly

Bug fixes

Show Parent Dataproduct inside the component page breadcrumb

Related issue

Closes #630

[#616] Add RBAC permission for authoring policies

New features and improvements

Add RBAC permission for authoring policies

Migrations

You will need to add the permissions builder.policy.global.edit and builder.policy.template.edit to the platform users that can create and edit governance policies.

Related issue

Closes #616

[#632] Typo in resources setup docs

Bug fixes

  • Fixed typo in resources setup docs

Related issue

Closes #632

[#621] Use array fields in the RBAC configuration

New features and improvements

RBAC plugin configuration (referencing the field in the catalog-info.yamlfile) can now deal with arrays of strings while keeping the possibility of using strings only.

Related issue

Closes #621

[#628] Permissions for the deploy action should be by environment

New features and improvements

This MR allows you to assign permissions for action deploy by environment

Breaking changes

The permission: builder.dp.deploy no longer exist, it was then deleted from the permissions table and from roles_permissions table. With this issue we introduced some new permissions instead in the format builder.dp.deploy.<envName>. Please note that the <envName> will always be lowercase.

Migration

It is necessary to associate the various deploy permissions (in table roles_permissions), otherwise, the action is not allowed to anyone.

Related issue

Closes #628, #622

[#586] Refresh entity not allowed due to RBAC

Bug fixes

Users can now refresh entities from the Register existing component procedure

Related issue

Closes #586

New features and improvements

Added some documentation regarding the usage of Microsoft AD in the app-config.yaml

Related issue

Closes #627

[#618] Trace requests with ID

New features and improvements

This PR allows you to enter a trace ID in the log. This way you can easily identify all the logs related to the same request. To get to this it was used a AsyncLocalStorage. This class is used to associate state and propagate it throughout callbacks and promise chains. They allow storing data throughout the lifetime of a web request or any other asynchronous duration. It is similar to thread-local storage in other languages.

Migration

[Optional Configuration]

*Tracer configuration*
tracer:
# Respect request header flag (default: false). If set to true, the middleware/plugin tracer will always use a value from the specified header (if the value is present).
useHeader: false
# Request/response header name, case insensitive (default: 'X-Request-Id'). Used if useHeader/echoHeader is set to true.
headerName: 'X-Request-Id'

Related issue

Closes #618

[#623] Remove comments from JSX of repo picker

Bug fixes

Removed undesired comments inside repo url picker

Related issue

Closes #623

[#620] Create a migration script to align urn from domain to dmn

New features and improvements

Creates a knex migration script to update the column entity_ref in roles_subjects.

Convert urn:witboost:domain:<name>

to urn:witboost:dmn:<name>

Related issue

Closes #620

[#567] External Resources UI

New features and improvements

Create an interface to view the external resources.

To enable this view set the needed configuration mesh.externalResources to true. This feature requires also the setup of a schema structure for the External Resources data. This schema update must be requested and applied manually.

Related issue

Closes #567

[#600] Domains' URN in RBAC tables

Breaking changes

There can be breaking changes, since the table roles_subjects in column entity_ref may contain incorrect values

Migration

It is necessary to use this SQL script to align the table roles_subjects

update rbac.roles_subjects
set entity_ref = replace(entity_ref, ':domain:',':dmn:')
where entity_ref LIKE '%:domain:%';

Bug fixes

The urn for the entity of type domain has been standardized: urn:witboost:dmn:<name>

Related issue

Closes #600

[#619] Improve docs for setting up RBAC for kind Resource

New features and improvements

  • Updated docs to make evident that entities of kind Resource must be explicitly made visible to users when setting up RBAC, unless users are already allowed to read entities within the same domain

Related issue

Closes #619

[#598] Details panel fields overlapping

New features and improvements

Fixed a Ui error in the "About" card where the system attribute goes to a new line

Related issue

Closes #598

[#596] AD groups with a double underscore

New features and improvements

Standardized the normalization of the names of the entities for the modules catalog-backend-module-msgraph and catalog-backend-module-ldap.

It is also possible to customize the normalization function by inserting some properties in the configuration which modify its behavior:

catalog:
processors:
entityNameNormalization:
regex: "<regex>"
replaceWith: "<replace_with>"
....

This allows you to indicate through a regex which characters to replace, and which characters replace them. If you want the base behavior, you can ignore the configuration above.

Related issue

Closes #596

[#593] RBAC user documentation

New features and improvements

User documentation related to the RBAC feature. Removed an unused column for roles scope.

Related issue

Closes #593

[#595] Add ID to policy dropzone CUE file

New features and improvements

Add an ID to the dropzone input so it's accessible with

document.getElementById("policy-upload-input").click()

Related issue

Closes #595

[#581] Missing Locations and Resource read permissions

New features and improvements

  • Improved the RBAC rule generation mechanism
  • Added docs for setting up resources visibility

Bug fixes

  • Fixed bug causing resources entities to not be visible from users

Notes

  • Locations entities will still be hidden from end users. They don't need to access them.

Related issue

Closes #581

[#533] Fix typo in My Data Products

Bug fixes

  • Fixed typo for the word My Data Product in the breadcrumb navigation

Related issue

Closes #533

[#564] Editable description field inside the RepoUrlPicker

New features and improvements

  • Added editable fields for RepoUrlPicker

Related issue

Closes #564

[#592] Upgrade Backstage version

New features and improvements

Backstage upgraded from 1.4.0 to 1.8.2. This should solve issues related to old versions of vm2.

Related issue

Closes #592

[#612] Resolve "Fix scheduled pipeline"

New features and improvements

  • fix scheduled pipeline

[#577] End to End test for control panel

New features and improvements

  • Removed build, test, package, and deploy stages in the E2E pipeline. Now we would have only checked and e2e stage in the schedule pipeline.
  • Added a new test scenario that tests the relationship between global and template policies and DPs, applying them to new Data Products.
  • Added a new test to check the appearance of changes in the control panel that was added by changing the repository file.
  • Added templates for new three tests.

Bug fixes

  • Fixed errors with current tests by adding browser.refresh() before changing the environment.

Related issue

Closes #577

[#594] Themes disappear after refreshing the UI page

Bug fixes

Fix custom style path

Related issue

Closes #594

[#579] Fix migration script in acl table

Bug fixes

This PR fix the migration script to add new constraint on table ACL. In the case we have multiple row with same value on field id_output_port and refs we keep only the last updated rows. In this way it is possible create unique constraint on fields id_output_port and refs

This PR fix the visualization of informative notification UI side.

Related issue

Closes #579

[#574] Make updateACL idempotent

New features and improvements

This PR modifies the behavior when ACL requests are accepted on output port.

The current implementation forwards all users/groups that have access to that output port (both those of previously accepted requests and those related to the new request).

Having the whole list of users/groups available, the operation of the specific provisioner in case of addition or deletion is the same.

Related issue

Closes #574

Changelog v0.6.1

[#634] Improve external resources dashboard

New features and improvements

Updated the dashboard page of the external resources.

Related issue

Closes #634

Changelog v0.6.2

[#643] PayloadTooLargeError error during data product validation

New features and improvements

  • Added possibility to configure payload size limit for the Builder router through mesh.builder.payloadSizeLimit property

  • Augmented payload size limit in Builder router so that it can accept payloads up to 10mb

Related issue

Closes #643

Changelog v0.6.3

[#652] Data Product components are not visible

Bug fixes

  • Now users that have visibility over a data product can also view its components

Related issue

Closes #652

[#646] Observability tab hidden by default

New features and improvements

  • Observability tabs are now hidden by default. This is governed by the optional parameter mesh.marketplace.ui.showObservability. Set it to true to enable them.

Related issue

Closes #646

[#641] Fix wrong error on deployment failure

Bug fixes

Improved the way witboost backend communicates with the Provisioning Coordinator. This solves an error that appeared in case a deployment failed for validation errors: since the error was not handled, the deploy operation failed with an error in another point of the code that couldn't find the right data. Now errors raised during the calls to the Coordinator should be handled correctly.

Related issue

Closes #641

Provisioning Coordinator

Changelog v0.5.0

[#155] Add the error message when the specific provisioner has failed

Bug fixes

Added error message when specific provisioner fails.

Related issue

Closes #155

[#153] SSL configuration is not used in http client calls

New features and improvements

Re-enable ssl

Related issue

Closes #153

[#146] Fix the marketplace response unmarshalling

Bug fixes

  • Refactored Marketplace function and solved the unmarshalling error

Related issue

Closes #146

[#145] Fix some coordinator little issues

Bug fixes

  • fixed a Marketplace Plugin response unmarshalling error
  • validation errors are now returned as 200

Related issue

Closes #145

[#136] Refactoring provisioning coordinator

New features and improvements

Coordinator refactored

Breaking changes

Error management in every class now is handled using either

Related issue

Closes #136

Changelog v0.5.1

[#159] Deploy with some validation error should return the correct error message

Bug fixes

  • Modified DataProductValidationError message

Related issue

Closes #159

[#150] Remove useless dependsOn nested field in the getProvisioningPlan response

New features and improvements

  • Removed useless dependsOnTasks inside the Task object
  • Sorted components task on the basis of dependsOn

Related issue

Closes #150

[#160] The validation must return the validation policies even when they pass

Bug fixes

  • Added policy validation results even when they passes

Related issue

Closes #160

[#152] Unhandled error in validation service

Bug fixes

resolve error on option.get

Related issue

Closes #152

Marketplace Plugin

Changelog v0.5.0

[#39] Delete also the rows in ACL table for the delete API

Bug fixes

  • Added ACL deletion in the delete API

Related issue

Closes #39

[#37] Marketplace Plugin fails to upsert

Bug fixes

  • Fixed a bug that prevented the string fields to contain special characters

Related issue

Closes #37