Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: Add Meroxa workflows #109

Merged
merged 5 commits into from
Aug 26, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ To test a workflow within Warp before submitting, you can use it as a local work
To do this:
1) Copy the workflow to your local `~/.warp/workflows` directory:
```bash
mkdir -p ~/.warp/workflows && cp {{workflow}}.yaml; ~/.warp/workflows/
mkdir -p ~/.warp/workflows && cp {{workflow}}.yaml ~/.warp/workflows/
```
2) Open Warp and open workflows by pressing `ctrl-shift-r` or using the command palette.
3) Click on "My Workflows" on the left to filter for local workflows.
Expand Down
43 changes: 43 additions & 0 deletions specs/meroxa/resources_create_bigquery.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
---
# The name of the workflow.
name: Add a Google BigQuery resource to the Meroxa Platform
# The corresponding command for the workflow. Any arguments should be surrounded with two curly braces. E.g `command {{arg}}`.
command: |-
meroxa resources create {{resource_name}} --type bigquery --url "bigquery://{{gcp_project_id}}/{{gcp_dataset_name}}" --client-key "$(cat {{gcp_service_account_json_file}})"
# Any tags that the workflow should be categorized with.
tags:
- meroxa
# A description of the workflow.
description: Add a Google BigQuery resource to the Meroxa Platform
# List of arguments within the command.
arguments:
# Name of the argument within the command. This must exactly match the name of the argument
# within the command (without the curly braces).
- name: resource_name
# The description of the argument.
description: Name you want to use to identify this Google BigQuery resource
# The default value for the argument.
default_value: ~
- name: gcp_project_id
# The description of the argument.
description: Google Cloud Project ID
# The default value for the argument.
default_value: ~
- name: gcp_dataset_name
# The description of the argument.
description: Your BigQuery dataset name. GCP console will indicate your dataset ID as "project_id.dataset_name". Just include your dataset name here
# The default value for the argument.
default_value: ~
- name: gcp_service_account_json_file
# The description of the argument.
description: Google BigQuery Valid Service Account credentials with access to BigQuery in JSON format
# The default value for the argument.
default_value: ~
# The source URL for where the workflow was generated from, if any.
source_url: "https://docs.meroxa.com/platform/resources/google-bigquery#resource-configuration"
# The author of the workflow.
author: Meroxa
# The URL of original author of the Workflow. For example, if this workflow was generated from StackOverflow, the `author_url` would be the StackOverflow author's profile page.
author_url: "https://github.com/meroxa"
# The valid shells where this workflow should be active. If valid for all shells, this can be left empty.
# See FORMAT.md for the full list of accepted values.
53 changes: 53 additions & 0 deletions specs/meroxa/resources_create_elasticsearch.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
---
# The name of the workflow.
name: Add an Elasticsearch resource to the Meroxa Platform
# The corresponding command for the workflow. Any arguments should be surrounded with two curly braces. E.g `command {{arg}}`.
command: |-
meroxa resources create {{resource_name}} --type elasticsearch --url "https://{{es_username}}:{{es_password}}@{{es_url}}:{{es_port}}" --metadata '{"index.prefix": "{{es_index}}","incrementing.field.name": "{{es_incrementing_field}}"}'
# Any tags that the workflow should be categorized with.
tags:
- meroxa
# A description of the workflow.
description: Add an Elasticsearch resource to the Meroxa Platform
# List of arguments within the command.
arguments:
# Name of the argument within the command. This must exactly match the name of the argument
# within the command (without the curly braces).
- name: resource_name
# The description of the argument.
description: Name you want to use to identify this resource
# The default value for the argument.
default_value: ~
- name: es_username
description: Elasticsearch Username
default_value: ~
- name: es_password
description: Elasticsearch Password
default_value: ~
- name: es_url
# The description of the argument.
description: Elasticsearch URL
default_value: ~
- name: es_port
# The description of the argument.
description: "Elasticsearch port (e.g.: 9200)"
# The default value for the argument.
default_value: 9200
- name: es_index
# The description of the argument.
description: Elasticsearch Index
# The default value for the argument.
default_value: ~
- name: es_incrementing_field
# The description of the argument.
description: Elasticsearch Incremental Field (See View Context for more information)
# The default value for the argument.
default_value: ~
# The source URL for where the workflow was generated from, if any.
source_url: "https://docs.meroxa.com/platform/resources/elasticsearch#setup"
# The author of the workflow.
author: Meroxa
# The URL of original author of the Workflow. For example, if this workflow was generated from StackOverflow, the `author_url` would be the StackOverflow author's profile page.
author_url: "https://github.com/meroxa"
# The valid shells where this workflow should be active. If valid for all shells, this can be left empty.
# See FORMAT.md for the full list of accepted values.
44 changes: 44 additions & 0 deletions specs/meroxa/resources_create_mongodb.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
---
# The name of the workflow.
name: Add a MongoDB resource to the Meroxa Platform
# The corresponding command for the workflow. Any arguments should be surrounded with two curly braces. E.g `command {{arg}}`.
command: |-
meroxa resources create {{resource_name}} --type mongodb -u "mongodb://{{mongodb_username}}:{{mongodb_password}}@{{mongodb_url}}:{{mongodb_port}}"
# Any tags that the workflow should be categorized with.
tags:
- meroxa
# A description of the workflow.
description: Add a MongoDB resource to the Meroxa Platform
# List of arguments within the command.
arguments:
# Name of the argument within the command. This must exactly match the name of the argument
# within the command (without the curly braces).
- name: resource_name
# The description of the argument.
description: Name you want to use to identify this resource
# The default value for the argument.
default_value: ~
- name: mongodb_username
# The description of the argument.
description: MongoDB Username
default_value: ~
- name: mongodb_password
# The description of the argument.
description: MongoDB Password
default_value: ~
- name: mongodb_url
# The description of the argument.
description: MongoDB URL
default_value: ~
- name: mongodb_port
# The description of the argument.
description: "MongoDB Port (e.g.: 27017)"
default_value: 27017
# The source URL for where the workflow was generated from, if any.
source_url: "https://docs.meroxa.com/platform/resources/mongodb#setup"
# The author of the workflow.
author: Meroxa
# The URL of original author of the Workflow. For example, if this workflow was generated from StackOverflow, the `author_url` would be the StackOverflow author's profile page.
author_url: "https://github.com/meroxa"
# The valid shells where this workflow should be active. If valid for all shells, this can be left empty.
# See FORMAT.md for the full list of accepted values.
53 changes: 53 additions & 0 deletions specs/meroxa/resources_create_mysql.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
---
# The name of the workflow.
name: Add a MySQL resource to the Meroxa Platform
# The corresponding command for the workflow. Any arguments should be surrounded with two curly braces. E.g `command {{arg}}`.
command: |-
meroxa resources create {{resource_name}} --type mysql -u "mysql://{{mysql_username}}:{{mysql_password}}@{{mysql_url}}:{{mysql_port}}/{{mysql_database_name}}"
# Any tags that the workflow should be categorized with.
tags:
- meroxa
# A description of the workflow.
description: Add a MySQL resource to the Meroxa Platform
# List of arguments within the command.
arguments:
# Name of the argument within the command. This must exactly match the name of the argument
# within the command (without the curly braces).
- name: resource_name
# The description of the argument.
description: Name you want to use to identify this resource
# The default value for the argument.
default_value: ~
- name: mysql_username
# The description of the argument.
description: MySQL Username
# The default value for the argument.
default_value: ~
- name: mysql_password
# The description of the argument.
description: MySQL Password
# The default value for the argument.
default_value: ~
- name: mysql_url
# The description of the argument.
description: MySQL URL
# The default value for the argument.
default_value: ~
- name: mysql_port
# The description of the argument.
description: "MySQL Port (e.g.:3306)"
# The default value for the argument.
default_value: 3306
- name: mysql_database_name
# The description of the argument.
description: MySQL database name
# The default value for the argument.
default_value: ~
# The source URL for where the workflow was generated from, if any.
source_url: "https://docs.meroxa.com/platform/resources/mysql/setup#resource-configuration"
# The author of the workflow.
author: Meroxa
# The URL of original author of the Workflow. For example, if this workflow was generated from StackOverflow, the `author_url` would be the StackOverflow author's profile page.
author_url: "https://github.com/meroxa"
# The valid shells where this workflow should be active. If valid for all shells, this can be left empty.
# See FORMAT.md for the full list of accepted values.
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
---
# The name of the workflow.
name: Add a Postgres resource with logical replication to the Meroxa Platform
# The corresponding command for the workflow. Any arguments should be surrounded with two curly braces. E.g `command {{arg}}`.
command: |-
meroxa resources create {{resource_name}} --type postgres --url "postgres://{{pg_username}}:{{pg_password}}@{{pg_url}}:{{pg_port}}/{{pg_database_name}}" --metadata '{"logical_replication":"true"}'
# Any tags that the workflow should be categorized with.
tags:
- meroxa
# A description of the workflow.
description: Add a Postgres resource with logical replication to the Meroxa Platform
# List of arguments within the command.
arguments:
# Name of the argument within the command. This must exactly match the name of the argument
# within the command (without the curly braces).
- name: resource_name
# The description of the argument.
description: Name you want to use to identify this resource
# The default value for the argument.
default_value: ~
- name: pg_username
# The description of the argument.
description: Postgres Username
# The default value for the argument.
default_value: ~
- name: pg_password
# The description of the argument.
description: Postgres Password
# The default value for the argument.
default_value: ~
- name: pg_url
# The description of the argument.
description: Postgres URL
# The default value for the argument.
default_value: ~
- name: pg_port
# The description of the argument.
description: "Postgres Port (e.g.: 5432)"
# The default value for the argument.
default_value: 5432
- name: pg_database_name
# The description of the argument.
description: Postgres Database name
# The default value for the argument.
default_value: ~
# The source URL for where the workflow was generated from, if any.
source_url: "https://docs.meroxa.com/platform/resources/postgresql/setup#resource-configuration"
# The author of the workflow.
author: Meroxa
# The URL of original author of the Workflow. For example, if this workflow was generated from StackOverflow, the `author_url` would be the StackOverflow author's profile page.
author_url: "https://github.com/meroxa"
# The valid shells where this workflow should be active. If valid for all shells, this can be left empty.
# See FORMAT.md for the full list of accepted values.
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
---
# The name of the workflow.
name: Add a Postgres resource without logical replication to the Meroxa Platform
# The corresponding command for the workflow. Any arguments should be surrounded with two curly braces. E.g `command {{arg}}`.
command: |-
meroxa resources create {{resource_name}} --type postgres --url "postgres://{{pg_username}}:{{pg_password}}@{{pg_url}}:{{pg_port}}/{{pg_database_name}}"
# Any tags that the workflow should be categorized with.
tags:
- meroxa
# A description of the workflow.
description: Add a Postgres resource without logical replication to the Meroxa Platform
# List of arguments within the command.
arguments:
# Name of the argument within the command. This must exactly match the name of the argument
# within the command (without the curly braces).
- name: resource_name
# The description of the argument.
description: Name you want to use to identify this resource
# The default value for the argument.
default_value: ~
- name: pg_username
# The description of the argument.
description: Postgres Username
# The default value for the argument.
default_value: ~
- name: pg_password
# The description of the argument.
description: Postgres Password
# The default value for the argument.
default_value: ~
- name: pg_url
# The description of the argument.
description: Postgres URL
# The default value for the argument.
default_value: ~
- name: pg_port
# The description of the argument.
description: "Postgres Port (e.g.: 5432)"
# The default value for the argument.
default_value: 5432
- name: pg_database_name
# The description of the argument.
description: Postgres Database name
# The default value for the argument.
default_value: ~

