
* Role based access control * Fix build + checkstyle * Refactoring, some bug fixes, review fixes * Compile permission value patterns * Make the resource a enum instead of a string * Refactoring * Make clusters required * Fix formatting * switch the switch case to a smart switch case * Get rid of topic analysis actions * Rename endpoints, fix an issue * Return a flag indicating if rbac is on and a username * Fix yaml indent in editorconfig * Fix github & cognito role name fetching * Fix case matching for actions * Update readme * Add an endpoint to determine if a user can create a resource * Fix tests (I hope so) * Fix tests * Use spring configs instead of a separate file, rename endpoints * Add "ALL" action Get rid of unnecessary cache, save groups into spring auth Review fixes * Make "all" action case-insensitive * Role based access control / FrontEnd (#2933) * Initial modifications and mocking the For the RoleAccess * fix the Suspense issue in the components , comment the Tests to implement later * minor test comment * Roles and configuration and santization of data * initialize RoleCheck hook * make the App test file visible + minor modification in the permission hook * Structure the data so the Burger header toggle does not rerender the whole application * add tests to the NavBar and the Page container , add tests * NavBar and PageContainer bug fixes * Roles Testing code modification * covering Topics create button Actions, and Schema create button Actions * minor typescript code modifications for the cluster required parameter in the rolesHelper * minor typescript code modifications for the cluster required parameter in the rolesHelper * minor code modification to describe the Permission tests more clearly * Produce message Permissions with Tests Suites for Topic * Add Schema Edit Permission with tests * Minor role changes * Add ActionButton Component to handle the Button with tooltip * Add ActionButton Component to handle the Button with tooltip * Add Action Button to every Button create Action * ActionButton add test suites * usePermission code modification to include regular expressions * Abstract Actions Component for code repetition, add Configs Edit button Permission + add the tests suites to it. * Schema Remove functionality Permission and Test Suites + creation of the ActionDropdownItem for Actions * Topic Edit Clear and delete Topic , Permissions with test suites * ActionsCell For Topic Message Overview for permissions with tests suites * Connector Delete , Consumer Groups Permission + writing test suites * Add Permissions to the Topics ActionCell * Topic Table Permissions Tests Suites * Headless Logic for the Permission Part * add documentation for the headless Part of the permission + add modification of the data version 2 for efficient algorithmic lookup * replace modify data logic and isPermitted function to have faster access to the data * Add Permission helpers tests suites * usePermission hook test suites * BatchActionsBar add Permissions + minor modification in TopicTable tests suites * Statistics and Metrics code Permission + add test suites * Recreate Topic Permissions in the Topic page, add tests suites * Actions for the Connector components * Messages NavLink View Permission * Test suites messages code modifications * Permissions comment code modifications * Replacing the Mock Data With the actual code * Add ActionNavLink test suites * BatchActionsBar code smell modifications * maximizing the permissions tests suites * maximizing the permissions tests suites * maximizing the permissions tests suites * Tooltip code refactoring and fix the positions issue * permissions increase the tests coverage * add user info at the navigation header and tests suites * Add Global Schema Selector Permissions with test suites * Roles minor code removal * Change the Action Component form hook mixin approach to declarative props approach * add isPermitted function for multiple Actions , adding tests suites for this particular case * remove redundant Permissions test blocks from the components * remove redundant Permissions test blocks from the components * Action Buttons test suites' coverage + generalizing the code of the Actions * add invalid Permission check in Action Components tests suites * Modularization of Actions Components * Modularization of Actions Components by adding DropDownAction to it. * Reflect the BE Changes to the UI , by changing the default behavior or the testing of roles. * Reflect the BE Changes to the UI , by changing the default behavior or the testing of roles. * Get rid of not necessary usePermission mocks * Modifications in the UserInfo data , to consider the UI without any login functionality * minor code modifications in the BatchActionBar component * change the Query key for the user info * change the default message for the tooltip * Fix the Create Role Access for Topics and Schemas * ListPage Connector create permissions * add Headless logic for Create Permission with test suites. + add react hook render-er * Create Button ActionButton logic implementation * Remove Code smells , by removing the duplications * increase the test suites for isPermittedToCreate logic * increase the test suites for isPermittedToCreate logic * Change the UserResourceType Enum with the new value * Apply New Resource Creation validation, for Topic, Schema, Connector * Apply New Resource Creation validation, for Topic, Schema, Connector * minor code refactor modifications * minor code modification in the topics useCreate hook * Async Validation for all the Create Pages * caching test for optimal performance in async validation schemas * Reverting the Front End Validation * Reverting the Front End Validation * Authorization API minor syntax modifications * fix SmokeTests Co-authored-by: Roman Zabaluev <rzabaluev@provectus.com> Co-authored-by: VladSenyuta <vlad.senyuta@gmail.com> Co-authored-by: Mgrdich <46796009+Mgrdich@users.noreply.github.com> Co-authored-by: VladSenyuta <vlad.senyuta@gmail.com>
202 lines
8.4 KiB
XML
202 lines
8.4 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
|
|
<modelVersion>4.0.0</modelVersion>
|
|
<packaging>pom</packaging>
|
|
<modules>
|
|
<module>kafka-ui-contract</module>
|
|
<module>kafka-ui-api</module>
|
|
<module>kafka-ui-serde-api</module>
|
|
<module>kafka-ui-e2e-checks</module>
|
|
</modules>
|
|
|
|
<properties>
|
|
<maven.compiler.release>17</maven.compiler.release>
|
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
|
|
<frontend-generated-sources-directory>..//kafka-ui-react-app/src/generated-sources
|
|
</frontend-generated-sources-directory>
|
|
<sonar.organization>provectus</sonar.organization>
|
|
<sonar.host.url>https://sonarcloud.io</sonar.host.url>
|
|
<git.revision>latest</git.revision>
|
|
|
|
<!-- Dependency versions -->
|
|
<antlr4-maven-plugin.version>4.7.1</antlr4-maven-plugin.version>
|
|
<apache.commons.version>2.11.1</apache.commons.version>
|
|
<assertj.version>3.19.0</assertj.version>
|
|
<avro.version>1.11.1</avro.version>
|
|
<byte-buddy.version>1.12.19</byte-buddy.version>
|
|
<confluent.version>7.3.0</confluent.version>
|
|
<datasketches-java.version>3.1.0</datasketches-java.version>
|
|
<groovy.version>3.0.13</groovy.version>
|
|
<jackson.version>2.14.0</jackson.version>
|
|
<jackson-databind-nullable.version>0.2.4</jackson-databind-nullable.version>
|
|
<kafka-clients.version>3.3.1</kafka-clients.version>
|
|
<netty.version>4.1.85.Final</netty.version>
|
|
<org.mapstruct.version>1.4.2.Final</org.mapstruct.version>
|
|
<org.projectlombok.version>1.18.24</org.projectlombok.version>
|
|
<protobuf-java.version>3.21.9</protobuf-java.version>
|
|
<reactor-netty.version>1.1.0</reactor-netty.version>
|
|
<scala-lang.library.version>2.13.9</scala-lang.library.version>
|
|
<snakeyaml.version>1.33</snakeyaml.version>
|
|
<spring-boot.version>2.7.5</spring-boot.version>
|
|
<spring-security.version>5.7.5</spring-security.version>
|
|
<kafka-ui-serde-api.version>1.0.0</kafka-ui-serde-api.version>
|
|
|
|
<!-- Test dependency versions -->
|
|
<junit.version>5.9.1</junit.version>
|
|
<mockito.version>4.9.0</mockito.version>
|
|
<okhttp3.mockwebserver.version>4.10.0</okhttp3.mockwebserver.version>
|
|
<testcontainers.version>1.17.5</testcontainers.version>
|
|
|
|
<!-- Frontend dependency versions -->
|
|
<node.version>v16.15.0</node.version>
|
|
<pnpm.version>v7.4.0</pnpm.version>
|
|
|
|
<!-- Plugin versions -->
|
|
<fabric8-maven-plugin.version>0.40.2</fabric8-maven-plugin.version>
|
|
<frontend-maven-plugin.version>1.12.1</frontend-maven-plugin.version>
|
|
<maven-clean-plugin.version>3.2.0</maven-clean-plugin.version>
|
|
<maven-compiler-plugin.version>3.10.1</maven-compiler-plugin.version>
|
|
<maven-resources-plugin.version>3.2.0</maven-resources-plugin.version>
|
|
<maven-surefire-plugin.version>2.22.2</maven-surefire-plugin.version>
|
|
<openapi-generator-maven-plugin.version>4.3.0</openapi-generator-maven-plugin.version>
|
|
<springdoc-openapi-webflux-ui.version>1.2.32</springdoc-openapi-webflux-ui.version>
|
|
<swagger-annotations.version>1.6.0</swagger-annotations.version>
|
|
</properties>
|
|
|
|
<repositories>
|
|
<repository>
|
|
<id>confluent</id>
|
|
<url>https://packages.confluent.io/maven/</url>
|
|
</repository>
|
|
<repository>
|
|
<id>central</id>
|
|
<name>Central Repository</name>
|
|
<url>https://repo.maven.apache.org/maven2</url>
|
|
<layout>default</layout>
|
|
<snapshots>
|
|
<enabled>false</enabled>
|
|
</snapshots>
|
|
</repository>
|
|
</repositories>
|
|
|
|
<pluginRepositories>
|
|
<pluginRepository>
|
|
<id>confluent</id>
|
|
<url>https://packages.confluent.io/maven/</url>
|
|
</pluginRepository>
|
|
<pluginRepository>
|
|
<id>central</id>
|
|
<name>Central Repository</name>
|
|
<url>https://repo.maven.apache.org/maven2</url>
|
|
<layout>default</layout>
|
|
<snapshots>
|
|
<enabled>false</enabled>
|
|
</snapshots>
|
|
<releases>
|
|
<updatePolicy>never</updatePolicy>
|
|
</releases>
|
|
</pluginRepository>
|
|
</pluginRepositories>
|
|
|
|
<dependencyManagement>
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-dependencies</artifactId>
|
|
<version>${spring-boot.version}</version>
|
|
<type>pom</type>
|
|
<scope>import</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.security</groupId>
|
|
<artifactId>spring-security-bom</artifactId>
|
|
<version>${spring-security.version}</version>
|
|
<type>pom</type>
|
|
<scope>import</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>io.netty</groupId>
|
|
<artifactId>netty-bom</artifactId>
|
|
<version>${netty.version}</version>
|
|
<type>pom</type>
|
|
<scope>import</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.fasterxml.jackson</groupId>
|
|
<artifactId>jackson-bom</artifactId>
|
|
<version>${jackson.version}</version>
|
|
<type>pom</type>
|
|
<scope>import</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.scala-lang</groupId>
|
|
<artifactId>scala-library</artifactId>
|
|
<version>${scala-lang.library.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.yaml</groupId>
|
|
<artifactId>snakeyaml</artifactId>
|
|
<version>${snakeyaml.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.google.protobuf</groupId>
|
|
<artifactId>protobuf-java</artifactId>
|
|
<version>${protobuf-java.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>io.projectreactor.netty</groupId>
|
|
<artifactId>reactor-netty-http</artifactId>
|
|
<version>${reactor-netty.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.junit</groupId>
|
|
<artifactId>junit-bom</artifactId>
|
|
<version>${junit.version}</version>
|
|
<type>pom</type>
|
|
<scope>import</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.testcontainers</groupId>
|
|
<artifactId>testcontainers-bom</artifactId>
|
|
<version>${testcontainers.version}</version>
|
|
<type>pom</type>
|
|
<scope>import</scope>
|
|
</dependency>
|
|
</dependencies>
|
|
</dependencyManagement>
|
|
|
|
<build>
|
|
<pluginManagement>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-compiler-plugin</artifactId>
|
|
<version>${maven-compiler-plugin.version}</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-resources-plugin</artifactId>
|
|
<version>${maven-resources-plugin.version}</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-surefire-plugin</artifactId>
|
|
<version>${maven-surefire-plugin.version}</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-clean-plugin</artifactId>
|
|
<version>${maven-clean-plugin.version}</version>
|
|
</plugin>
|
|
</plugins>
|
|
</pluginManagement>
|
|
</build>
|
|
|
|
<groupId>com.provectus</groupId>
|
|
<artifactId>kafka-ui</artifactId>
|
|
<version>0.0.1-SNAPSHOT</version>
|
|
<name>kafka-ui</name>
|
|
<description>Web UI for Apache Kafka</description>
|
|
</project>
|