Skip to content

Commit

Permalink
added categories
Browse files Browse the repository at this point in the history
  • Loading branch information
bZverok committed Apr 9, 2024
1 parent 5d89d86 commit 895be6a
Show file tree
Hide file tree
Showing 3 changed files with 68 additions and 10 deletions.
9 changes: 8 additions & 1 deletion Apps.AmazonRedshift/AmazonRedshiftApplication.cs
Original file line number Diff line number Diff line change
@@ -1,9 +1,16 @@
using Blackbird.Applications.Sdk.Common;
using Blackbird.Applications.Sdk.Common.Metadata;

namespace Apps.AmazonRedshift;

public class AmazonRedshiftApplication : IApplication
public class AmazonRedshiftApplication : IApplication, ICategoryProvider
{
public IEnumerable<ApplicationCategory> Categories
{
get => [ApplicationCategory.AmazonApps, ApplicationCategory.DatabaseAndSpreadsheet];
set { }
}

public string Name
{
get => "Amazon Redshift";
Expand Down
4 changes: 2 additions & 2 deletions Apps.AmazonRedshift/Apps.AmazonRedshift.csproj
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFramework>net7.0</TargetFramework>
<TargetFramework>net8.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
<Product>Amazon Redshift</Product>
Expand All @@ -14,7 +14,7 @@
<PackageReference Include="AWSSDK.Redshift" Version="3.7.302.2" />
<PackageReference Include="AWSSDK.RedshiftDataAPIService" Version="3.7.300.7" />
<PackageReference Include="AWSSDK.RedshiftServerless" Version="3.7.301.2" />
<PackageReference Include="Blackbird.Applications.Sdk.Common" Version="2.2.0-alpha3"/>
<PackageReference Include="Blackbird.Applications.Sdk.Common" Version="2.6.0"/>
<PackageReference Include="Blackbird.Applications.Sdk.Utils" Version="1.0.12"/>
</ItemGroup>

Expand Down
65 changes: 58 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,15 +1,66 @@
# Blackbird.io Amazon Redshift

Blackbird is the new automation backbone for the language technology industry. Blackbird provides enterprise-scale automation and orchestration with a simple no-code/low-code platform. Blackbird enables ambitious organizations to identify, vet and automate as many processes as possible. Not just localization workflows, but any business and IT process. This repository represents an application that is deployable on Blackbird and usable inside the workflow editor.
# Blackbird.io Amazon Redshift

Blackbird is the new automation backbone for the language technology industry. Blackbird provides enterprise-scale automation and orchestration with a simple no-code/low-code platform. Blackbird enables ambitious organizations to identify, vet and automate as many processes as possible. Not just localization workflows, but any business and IT process. This repository represents an application that is deployable on Blackbird and usable inside the workflow editor.

## Introduction

<!-- begin docs -->

Amazon Redshift is a fully managed, petabyte-scale data warehouse service in the cloud, designed for high-performance analysis using standard SQL queries. This Amazon Redshift application primarily centers around database management.

## Introduction
## Before setting up

<!-- begin docs -->
Before you can connect you need to make sure that:

Documentation coming soon.
- You have an [AWS root user account](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html) or [IAM user](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_identity-management.html) created by root user for you.
- You have an access key and secret generated for your IAM user.
- You have access to models you want to use. You must request access to a model before you can use it. If you try to use the model before you have requested access to it, you receive an error.

## Feedback
### Create IAM user

Do you want to use this app or do you have feedback on our implementation? Reach out to us using the [established channels](https://www.blackbird.io/) or create an issue.
- Go to [Identity and Access Management](https://console.aws.amazon.com/iamv2/home).
- Select _Users_ from the left sidebar.
- Click _Create user_.
- Enter _User name_ and click _Next_.
- Select _Attach policies directly_ option from _Permissions options_.
- Add _AdministratorAccess_ and _AmazonRedshiftFullAccess_ policies, then click _Next_.
- Review user details and permissions, then click _Create user_.

### Generate access key

- Go to [Identity and Access Management](https://console.aws.amazon.com/iamv2/home).
- Select _Users_ from the left sidebar.
- Select the user for whom you want to generate an access key.
- Go to the _Security credentials_ tab.
- Scroll down to the _Access keys_ section and click _Create access key_.
- Select _Use case_ and click _Next_.
- Enter _Description tag value_ and click _Create access key_.
- Save _Access key_ and _Secret access key_ values to be able to connect to Amazon Redshift via Blackbird.

## Connecting

1. Navigate to apps and search for Amazon Redshift. If you cannot find Amazon Redshift then click _Add App_ in the top right corner, select Amazon Redshift and add the app to your Blackbird environment.
2. Click _Add Connection_.
3. Name your connection for future reference e.g. 'My organization'.
4. Fill in the access key and secret obtained in the previous section.
5. Click _Connect_.
6. Confirm that the connection has appeared and the status is _Connected_.

## Actions

### Database

- **Get entries** returns a list of table records based on the provided filters. You can optionally specify limit/offset or _Where_ statement. Where statement is specified as a string, for example `age > 18`.
- **Add entry** adds a new record to the table. Values are specified as an array of strings in the same order as the columns are inside of the table. You can specify less values if the rest of the columns are nullable or have a default value.
- **Update entries** updates table records based on the provided filters. To define the criteria for updating, you can use a _Where_ statement in a manner similar to the _Get Entries_ action. The _Columns_ and _Values_ inputs must be of the same size, aligning with each other based on their respective positions.

For instance, if the Columns input is: Name, Age, Gender; and the Values input is: Bob, 13, Non-binary; the table will update the record, setting Bob for Name, 13 for Age, and Non-binary for Gender. Ensure consistency in the size of the Columns and Values inputs for accurate and effective updates.
- **Delete entries** deletes records from the specified table. To define the criteria for updating, you can use a _Where_ statement in a manner similar to the _Get Entries_ action.
- **Query database** executes any raw SQL query and returns the results if there are any.

## Feedback

Do you want to use this app or do you have feedback on our implementation? Reach out to us using the [established channels](https://www.blackbird.io/) or create an issue.

<!-- end docs -->

0 comments on commit 895be6a

Please sign in to comment.