Changelog 0.4.0
UI
Changelog v0.7.0
[#651] Licensing
Breaking changes
Defined a licensing method that prevents the product from running in case the license is expired.
Migration
The Helm chart and the secrets should be updated. All the instructions are listed in the installation guides.
Related issue
Closes #651
[#718] RBAC subjects should always include namespace
Bug fixes
- RBAC now handles both subjects formats (namespaced subjects and implicit namespace subjects)
Related issue
Closes #718
[#536] Template doc not behaving as expected
New features and improvements
Open the template docs on a page instead of a modal
Related issue
Closes #536
[#562] Notify consumer components owners when a new version is released
New features and improvements
- When
new_version
gets called, a notification is sent to all consumers' owners of the DP. - A new relationship is emitted between consumers and consumed components. The relation, according to backstage practices, is bidirectional and of types
wb-isReadBy
andwb-readsFrom
.
Note: a consumer is a component that reads from the output port of another data product.
Related issue
Closes #562
[#689] Move the policies menu into a Governance super-menu
New features and improvements
- Move the Policies menu into a governance super-menu
- Updated menu icons
Related issue
Closes #689
[#692] Improve autotest for General section
New features and improvements
- Fixed tests for the new UI changes
- Added test which works with global search and advanced search functionalities
Related issue
Closes #692
[#710] Poor spacing between menus
Bug fixes
Increase spacing between menus.
Related issue
Closes #710
[#690] Add the Technical Information card in the marketplace
New features and improvements
Add the Technical Information card
Related issue
Closes #690
[#709] Clearer exceptions when the user is not found
Bug fixes
Improve descriptor preview error message handling when a user is not found.
Related issue
Closes #709
[#696] Repository path on scaffolding does not support trailing slash
Bug fixes
Add regex to handle initial and final slash on user/group text input cloning repository.
Related issue
Closes #696
[#703] Configurable Hasura role in JWT
New features and improvements
You can now optionally configure the default role and allowed roles injected in the user JWT for Hasura, using two properties
mesh.marketplace.hasuraClaims.x-hasura-allowed-roles
(default is['admin']
)mesh.marketplace.hasuraClaims.x-hasura-default-role
(default isadmin
)
Related issue
Closes #703
[#697] Change a label to address all YAML types
Bug fixes
Fix incomplete validation message label on component creation wizard.
Related issue
Closes #697
[#525] Adding permission to Front End
New features and improvements
Disable actions that the user cannot perform according to his role/permissions
Related issue
Closes #525
[#700] Extension points API overview
Closes #700
[#672] Refactor roles_subjects
RBAC table
New features and improvements
- Added new field
enabled
inroles_subjects
RBAC table to enable/disable a grant - Removed field
subject_kind
fromroles_subjects
RBAC table to remove unnecessary overhead when parsing grants requests
Breaking changes
enabled
field will be set totrue
for all existing records found inroles_subjects
. No further action is needed.
Migration
- Migrations are automatically performed by knex. No further action is needed by platform team.
Related issue
Closes #672
[#708] Align Policies query to latest fields names
Bug fixes
For validation policies:
updated_at
is nowupdate_time
created_at
is nowcreation_time
Related issue
Closes #708
[#701] Fix documentation links
Closes #701
[#670] Remove RBAC permissions from JWT token
New features and improvements
- Removed RBAC permissions from JWT token
- Fixed TechDocs issue caused by huge permissions header in JWT
Related issue
Closes #670
[#675] Fix marketplace breadcrumbs from Output Port to Data Product
Bug fixes
Fix the output port page breadcrumb error that happens when the user goes back from the output port page to the data product one
Related issue
Closes #675
[#668] Remove diagram tab from DP page
New features and improvements
Removed diagram tab from DP page
Related issue
Closes #668
[#688] Broken dropdown menu
Bug fixes
Fix the select environment combo-box on the policy page
Related issue
Closes #688
[#626] Review typography/spacing/layout
New features and improvements
Implement the new UI reducing the font sizes and re-arranging the pages' elements to improve the user experience.
Related issue
Closes #626
[#384] Fix minor documentation errors for local setup
Bug fixes
Fix minor documentation errors
Related issue
Closes #384
[#638] Scaffolding initial commit appears as user "witboost"
New features and improvements
- set current user as first commit author if not specified otherwise
- refactoring code to centralize this logic for gitlab and bitbucket
- add documentation with the priorities of user used for scaffolding operations (configuration first, then templates, then logged in user)
Bug fixes
Fixed a bug that used always a default witboost user for scaffolding initial commit
Related issue
Closes #638
[#684] Insert private descriptor field in Marketplace database
New features and improvements
- Added private_descriptor field in the Marketplace DB for DataProduct, OutputPort, and Component tables
Related issue
Closes #684
[#685] Improve and add autotest for the marketplace section
New features and improvements
- Added test 03_05 to check whether there will be a popup error if the deployment fails
- Added test 05_04 to check all tabs in Marketplace
- Added test 05_05 to check the visualization of graphs and the relationship between the names of circles and the names of the corresponding lines on the right tab
- Fixed deploy report step
Related issue
Closes #685
[#653] Add RBAC scaffolder action
New features and improvements
- Added RBAC Scaffolder Action
- Added RBAC Role Picker to be used in templates
- Improved RBAC client and splitted into frontend client and server-to-server client
- Increased test coverage of
wm-rbac-backend
- On
New Version
of a Data Product all permissions for the older version will be inherited for the newer version
Breaking changes
entityRefField
is now a required field for all configured Grant Mechanisms. If it is not given, witboost will complain about that. This is to prevent uniqueness constraint breaking onroles_subjects
table.- Added new field
visibility
inroles
table. It can assume two values:user
,internal
. it is a mandatory field.
Migration
- Make sure all configured Grant Mechanisms in
app-config
include theentityRefField
. If your previous Grant Mechanisms were not including an entity reference then you should change it. Grants created with Grant Mechanisms without entity ref are not supported anymore. - Field
visibility
inroles
table will be automatically created by knex on server startup. By default this field will have value:internal
Related issue
Closes #653
[#644] Data Product's page incorrectly retrieves who has access to its components
Bug fixes
Correctly displays the checkmark if the logged user has access to a component.
Related issue
Closes #644
[#664] Fix the last graph of the Mesh Supervision page
Bug fixes
- Fix missing token in question tab API call
- Fix question query in AverageQuestion chart
Related issue
Closes #664
[#633] Component page review
New features and improvements
- Removed Link section from component Page
- Hide Subcomponents table if there aren't subcomponent
Related issue
Closes #633
[#686] Wrong domain URN in roles_subjects
Bug fixes
Change encoding of value 'Domain' in function encodeKindForURN
.
Related issue
Closes #686
[#602] Fix Control Panel user interaction problems
Bug fixes
Improved the deploy open panel operation
Related issue
Closes #602
[#585] Template policies are applied only to one component
New features and improvements
Split test table list items in multiple components to improve readability and maintainability.
Bug fixes
Fix bug related to the same policy failure on multiple components.
Related issue
Closes #585
[#683] Test improvements and e2e tests from checklist
New features and improvements
- Structuring tests (suits)
- Add new tests, covering Builder
- Added test to check the environments with proper values. Change environments both in the dropdown menu and in the label of the table.
- Added test to check the environments list and pre-existing policies. Both government and template policies in every environment.
- Added test to check the marketplace section. Displaying and naming text elements: general info, dependencies, review, output port, and question.
- Improved, fixed, and finish the end-to-end test for the control panel. Fixed step in the marketplace to check DP and all data.
- Added test which covers the "schema", "linking" and "preview" tabs in the marketplace section.
- Added a step in an existing test to check values after choosing infrastructure or template list in creating the template policy phase.
- Changed the pipeline to allow runs on schedule
- Added a step to deploy test results to the GitLab page (Allure report)
Related issue
Closes #683
[#660] Centralize RBAC docs
New features and improvements
- Docs on how to configure RBAC are all under Platform section
- "How it works" docs of RBAC lies all inside Architecture section
Related issue
Closes #660
[#659] Append user: prefix to users in marketplace migration script
Bug fixes
- Added
user:
in front of identities in marketplace dump - Removed INSERT of useless rows in marketplace dump
Related issue
Closes #659
[#591] Migrate Notification table from marketplace to backstage DB
New features and improvements
- Moved Notification table from DB
marketplace
to DBbackstage
- Removed Hasura from notification CRUD layer; now it uses Knex. Hasura is also removed for ACL queries.
- Created a standalone
notification
plugin. Routed all CRUD APIs to this plugin.
Breaking changes
The notification plugin uses backstage
DB. To ensure continuity of data, the "Notification" table must be moved from the marketplace
db into the backstage
db.
Migration
There are two ways to migrate the notification table, copying all already stored data to preserve information.
- Via dblink A solution is use the Postgres extension dblink. This is the easiest solution to use, if the Postgres client supports it.
- Launch the platform, it will apply the necessary migrations.
- Open a new SQL script in the
backstage
DB, paste this snippet and run it:
create extension if not exists dblink;
insert into notifications.notification (select * from dblink('dbname=marketplace', 'select * from marketplace."Notification" n')
as t1(id int, kind text, notification_request jsonb, notification_response jsonb, recipient text, hook_id text, created_at timestamp, updated_at timestamp, sender text, read_at timestamp));
- Via shell Another solution is to manually connect to the Postgres instance shell and execute this script. This is for local containers, it will have to be declined with respect to the instance.
pg_dump -U postgres -t notification.\"Notification\" -a -h localhost marketplace | psql -U postgres -d backstage
Parameters:
-U
is a user who has both write and read access to the DBsmarketplace
andbackstage
. We use postgres in this example.-h
is the address of the Postgres instance. We use localhost in this case.
Related issue
Closes #591
[#657] EntitySelectionPicker disabled feature
New features and improvements
- EntitySelectionPicker can be disabled for free user input by using already existing
allowArbitraryValues
function in the template.yaml like we used for other pickers - EntityPicker now has an option to hide like the EntitySelectionPicker #656
Related issue
Closes #657
[#656] Add hidden field option in the EntitySelectionPicker
New features and improvements
EntitySelectionPicker can now be hidden with including the this option in the template
ui:options:
ui:widget: 'hidden'
Related issue
Closes #656
[#654] Clarify scopes format in RBAC docs
New features and improvements
- Added subjects section in RBAC docs
Bug fixes
- Clarified scopes formats in RBAC docs
Related issue
Closes #654
[#650] Improve docs for RBAC
New features and improvements
- Permissions Scopes explained
- Divided permissions into Catalog, Builder, Marketplace
- Added permissions cookbooks
- Improved grant mechanisms explanation
Related issue
Closes #650
[#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
[#649] Add docs about creating new dp version
New features and improvements
- Added docs describing how to create a new version for a data product
Related issue
Closes #649
[#648] Add docs on how to inspect policy test errors
New features and improvements
- Added docs explaining policy errors inspection
Related issue
Closes #648
[#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 totrue
to enable them.
Related issue
Closes #646
[#647] Remove docs screenshots with Lorem Ipsum samples
Bug Fixes
- Changed some screenshots containing "Lorem Ipsum" sample data
- Some minor fixes in docs
Related issue
Closes #647
[#487] Documentation review
New features and improvements
- Documentation restructured in: user, architecture, platform.
Breaking changes
If you have some docs on your branch, please check which is the correct section to apply your modifications since there is a completely new documentation structure.
Related issue
Closes #487
[#637] Create End 2 End report
New features and improvements
- Implemented Allure report to the automation tests.
- Added step in e2e pipeline (Page). It will save and deploy allure report to the GitLab Pages.
- Variable involved in pipeline schedule settings to run necessary only steps in e2e testing (Check, E2E test, E2E deploy)
- Improved 02 and 03 tests: added step when a user create policy by uploading cue file.
- Added test ## 06: a user modifies data, create/add environment in output port by editing repo file.
Related issue
Closes #637
[#643] PayloadTooLargeError error during data product validation
Features
- Added possibility to configure payload size limit for the Builder router through
mesh.builder.payloadSizeLimit
property
Bug fixes
- Augmented payload size limit in Builder router so that it can accept payloads up to 10mb
Related issue
Closes #643
[#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
[#642] Fix Downtime Chart example
Bug fixes
Display the last 300 values in the Downtime charts
Related issue
Closes #642
[#625] Remove amcharts library
New features and improvements
Replace amcharts with chartjs
Related issue
Closes #625
[#634] Improve external resources dashboard
New features and improvements
Updated the dashboard page of the external resources.
Related issue
Closes #634
Provisioning Coordinator
Changelog v0.6.1
[#184] Get provisioning plan returns too many tasks
Related issue
Closes #184
[#183] Bug on provisioning persistence - error serialization
Related issue
Closes #183
Changelog v0.6.0
[#181] Provisioning plan query returns no task information
Related issue
Closes #181
[#179] Update the interface-spec doc
New features and improvements
- Updated specific_provisioner_api.md with the deployInfo feature.
Related issue
Closes #179
[#126] Compatibility problems on Windows 10/WSL 2 local environment
Related issue
Closes #126
[#169] Implement multi-jvm tests
New features and improvements
Defined a new set of suites to perform multi JVM tests.
Related issue
Closes #169
[#173] provisioning plan save always the same task
Bug fixes
The update statements was incorrect, a task update apply the update to all record instead of only to the related task id
Related issue
Closes #173
[#172] Infrastructure layer logging
New features and improvements
Lower logging for repository queries
Related issue
Closes #172
[#171] Template validation version check for useCaseTemplateid / infrastructureTemplateId
Related issue
Closes #171
[#170] Migration fix
Bug fixes
fix possible error in provisioning plan query
Related issue
Closes #170
[#170] Fix migration script
Bug fixes
Fix the database migration script
Related issue
Closes #170
[#170] Migration failure in dev environment
Bug fixes
Provides default values for newly added columns
Related issue
Closes #170
[#168] Bug during query access
Bug fixes
Flyway now starts during application startup
Related issue
Closes #168
[#147] Refactor repository implementation
New features and improvements
New repository implementation
Breaking changes
in some cases there will not be a single transaction for related inserts
Related issue
Closes #147
[#157] Deploy info needs to be sent to marketplace
New features and improvements
- Added code for handling deployInfo/buildInfo descriptor fields
Related issue
Closes #157
[#139] Specific provisioner OpenAPI specification is not valid
Bug fixes
Fix on the OpenAPI specification to make it compliant with standards
Related issue
Closes #139
[#162] Improve docs structure
New features and improvements
- Docs structure refactoring
Related issue
Closes #162
[#161] Added deployment model
New features and improvements
- Added docs regarding deployment model
Related issue
Closes #161
[#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
New features and improvements
resolve error on option.get
Related issue
Closes #152
[#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
[#159] Deploy with some validation error should return the correct error message
Bug fixes
- Modified DataProductValidationError message
Related issue
Closes #159
Marketplace Plugin
Changelog v0.6.0
[#45] Fix question removal
Bug fixes
- Removed delete_Question from delete API.
Related issue
Closes #45
[#43] Separate public fields from private in deployInfo/buildInfo
New features and improvements
- Introduced private and public descriptor management
Related issue
Closes #43
[#44] Fix for deploymentUpdate
Related issue
Closes #44
[#41] Fix all the foreign key errors in insertOrUpdate and delete
New features and improvements
Aligned the db used for integration tests with the one that is in dev
Bug fixes
Fixed all the foreign key constraint during upsert and delete
Related issue
Closes #41
[#42] Custom changes for the marketplace
Related issue
Closes #42