* Fix #1299: Move UI module into its own maven module * Fix #1299: fix indentation in selenium tests * Fix #1299: fix indentation in selenium tests * Fix #1299: fix indentation in selenium tests * Fix: Updated json2ts command script * Removed ignored file for bundle analyzer * Updated gitignore * Cleaning up the gitignore Co-authored-by: darth-coder00 <aashit@getcollate.io>
4
.gitignore
vendored
@ -65,8 +65,8 @@ dist
|
|||||||
secrets
|
secrets
|
||||||
|
|
||||||
# ts build info and report
|
# ts build info and report
|
||||||
catalog-rest-service/src/main/resources/ui/webpack
|
openmetadata-ui/src/main/resources/ui/webpack
|
||||||
catalog-rest-service/src/main/resources/ui/tsconfig.tsbuildinfo
|
openmetadata-ui/src/main/resources/ui/tsconfig.tsbuildinfo
|
||||||
|
|
||||||
#tests
|
#tests
|
||||||
.coverage
|
.coverage
|
||||||
|
@ -319,14 +319,6 @@
|
|||||||
</dependencies>
|
</dependencies>
|
||||||
|
|
||||||
<build>
|
<build>
|
||||||
<resources>
|
|
||||||
<resource>
|
|
||||||
<directory>src/main/resources/ui/dist</directory>
|
|
||||||
</resource>
|
|
||||||
<resource>
|
|
||||||
<directory>src/main/resources/json/data</directory>
|
|
||||||
</resource>
|
|
||||||
</resources>
|
|
||||||
|
|
||||||
<plugins>
|
<plugins>
|
||||||
<plugin>
|
<plugin>
|
||||||
@ -418,69 +410,6 @@
|
|||||||
</execution>
|
</execution>
|
||||||
</executions>
|
</executions>
|
||||||
</plugin>
|
</plugin>
|
||||||
<!-- Handle Compiling Frontend -->
|
|
||||||
<plugin>
|
|
||||||
<groupId>com.github.eirslett</groupId>
|
|
||||||
<artifactId>frontend-maven-plugin</artifactId>
|
|
||||||
<version>1.11.0</version>
|
|
||||||
|
|
||||||
<!-- optional -->
|
|
||||||
<configuration>
|
|
||||||
<workingDirectory>src/main/resources/ui/</workingDirectory>
|
|
||||||
<installDirectory>target</installDirectory>
|
|
||||||
</configuration>
|
|
||||||
|
|
||||||
<executions>
|
|
||||||
<execution>
|
|
||||||
<id>install node and npm</id>
|
|
||||||
<goals>
|
|
||||||
<goal>install-node-and-npm</goal>
|
|
||||||
</goals>
|
|
||||||
<configuration>
|
|
||||||
<nodeVersion>v12.16.1</nodeVersion>
|
|
||||||
<npmVersion>6.13.4</npmVersion>
|
|
||||||
</configuration>
|
|
||||||
</execution>
|
|
||||||
<execution>
|
|
||||||
<id>npm install</id>
|
|
||||||
<goals>
|
|
||||||
<goal>npm</goal>
|
|
||||||
</goals>
|
|
||||||
<phase>prepare-package</phase>
|
|
||||||
<configuration>
|
|
||||||
<arguments>install</arguments>
|
|
||||||
</configuration>
|
|
||||||
</execution>
|
|
||||||
<execution>
|
|
||||||
<id>npm run-script build-check</id>
|
|
||||||
<goals>
|
|
||||||
<goal>npm</goal>
|
|
||||||
</goals>
|
|
||||||
<!-- optional: the default phase is "generate-resources" -->
|
|
||||||
<phase>prepare-package</phase>
|
|
||||||
<configuration>
|
|
||||||
<!-- optional: if not specified, it will run gulp's default task
|
|
||||||
(and you can remove this whole <configuration> section.) -->
|
|
||||||
<arguments>run-script build-check</arguments>
|
|
||||||
<!--arguments>build</arguments-->
|
|
||||||
</configuration>
|
|
||||||
</execution>
|
|
||||||
<execution>
|
|
||||||
<id>npm run-script build</id>
|
|
||||||
<goals>
|
|
||||||
<goal>npm</goal>
|
|
||||||
</goals>
|
|
||||||
<!-- optional: the default phase is "generate-resources" -->
|
|
||||||
<phase>prepare-package</phase>
|
|
||||||
<configuration>
|
|
||||||
<!-- optional: if not specified, it will run gulp's default task
|
|
||||||
(and you can remove this whole <configuration> section.) -->
|
|
||||||
<arguments>run-script build</arguments>
|
|
||||||
<!--arguments>build</arguments-->
|
|
||||||
</configuration>
|
|
||||||
</execution>
|
|
||||||
</executions>
|
|
||||||
</plugin>
|
|
||||||
<plugin>
|
<plugin>
|
||||||
<artifactId>maven-resources-plugin</artifactId>
|
<artifactId>maven-resources-plugin</artifactId>
|
||||||
<executions>
|
<executions>
|
||||||
|
@ -25,7 +25,6 @@ import org.openqa.selenium.WebElement;
|
|||||||
import org.openqa.selenium.chrome.ChromeDriver;
|
import org.openqa.selenium.chrome.ChromeDriver;
|
||||||
import org.openqa.selenium.chrome.ChromeOptions;
|
import org.openqa.selenium.chrome.ChromeOptions;
|
||||||
import org.openqa.selenium.interactions.Actions;
|
import org.openqa.selenium.interactions.Actions;
|
||||||
import org.openqa.selenium.support.ui.ExpectedConditions;
|
|
||||||
import org.openqa.selenium.support.ui.WebDriverWait;
|
import org.openqa.selenium.support.ui.WebDriverWait;
|
||||||
import org.junit.jupiter.api.Test;
|
import org.junit.jupiter.api.Test;
|
||||||
import org.junit.jupiter.api.BeforeEach;
|
import org.junit.jupiter.api.BeforeEach;
|
||||||
@ -40,153 +39,153 @@ import java.util.ArrayList;
|
|||||||
|
|
||||||
@TestMethodOrder(MethodOrderer.OrderAnnotation.class)
|
@TestMethodOrder(MethodOrderer.OrderAnnotation.class)
|
||||||
public class PipelineDetailsPageTest {
|
public class PipelineDetailsPageTest {
|
||||||
static WebDriver webDriver;
|
static WebDriver webDriver;
|
||||||
static String url = Property.getInstance().getURL();
|
static String url = Property.getInstance().getURL();
|
||||||
Integer waitTime = Property.getInstance().getSleepTime();
|
Integer waitTime = Property.getInstance().getSleepTime();
|
||||||
static Faker faker = new Faker();
|
static Faker faker = new Faker();
|
||||||
String pipelineName = "dim_product etl";
|
String pipelineName = "dim_product etl";
|
||||||
static String enterDescription = "//div[@data-testid='enterDescription']/div/div[2]/div/div/div/div/div/div";
|
static String enterDescription = "//div[@data-testid='enterDescription']/div/div[2]/div/div/div/div/div/div";
|
||||||
static Actions actions;
|
static Actions actions;
|
||||||
static WebDriverWait wait;
|
static WebDriverWait wait;
|
||||||
|
|
||||||
@BeforeEach
|
@BeforeEach
|
||||||
public void openMetadataWindow() {
|
public void openMetadataWindow() {
|
||||||
System.setProperty("webdriver.chrome.driver", "src/test/resources/drivers/linux/chromedriver");
|
System.setProperty("webdriver.chrome.driver", "src/test/resources/drivers/linux/chromedriver");
|
||||||
ChromeOptions options = new ChromeOptions();
|
ChromeOptions options = new ChromeOptions();
|
||||||
options.addArguments("--headless");
|
options.addArguments("--headless");
|
||||||
webDriver = new ChromeDriver(options);
|
webDriver = new ChromeDriver(options);
|
||||||
actions = new Actions(webDriver);
|
actions = new Actions(webDriver);
|
||||||
wait = new WebDriverWait(webDriver, Duration.ofSeconds(5));
|
wait = new WebDriverWait(webDriver, Duration.ofSeconds(5));
|
||||||
webDriver.manage().window().maximize();
|
webDriver.manage().window().maximize();
|
||||||
webDriver.get(url);
|
webDriver.get(url);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@Order(1)
|
@Order(1)
|
||||||
public void openExplorePage() throws InterruptedException {
|
public void openExplorePage() throws InterruptedException {
|
||||||
Events.click(webDriver, By.cssSelector("[data-testid='closeWhatsNew']")); // Close What's new
|
Events.click(webDriver, By.cssSelector("[data-testid='closeWhatsNew']")); // Close What's new
|
||||||
Events.click(webDriver, By.cssSelector("[data-testid='appbar-item'][id='explore']")); // Explore
|
Events.click(webDriver, By.cssSelector("[data-testid='appbar-item'][id='explore']")); // Explore
|
||||||
Events.click(webDriver, By.xpath("(//button[@data-testid='tab'])[4]")); // Pipeline
|
Events.click(webDriver, By.xpath("(//button[@data-testid='tab'])[4]")); // Pipeline
|
||||||
Thread.sleep(waitTime);
|
Thread.sleep(waitTime);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@Order(2)
|
@Order(2)
|
||||||
public void editDescription() throws InterruptedException {
|
public void editDescription() throws InterruptedException {
|
||||||
openExplorePage();
|
openExplorePage();
|
||||||
Events.click(webDriver, By.cssSelector("[data-testid='sortBy']")); // Sort By
|
Events.click(webDriver, By.cssSelector("[data-testid='sortBy']")); // Sort By
|
||||||
Events.click(webDriver, By.cssSelector("[data-testid='list-item']")); // Last Updated
|
Events.click(webDriver, By.cssSelector("[data-testid='list-item']")); // Last Updated
|
||||||
Events.click(webDriver, By.xpath("(//a[@data-testid='table-link'])[last()]"));
|
Events.click(webDriver, By.xpath("(//a[@data-testid='table-link'])[last()]"));
|
||||||
Events.click(webDriver, By.cssSelector("[data-testid='edit-description']"));
|
Events.click(webDriver, By.cssSelector("[data-testid='edit-description']"));
|
||||||
Events.sendKeys(webDriver, By.xpath(enterDescription), faker.address().toString());
|
Events.sendKeys(webDriver, By.xpath(enterDescription), faker.address().toString());
|
||||||
Events.click(webDriver, By.cssSelector("[data-testid='save']"));
|
Events.click(webDriver, By.cssSelector("[data-testid='save']"));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@Order(3)
|
@Order(3)
|
||||||
public void addTag() throws InterruptedException {
|
public void addTag() throws InterruptedException {
|
||||||
openExplorePage();
|
openExplorePage();
|
||||||
Events.click(webDriver, By.cssSelector("[data-testid='sortBy']")); // Sort By
|
Events.click(webDriver, By.cssSelector("[data-testid='sortBy']")); // Sort By
|
||||||
Events.click(webDriver, By.cssSelector("[data-testid='list-item']")); // Last Updated
|
Events.click(webDriver, By.cssSelector("[data-testid='list-item']")); // Last Updated
|
||||||
Events.click(webDriver, By.xpath("(//a[@data-testid='table-link'])[last()]"));
|
Events.click(webDriver, By.xpath("(//a[@data-testid='table-link'])[last()]"));
|
||||||
Thread.sleep(waitTime);
|
Thread.sleep(waitTime);
|
||||||
Events.click(webDriver, By.cssSelector("[data-testid='tags']"));
|
Events.click(webDriver, By.cssSelector("[data-testid='tags']"));
|
||||||
Events.click(webDriver, By.cssSelector("[data-testid='associatedTagName']"));
|
Events.click(webDriver, By.cssSelector("[data-testid='associatedTagName']"));
|
||||||
for (int i = 1; i <=2; i++){
|
for (int i = 1; i <= 2; i++) {
|
||||||
Events.sendKeys(webDriver, By.cssSelector("[data-testid='associatedTagName']"), "P");
|
Events.sendKeys(webDriver, By.cssSelector("[data-testid='associatedTagName']"), "P");
|
||||||
Events.click(webDriver, By.cssSelector("[data-testid='list-item']"));
|
Events.click(webDriver, By.cssSelector("[data-testid='list-item']"));
|
||||||
}
|
|
||||||
Events.click(webDriver, By.cssSelector("[data-testid='saveAssociatedTag']"));
|
|
||||||
webDriver.navigate().back();
|
|
||||||
webDriver.navigate().refresh();
|
|
||||||
}
|
}
|
||||||
|
Events.click(webDriver, By.cssSelector("[data-testid='saveAssociatedTag']"));
|
||||||
|
webDriver.navigate().back();
|
||||||
|
webDriver.navigate().refresh();
|
||||||
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@Order(4)
|
@Order(4)
|
||||||
public void removeTag() throws InterruptedException {
|
public void removeTag() throws InterruptedException {
|
||||||
openExplorePage();
|
openExplorePage();
|
||||||
Events.click(webDriver, By.cssSelector("[data-testid='sortBy']")); // Sort By
|
Events.click(webDriver, By.cssSelector("[data-testid='sortBy']")); // Sort By
|
||||||
Events.click(webDriver, By.cssSelector("[data-testid='list-item']")); // Last Updated
|
Events.click(webDriver, By.cssSelector("[data-testid='list-item']")); // Last Updated
|
||||||
Events.click(webDriver, By.xpath("(//a[@data-testid='table-link'])[1]"));
|
Events.click(webDriver, By.xpath("(//a[@data-testid='table-link'])[1]"));
|
||||||
Events.click(webDriver, By.cssSelector("[data-testid='tag-conatiner']"));
|
Events.click(webDriver, By.cssSelector("[data-testid='tag-conatiner']"));
|
||||||
Events.click(webDriver, By.cssSelector("[data-testid='remove']"));
|
Events.click(webDriver, By.cssSelector("[data-testid='remove']"));
|
||||||
Events.click(webDriver, By.cssSelector("[data-testid='remove']"));
|
Events.click(webDriver, By.cssSelector("[data-testid='remove']"));
|
||||||
Events.click(webDriver, By.cssSelector("[data-testid='saveAssociatedTag']"));
|
Events.click(webDriver, By.cssSelector("[data-testid='saveAssociatedTag']"));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@Order(5)
|
@Order(5)
|
||||||
public void editTaskDescription() throws InterruptedException {
|
public void editTaskDescription() throws InterruptedException {
|
||||||
openExplorePage();
|
openExplorePage();
|
||||||
Events.click(webDriver, By.cssSelector("[data-testid='sortBy']")); // Sort By
|
Events.click(webDriver, By.cssSelector("[data-testid='sortBy']")); // Sort By
|
||||||
Events.click(webDriver, By.cssSelector("[data-testid='list-item']")); // Last Updated
|
Events.click(webDriver, By.cssSelector("[data-testid='list-item']")); // Last Updated
|
||||||
Events.click(webDriver, By.xpath("(//a[@data-testid='table-link'])[last()]"));
|
Events.click(webDriver, By.xpath("(//a[@data-testid='table-link'])[last()]"));
|
||||||
Thread.sleep(waitTime);
|
Thread.sleep(waitTime);
|
||||||
actions.moveToElement(webDriver.findElement(By.xpath("//div[@data-testid='description']/button"))).perform();
|
actions.moveToElement(webDriver.findElement(By.xpath("//div[@data-testid='description']/button"))).perform();
|
||||||
Events.click(webDriver, By.xpath("//div[@data-testid='description']/button"));
|
Events.click(webDriver, By.xpath("//div[@data-testid='description']/button"));
|
||||||
Events.sendKeys(webDriver, By.xpath(enterDescription), faker.address().toString());
|
Events.sendKeys(webDriver, By.xpath(enterDescription), faker.address().toString());
|
||||||
Events.click(webDriver, By.cssSelector("[data-testid='save']"));
|
Events.click(webDriver, By.cssSelector("[data-testid='save']"));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@Order(6)
|
@Order(6)
|
||||||
public void checkLineage() throws InterruptedException {
|
public void checkLineage() throws InterruptedException {
|
||||||
openExplorePage();
|
openExplorePage();
|
||||||
Events.sendKeys(webDriver, By.cssSelector("[data-testid='searchBox']"), pipelineName);
|
Events.sendKeys(webDriver, By.cssSelector("[data-testid='searchBox']"), pipelineName);
|
||||||
Events.click(webDriver, By.cssSelector("[data-testid='data-name'][id ='sample_airflowdim_product_etl']"));
|
Events.click(webDriver, By.cssSelector("[data-testid='data-name'][id ='sample_airflowdim_product_etl']"));
|
||||||
Events.click(webDriver, By.xpath("(//button[@data-testid='tab'])[2]"));
|
Events.click(webDriver, By.xpath("(//button[@data-testid='tab'])[2]"));
|
||||||
for (int i=1; i<=3; i++) {
|
for (int i = 1; i <= 3; i++) {
|
||||||
WebElement lineageEntity = webDriver.findElement(
|
WebElement lineageEntity = webDriver.findElement(
|
||||||
By.xpath("(//span[@data-testid='lineage-entity'])" + "[" + i + "]"));
|
By.xpath("(//span[@data-testid='lineage-entity'])" + "[" + i + "]"));
|
||||||
actions.dragAndDropBy(lineageEntity, 100, 200).build();
|
actions.dragAndDropBy(lineageEntity, 100, 200).build();
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@Order(7)
|
@Order(7)
|
||||||
public void checkManage() throws InterruptedException {
|
public void checkManage() throws InterruptedException {
|
||||||
openExplorePage();
|
openExplorePage();
|
||||||
Events.click(webDriver, By.cssSelector("[data-testid='sortBy']")); // Sort By
|
Events.click(webDriver, By.cssSelector("[data-testid='sortBy']")); // Sort By
|
||||||
Events.click(webDriver, By.cssSelector("[data-testid='list-item']")); // Last Updated
|
Events.click(webDriver, By.cssSelector("[data-testid='list-item']")); // Last Updated
|
||||||
Events.click(webDriver, By.xpath("(//a[@data-testid='table-link'])[last()]"));
|
Events.click(webDriver, By.xpath("(//a[@data-testid='table-link'])[last()]"));
|
||||||
Events.click(webDriver, By.xpath("(//button[@data-testid='tab'])[3]"));
|
Events.click(webDriver, By.xpath("(//button[@data-testid='tab'])[3]"));
|
||||||
Events.click(webDriver, By.cssSelector("[data-testid='owner-dropdown']")); // Owner
|
Events.click(webDriver, By.cssSelector("[data-testid='owner-dropdown']")); // Owner
|
||||||
Events.sendKeys(webDriver, By.cssSelector("[data-testid='searchInputText']"), "Cloud");
|
Events.sendKeys(webDriver, By.cssSelector("[data-testid='searchInputText']"), "Cloud");
|
||||||
Events.click(webDriver, By.cssSelector("[data-testid='list-item']")); // Select User/Team
|
Events.click(webDriver, By.cssSelector("[data-testid='list-item']")); // Select User/Team
|
||||||
Events.click(webDriver, By.cssSelector("[data-testid='card-list']")); // Select Tier
|
Events.click(webDriver, By.cssSelector("[data-testid='card-list']")); // Select Tier
|
||||||
Events.click(webDriver, By.cssSelector("[data-testid='saveManageTab']")); // Save
|
Events.click(webDriver, By.cssSelector("[data-testid='saveManageTab']")); // Save
|
||||||
webDriver.navigate().back();
|
webDriver.navigate().back();
|
||||||
webDriver.navigate().refresh();
|
webDriver.navigate().refresh();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@Order(8)
|
@Order(8)
|
||||||
public void checkBreadCrumb() throws InterruptedException {
|
public void checkBreadCrumb() throws InterruptedException {
|
||||||
openExplorePage();
|
openExplorePage();
|
||||||
Events.sendKeys(webDriver, By.cssSelector("[data-testid='searchBox']"), pipelineName);
|
Events.sendKeys(webDriver, By.cssSelector("[data-testid='searchBox']"), pipelineName);
|
||||||
Events.click(webDriver, By.cssSelector("[data-testid='data-name'][id ='sample_airflowdim_product_etl']"));
|
Events.click(webDriver, By.cssSelector("[data-testid='data-name'][id ='sample_airflowdim_product_etl']"));
|
||||||
Thread.sleep(waitTime);
|
Thread.sleep(waitTime);
|
||||||
Events.click(webDriver, By.cssSelector("[data-testid='breadcrumb-link']"));
|
Events.click(webDriver, By.cssSelector("[data-testid='breadcrumb-link']"));
|
||||||
Events.click(webDriver, By.cssSelector("[data-testid='description-edit']")); // edit description
|
Events.click(webDriver, By.cssSelector("[data-testid='description-edit']")); // edit description
|
||||||
Events.sendKeys(webDriver, By.xpath(enterDescription), faker.address().toString());
|
Events.sendKeys(webDriver, By.xpath(enterDescription), faker.address().toString());
|
||||||
Events.click(webDriver, By.cssSelector("[data-testid='save']"));
|
Events.click(webDriver, By.cssSelector("[data-testid='save']"));
|
||||||
for (int i = 1; i <= 3; i++) { //check topics in service
|
for (int i = 1; i <= 3; i++) { //check topics in service
|
||||||
Events.click(webDriver, By.xpath("(//tr[@data-testid='column']//td[1]/a)" + "[" + i + "]")); // pipelines
|
Events.click(webDriver, By.xpath("(//tr[@data-testid='column']//td[1]/a)" + "[" + i + "]")); // pipelines
|
||||||
Thread.sleep(waitTime);
|
Thread.sleep(waitTime);
|
||||||
webDriver.navigate().back();
|
webDriver.navigate().back();
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@AfterEach
|
@AfterEach
|
||||||
public void closeTabs() {
|
public void closeTabs() {
|
||||||
ArrayList<String> tabs = new ArrayList<>(webDriver.getWindowHandles());
|
ArrayList<String> tabs = new ArrayList<>(webDriver.getWindowHandles());
|
||||||
String originalHandle = webDriver.getWindowHandle();
|
String originalHandle = webDriver.getWindowHandle();
|
||||||
for (String handle : webDriver.getWindowHandles()) {
|
for (String handle : webDriver.getWindowHandles()) {
|
||||||
if (!handle.equals(originalHandle)) {
|
if (!handle.equals(originalHandle)) {
|
||||||
webDriver.switchTo().window(handle);
|
webDriver.switchTo().window(handle);
|
||||||
webDriver.close();
|
webDriver.close();
|
||||||
}
|
}
|
||||||
}
|
|
||||||
webDriver.switchTo().window(tabs.get(0)).close();
|
|
||||||
}
|
}
|
||||||
|
webDriver.switchTo().window(tabs.get(0)).close();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -27,7 +27,7 @@
|
|||||||
<version>0.7.0-SNAPSHOT</version>
|
<version>0.7.0-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<artifactId>catalog-bin</artifactId>
|
<artifactId>openmetadata-dist</artifactId>
|
||||||
<packaging>pom</packaging>
|
<packaging>pom</packaging>
|
||||||
<name>Catalog Distribution</name>
|
<name>Catalog Distribution</name>
|
||||||
<description>Catalog binary distribution</description>
|
<description>Catalog binary distribution</description>
|
||||||
@ -43,6 +43,11 @@
|
|||||||
<artifactId>common</artifactId>
|
<artifactId>common</artifactId>
|
||||||
<version>${project.version}</version>
|
<version>${project.version}</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.openmetadata</groupId>
|
||||||
|
<artifactId>openmetadata-ui</artifactId>
|
||||||
|
<version>${project.version}</version>
|
||||||
|
</dependency>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
|
|
||||||
<properties>
|
<properties>
|
133
openmetadata-ui/pom.xml
Normal file
@ -0,0 +1,133 @@
|
|||||||
|
<?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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||||
|
<parent>
|
||||||
|
<artifactId>catalog</artifactId>
|
||||||
|
<groupId>org.openmetadata</groupId>
|
||||||
|
<version>0.7.0-SNAPSHOT</version>
|
||||||
|
</parent>
|
||||||
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|
||||||
|
<artifactId>openmetadata-ui</artifactId>
|
||||||
|
|
||||||
|
<properties>
|
||||||
|
<dropwizard.swagger.version>2.0.12-1</dropwizard.swagger.version>
|
||||||
|
<testng.version>7.4.0</testng.version>
|
||||||
|
<selenium.version>4.0.0</selenium.version>
|
||||||
|
</properties>
|
||||||
|
|
||||||
|
<dependencies>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.openmetadata</groupId>
|
||||||
|
<artifactId>common</artifactId>
|
||||||
|
<version>${project.version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.openmetadata</groupId>
|
||||||
|
<artifactId>catalog-rest-service</artifactId>
|
||||||
|
<version>${project.version}</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.seleniumhq.selenium</groupId>
|
||||||
|
<artifactId>selenium-java</artifactId>
|
||||||
|
<version>${selenium.version}</version>
|
||||||
|
<scope>test</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>io.github.artsok</groupId>
|
||||||
|
<artifactId>rerunner-jupiter</artifactId>
|
||||||
|
<version>2.1.6</version>
|
||||||
|
<scope>test</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.testng</groupId>
|
||||||
|
<artifactId>testng</artifactId>
|
||||||
|
<version>${testng.version}</version>
|
||||||
|
<scope>test</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.github.javafaker</groupId>
|
||||||
|
<artifactId>javafaker</artifactId>
|
||||||
|
<version>1.0.2</version>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
|
</dependencies>
|
||||||
|
|
||||||
|
<build>
|
||||||
|
<resources>
|
||||||
|
<resource>
|
||||||
|
<directory>src/main/resources/ui/dist</directory>
|
||||||
|
</resource>
|
||||||
|
<resource>
|
||||||
|
<directory>src/main/resources/json/data</directory>
|
||||||
|
</resource>
|
||||||
|
</resources>
|
||||||
|
|
||||||
|
<plugins>
|
||||||
|
<!-- Handle Compiling Frontend -->
|
||||||
|
<plugin>
|
||||||
|
<groupId>com.github.eirslett</groupId>
|
||||||
|
<artifactId>frontend-maven-plugin</artifactId>
|
||||||
|
<version>1.11.0</version>
|
||||||
|
|
||||||
|
<!-- optional -->
|
||||||
|
<configuration>
|
||||||
|
<workingDirectory>src/main/resources/ui/</workingDirectory>
|
||||||
|
<installDirectory>target</installDirectory>
|
||||||
|
</configuration>
|
||||||
|
|
||||||
|
<executions>
|
||||||
|
<execution>
|
||||||
|
<id>install node and npm</id>
|
||||||
|
<goals>
|
||||||
|
<goal>install-node-and-npm</goal>
|
||||||
|
</goals>
|
||||||
|
<configuration>
|
||||||
|
<nodeVersion>v12.16.1</nodeVersion>
|
||||||
|
<npmVersion>6.13.4</npmVersion>
|
||||||
|
</configuration>
|
||||||
|
</execution>
|
||||||
|
<execution>
|
||||||
|
<id>npm install</id>
|
||||||
|
<goals>
|
||||||
|
<goal>npm</goal>
|
||||||
|
</goals>
|
||||||
|
<phase>prepare-package</phase>
|
||||||
|
<configuration>
|
||||||
|
<arguments>install</arguments>
|
||||||
|
</configuration>
|
||||||
|
</execution>
|
||||||
|
<execution>
|
||||||
|
<id>npm run-script build-check</id>
|
||||||
|
<goals>
|
||||||
|
<goal>npm</goal>
|
||||||
|
</goals>
|
||||||
|
<!-- optional: the default phase is "generate-resources" -->
|
||||||
|
<phase>prepare-package</phase>
|
||||||
|
<configuration>
|
||||||
|
<!-- optional: if not specified, it will run gulp's default task
|
||||||
|
(and you can remove this whole <configuration> section.) -->
|
||||||
|
<arguments>run-script build-check</arguments>
|
||||||
|
<!--arguments>build</arguments-->
|
||||||
|
</configuration>
|
||||||
|
</execution>
|
||||||
|
<execution>
|
||||||
|
<id>npm run-script build</id>
|
||||||
|
<goals>
|
||||||
|
<goal>npm</goal>
|
||||||
|
</goals>
|
||||||
|
<!-- optional: the default phase is "generate-resources" -->
|
||||||
|
<phase>prepare-package</phase>
|
||||||
|
<configuration>
|
||||||
|
<!-- optional: if not specified, it will run gulp's default task
|
||||||
|
(and you can remove this whole <configuration> section.) -->
|
||||||
|
<arguments>run-script build</arguments>
|
||||||
|
<!--arguments>build</arguments-->
|
||||||
|
</configuration>
|
||||||
|
</execution>
|
||||||
|
</executions>
|
||||||
|
</plugin>
|
||||||
|
</plugins>
|
||||||
|
</build>
|
||||||
|
</project>
|
@ -97,7 +97,7 @@
|
|||||||
"pretty": "prettier . --config './.prettierrc' --write",
|
"pretty": "prettier . --config './.prettierrc' --write",
|
||||||
"build-check": "npm run lint",
|
"build-check": "npm run lint",
|
||||||
"commit-check": "npm run pretty && npm run build-check && npm run build",
|
"commit-check": "npm run pretty && npm run build-check && npm run build",
|
||||||
"json2ts": "./json2ts.sh ../json/schema ./src/generated && npm run lint:fix"
|
"json2ts": "./json2ts.sh ../../../../../catalog-rest-service/src/main/resources/json/schema ./src/generated && npm run lint:fix"
|
||||||
},
|
},
|
||||||
"browserslist": {
|
"browserslist": {
|
||||||
"production": [
|
"production": [
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 2.5 KiB After Width: | Height: | Size: 2.5 KiB |
Before Width: | Height: | Size: 3.2 KiB After Width: | Height: | Size: 3.2 KiB |
Before Width: | Height: | Size: 4.8 KiB After Width: | Height: | Size: 4.8 KiB |
Before Width: | Height: | Size: 6.7 KiB After Width: | Height: | Size: 6.7 KiB |
Before Width: | Height: | Size: 8.4 KiB After Width: | Height: | Size: 8.4 KiB |
Before Width: | Height: | Size: 8.6 KiB After Width: | Height: | Size: 8.6 KiB |
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 3.6 KiB After Width: | Height: | Size: 3.6 KiB |
Before Width: | Height: | Size: 3.9 KiB After Width: | Height: | Size: 3.9 KiB |
Before Width: | Height: | Size: 4.8 KiB After Width: | Height: | Size: 4.8 KiB |
Before Width: | Height: | Size: 5.2 KiB After Width: | Height: | Size: 5.2 KiB |
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 15 KiB |
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 1.4 KiB |
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 2.2 KiB |
Before Width: | Height: | Size: 6.7 KiB After Width: | Height: | Size: 6.7 KiB |
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 34 KiB |
Before Width: | Height: | Size: 4.6 KiB After Width: | Height: | Size: 4.6 KiB |
Before Width: | Height: | Size: 86 KiB After Width: | Height: | Size: 86 KiB |
Before Width: | Height: | Size: 103 KiB After Width: | Height: | Size: 103 KiB |
Before Width: | Height: | Size: 8.8 KiB After Width: | Height: | Size: 8.8 KiB |
Before Width: | Height: | Size: 6.5 KiB After Width: | Height: | Size: 6.5 KiB |
Before Width: | Height: | Size: 35 KiB After Width: | Height: | Size: 35 KiB |
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 24 KiB |
Before Width: | Height: | Size: 26 KiB After Width: | Height: | Size: 26 KiB |
Before Width: | Height: | Size: 56 KiB After Width: | Height: | Size: 56 KiB |
Before Width: | Height: | Size: 26 KiB After Width: | Height: | Size: 26 KiB |
Before Width: | Height: | Size: 27 KiB After Width: | Height: | Size: 27 KiB |
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 20 KiB |
Before Width: | Height: | Size: 9.2 KiB After Width: | Height: | Size: 9.2 KiB |
Before Width: | Height: | Size: 63 KiB After Width: | Height: | Size: 63 KiB |
Before Width: | Height: | Size: 48 KiB After Width: | Height: | Size: 48 KiB |
Before Width: | Height: | Size: 42 KiB After Width: | Height: | Size: 42 KiB |
Before Width: | Height: | Size: 33 KiB After Width: | Height: | Size: 33 KiB |
Before Width: | Height: | Size: 88 KiB After Width: | Height: | Size: 88 KiB |
Before Width: | Height: | Size: 8.4 KiB After Width: | Height: | Size: 8.4 KiB |
Before Width: | Height: | Size: 62 KiB After Width: | Height: | Size: 62 KiB |
Before Width: | Height: | Size: 41 KiB After Width: | Height: | Size: 41 KiB |
Before Width: | Height: | Size: 35 KiB After Width: | Height: | Size: 35 KiB |
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 14 KiB |
Before Width: | Height: | Size: 9.3 KiB After Width: | Height: | Size: 9.3 KiB |
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 20 KiB |
Before Width: | Height: | Size: 3.6 KiB After Width: | Height: | Size: 3.6 KiB |
Before Width: | Height: | Size: 29 KiB After Width: | Height: | Size: 29 KiB |
Before Width: | Height: | Size: 25 KiB After Width: | Height: | Size: 25 KiB |
Before Width: | Height: | Size: 27 KiB After Width: | Height: | Size: 27 KiB |
Before Width: | Height: | Size: 41 KiB After Width: | Height: | Size: 41 KiB |
Before Width: | Height: | Size: 21 KiB After Width: | Height: | Size: 21 KiB |
Before Width: | Height: | Size: 5.6 KiB After Width: | Height: | Size: 5.6 KiB |
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 14 KiB |
Before Width: | Height: | Size: 147 KiB After Width: | Height: | Size: 147 KiB |
Before Width: | Height: | Size: 93 KiB After Width: | Height: | Size: 93 KiB |
Before Width: | Height: | Size: 1.3 KiB After Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 447 B After Width: | Height: | Size: 447 B |
Before Width: | Height: | Size: 557 B After Width: | Height: | Size: 557 B |
Before Width: | Height: | Size: 452 B After Width: | Height: | Size: 452 B |
Before Width: | Height: | Size: 477 B After Width: | Height: | Size: 477 B |
Before Width: | Height: | Size: 4.6 KiB After Width: | Height: | Size: 4.6 KiB |
Before Width: | Height: | Size: 517 B After Width: | Height: | Size: 517 B |