Skip to content

Commit

Permalink
HJ-82 - Snowflake - Front End Integration and Monitor UI (#5415)
Browse files Browse the repository at this point in the history
  • Loading branch information
andres-torres-marroquin authored Oct 24, 2024
1 parent 04a0873 commit 0257533
Show file tree
Hide file tree
Showing 2 changed files with 74 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ import RDS_MYSQL_TYPE_INFO from "~/features/integrations/integration-type-info/r
import RDS_POSTGRES_TYPE_INFO from "~/features/integrations/integration-type-info/rdsPostgresInfo";
import S3_TYPE_INFO from "~/features/integrations/integration-type-info/s3Info";
import SCYLLA_TYPE_INFO from "~/features/integrations/integration-type-info/scyllaInfo";
import SNOWFLAKE_TYPE_INFO from "~/features/integrations/integration-type-info/snowflakeInfo";
import {
AccessLevel,
ConnectionConfigurationResponse,
Expand All @@ -33,6 +34,7 @@ const INTEGRATION_TYPE_MAP: { [K in ConnectionType]?: IntegrationTypeInfo } = {
[ConnectionType.RDS_POSTGRES]: RDS_POSTGRES_TYPE_INFO,
[ConnectionType.S3]: S3_TYPE_INFO,
[ConnectionType.SCYLLA]: SCYLLA_TYPE_INFO,
[ConnectionType.SNOWFLAKE]: SNOWFLAKE_TYPE_INFO,
};

export const INTEGRATION_TYPE_LIST: IntegrationTypeInfo[] =
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
import { ListItem } from "fidesui";

import {
InfoHeading,
InfoText,
InfoUnorderedList,
} from "~/features/common/copy/components";
import ShowMoreContent from "~/features/common/copy/ShowMoreContent";
import { ConnectionCategory } from "~/features/integrations/ConnectionCategory";
import { AccessLevel, ConnectionType } from "~/types/api";

export const SNOWFLAKE_PLACEHOLDER = {
name: "Snowflake",
key: "snowflake_placeholder",
connection_type: ConnectionType.SNOWFLAKE,
access: AccessLevel.READ,
created_at: "",
};

export const SNOWFLAKE_TAGS = [
"Data warehouse",
"Detection",
"Discovery",
"DSR automation",
];

export const SnowflakeOverview = () => (
<>
<InfoHeading text="Overview" />
<InfoText>
Snowflake is a cloud-based data warehousing platform designed for handling
large-scale data storage and analytics. It enables organizations to store,
manage, and analyze massive amounts of data efficiently, offering features
like scalability, performance, and flexibility.
</InfoText>
<ShowMoreContent>
<InfoHeading text="Categories" />
<InfoUnorderedList>
<ListItem>Database</ListItem>
<ListItem>SQL database</ListItem>
<ListItem>Storage system</ListItem>
<ListItem>Data detection</ListItem>
<ListItem>Data discovery</ListItem>
</InfoUnorderedList>
<InfoHeading text="Permissions" />
<InfoUnorderedList>
<ListItem>CREATE ROLE my_monitor_role;</ListItem>
<ListItem>
GRANT USAGE ON DATABASE DATABASE_1 TO ROLE my_monitor_role;
</ListItem>
<ListItem>
GRANT USAGE ON SCHEMA DATABASE_1.TEST_SCHEMA TO ROLE my_monitor_role;
</ListItem>
<ListItem>
GRANT SELECT ON ALL TABLES IN SCHEMA DATABASE_1.TEST_SCHEMA TO ROLE
my_monitor_role;
</ListItem>
<ListItem>CREATE USER test_user PASSWORD=&apos;***&apos;;</ListItem>
<ListItem>GRANT ROLE my_monitor_role TO USER test_user;</ListItem>
</InfoUnorderedList>
</ShowMoreContent>
</>
);

const SNOWFLAKE_TYPE_INFO = {
placeholder: SNOWFLAKE_PLACEHOLDER,
category: ConnectionCategory.DATABASE,
overview: <SnowflakeOverview />,
tags: SNOWFLAKE_TAGS,
};

export default SNOWFLAKE_TYPE_INFO;

0 comments on commit 0257533

Please sign in to comment.