# The source URL for where the workflow was generated from, if any.
source_url: "https://docs.meroxa.com/platform/resources/postgresql/setup#resource-configuration"
# The author of the workflow.
author: Meroxa
# The URL of original author of the Workflow. For example, if this workflow was generated from StackOverflow, the `author_url` would be the StackOverflow author's profile page.
author_url: "https://github.com/meroxa"
# The valid shells where this workflow should be active. If valid for all shells, this can be left empty.
# See FORMAT.md for the full list of accepted values.
53 changes: 53 additions & 0 deletions specs/meroxa/resources_create_redshift.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
---
# The name of the workflow.
name: Add an Amazon Redshift resource to the Meroxa Platform
# The corresponding command for the workflow. Any arguments should be surrounded with two curly braces. E.g `command {{arg}}`.
command: |-
meroxa resources create {{resource_name}} --type redshift --url "redshift://{{redshift_username}}:{{redshift_password}}@{{redshift_url}}:{{redshift_port}}/{{redshift_db_name}}"
# Any tags that the workflow should be categorized with.
tags:
- meroxa
# A description of the workflow.
description: Add an Amazon Redshift resource to the Meroxa Platform
# List of arguments within the command.
arguments:
# Name of the argument within the command. This must exactly match the name of the argument
# within the command (without the curly braces).
- name: resource_name
# The description of the argument.
description: Name you want to use to identify this resource
# The default value for the argument.
default_value: ~
- name: redshift_username
# The description of the argument.
description: Redshift username
# The default value for the argument.
default_value: ~
- name: redshift_password
# The description of the argument.
description: Redshift password
# The default value for the argument.
default_value: ~
- name: redshift_url
# The description of the argument.
description: Redshift URL
# The default value for the argument.
default_value: ~
- name: redshift_port
# The description of the argument.
description: "Redshift Port (e.g.: 5439)"
# The default value for the argument.
default_value: 5439
- name: redshift_db_name
# The description of the argument.
description: "Redshift Database name"
# The default value for the argument.
default_value: ~
# The source URL for where the workflow was generated from, if any.
source_url: "https://docs.meroxa.com/platform/resources/amazon-redshift#setup"
# The author of the workflow.
author: Meroxa
# The URL of original author of the Workflow. For example, if this workflow was generated from StackOverflow, the `author_url` would be the StackOverflow author's profile page.
author_url: "https://github.com/meroxa"
# The valid shells where this workflow should be active. If valid for all shells, this can be left empty.
# See FORMAT.md for the full list of accepted values.