multiwoven-integrations 0.1.8 → 0.1.10

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 26041f1220cf77d47654d3a744e48c791f48255c6d36a63ba1dd5c86942e6f4d
4
- data.tar.gz: 9c81bf2448c9f6a02488c5d5191ec436fbe92f15436a77af09172cfefb1ab1c1
3
+ metadata.gz: 619b3f34c10d9fc8a3e8035c4629b699e9016ee83083c4b1f8f25298570ac7bd
4
+ data.tar.gz: d6a4195e592f0497cfd7a5fa86d211b87d0729478443f8394fd16fbc0c9dc356
5
5
  SHA512:
6
- metadata.gz: 020bf68470d6c03575d3205f8bd65e20215e090fcebae9d6b071c0a6b442c6229fac9e38b6c7ba7eaea5c4efcbd2750eb42f0ee730431ea36498daa443890cb7
7
- data.tar.gz: 03e30f3ac3c63154ffad67eeb159bd299ab35a4b379052bdf2c7f4c222f097b1f28ea75111c8c32f5411fa02690df0edee13a21961d70929adf2b18650e93d43
6
+ metadata.gz: b8ff8c5a16d05d5733c475a4c507346a04e5257065b7a888bdeb25c3f83df4ae5d81153e3b7cdef0c434a203bf416789856e4407974135fb3482a9d8f4e5a85f
7
+ data.tar.gz: 28014fa06b72c6f7dcb31c461f998965a68afe7e99d6e37fa4edf63d55d47fe99ce888870b00de6403b5b86d26844d1ef5599eb9caed808dfe580279b69eef94
@@ -5,7 +5,7 @@
5
5
  "category": "Adtech",
6
6
  "documentation_url": "https://docs.mutliwoven.com",
7
7
  "github_issue_label": "destination-facebook",
8
- "icon": "https://raw.githubusercontent.com/Multiwoven/multiwoven-integrations/assets/images/destination/facebook.svg",
8
+ "icon": "facebook.svg",
9
9
  "license": "MIT",
10
10
  "release_stage": "alpha",
11
11
  "support_level": "community",
@@ -5,7 +5,7 @@
5
5
  "category": "Marketing Automation",
6
6
  "documentation_url": "https://docs.mutliwoven.com",
7
7
  "github_issue_label": "destination-klaviyo",
8
- "icon": "https://raw.githubusercontent.com/Multiwoven/multiwoven-integrations/assets/images/destination/klaviyo.svg",
8
+ "icon": "klaviyo.svg",
9
9
  "license": "MIT",
10
10
  "release_stage": "alpha",
11
11
  "support_level": "community",
@@ -5,7 +5,7 @@
5
5
  "category": "CRM",
6
6
  "documentation_url": "https://docs.mutliwoven.com",
7
7
  "github_issue_label": "destination-salesforce-crm",
8
- "icon": "https://raw.githubusercontent.com/Multiwoven/multiwoven-integrations/assets/images/destination/salesforce.svg",
8
+ "icon": "salesforce.svg",
9
9
  "license": "MIT",
10
10
  "release_stage": "alpha",
11
11
  "support_level": "community",
@@ -5,7 +5,7 @@
5
5
  "category": "Team Collaboration",
6
6
  "documentation_url": "https://docs.mutliwoven.com",
7
7
  "github_issue_label": "destination-slack",
8
- "icon": "https://raw.githubusercontent.com/Multiwoven/multiwoven-integrations/assets/images/destination/slack.svg",
8
+ "icon": "slack.svg",
9
9
  "license": "MIT",
10
10
  "release_stage": "alpha",
11
11
  "support_level": "community",
@@ -2,7 +2,7 @@
2
2
 
3
3
  module Multiwoven
4
4
  module Integrations
5
- VERSION = "0.1.8"
5
+ VERSION = "0.1.10"
6
6
 
7
7
  ENABLED_SOURCES = %w[
8
8
  Snowflake
@@ -3,6 +3,7 @@
3
3
  module Multiwoven
4
4
  module Integrations
5
5
  class Service
6
+ MAIN_BRANCH_SHA = Git.ls_remote("https://github.com/Multiwoven/multiwoven-integrations")["head"][:sha]
6
7
  class << self
7
8
  def initialize
8
9
  yield(config) if block_given?
@@ -37,14 +38,12 @@ module Multiwoven
37
38
 
38
39
  def build_connectors(enabled_connectors, type)
39
40
  enabled_connectors.map do |connector|
40
- client = connector_class(
41
- type, connector
42
- ).new
43
- client.meta_data["data"].to_h.merge(
44
- {
45
- connector_spec: client.connector_spec.to_h
46
- }
47
- )
41
+ client = connector_class(type, connector).new
42
+ connector_spec = { connector_spec: client.connector_spec.to_h }
43
+ icon_name = client.meta_data.with_indifferent_access["data"]["icon"]
44
+ icon_url = "https://raw.githubusercontent.com/Multiwoven/multiwoven-integrations/#{MAIN_BRANCH_SHA}/assets/images/connectors/#{icon_name}"
45
+ client.meta_data["data"].to_h.merge!(connector_spec)
46
+ client.meta_data["data"].to_h.merge!({ "icon": icon_url })
48
47
  end
49
48
  end
50
49
 
@@ -5,7 +5,7 @@
5
5
  "category": "Data Warehouse",
6
6
  "documentation_url": "https://docs.mutliwoven.com",
7
7
  "github_issue_label": "source-bigquery",
8
- "icon": "https://raw.githubusercontent.com/Multiwoven/multiwoven-integrations/assets/images/source/bigquery.svg",
8
+ "icon": "bigquery.svg",
9
9
  "license": "MIT",
10
10
  "release_stage": "alpha",
11
11
  "support_level": "community",
@@ -5,7 +5,7 @@
5
5
  "category": "Data Warehouse",
6
6
  "documentation_url": "https://docs.mutliwoven.com",
7
7
  "github_issue_label": "source-redshift",
8
- "icon": "https://raw.githubusercontent.com/Multiwoven/multiwoven-integrations/assets/images/source/redshift.svg",
8
+ "icon": "redshift.svg",
9
9
  "license": "MIT",
10
10
  "release_stage": "alpha",
11
11
  "support_level": "community",
@@ -5,21 +5,35 @@
5
5
  "$schema": "http://json-schema.org/draft-07/schema#",
6
6
  "title": "Redshift Source Spec",
7
7
  "type": "object",
8
- "required": ["username", "password", "host", "port", "database", "schema"],
8
+ "required": ["host", "port", "database", "schema"],
9
9
  "properties": {
10
- "username": {
11
- "description": "The username for Redshift database access.",
12
- "examples": ["REDSHIFT_USER"],
13
- "type": "string",
14
- "title": "Username",
15
- "order": 1
16
- },
17
- "password": {
18
- "description": "The password for the Redshift user.",
19
- "type": "string",
20
- "multiwoven_secret": true,
21
- "title": "Password",
22
- "order": 2
10
+ "credentials": {
11
+ "title": "Authorization Method",
12
+ "type": "object",
13
+ "required": ["auth_type", "username", "password"],
14
+ "properties": {
15
+ "auth_type": {
16
+ "type": "string",
17
+ "default": "username/password",
18
+ "order": 0,
19
+ "readOnly": true
20
+ },
21
+ "username": {
22
+ "description": "The username for Redshift database access.",
23
+ "examples": ["REDSHIFT_USER"],
24
+ "type": "string",
25
+ "title": "Username",
26
+ "order": 1
27
+ },
28
+ "password": {
29
+ "description": "The password for the Redshift user.",
30
+ "type": "string",
31
+ "multiwoven_secret": true,
32
+ "title": "Password",
33
+ "order": 2
34
+ }
35
+ },
36
+ "order": 0
23
37
  },
24
38
  "host": {
25
39
  "description": "The host endpoint of the Redshift cluster.",
@@ -28,28 +42,28 @@
28
42
  ],
29
43
  "type": "string",
30
44
  "title": "Host",
31
- "order": 3
45
+ "order": 1
32
46
  },
33
47
  "port": {
34
48
  "description": "The port on which Redshift is running (default is 5439).",
35
49
  "examples": ["5439"],
36
50
  "type": "string",
37
51
  "title": "Port",
38
- "order": 4
52
+ "order": 2
39
53
  },
40
54
  "database": {
41
55
  "description": "The specific Redshift database to connect to.",
42
56
  "examples": ["REDSHIFT_DB"],
43
57
  "type": "string",
44
58
  "title": "Database",
45
- "order": 5
59
+ "order": 3
46
60
  },
47
61
  "schema": {
48
62
  "description": "The schema within the Redshift database.",
49
63
  "examples": ["REDSHIFT_SCHEMA"],
50
64
  "type": "string",
51
65
  "title": "Schema",
52
- "order": 6
66
+ "order": 4
53
67
  }
54
68
  }
55
69
  }
@@ -5,7 +5,7 @@
5
5
  "category": "Data Warehouse",
6
6
  "documentation_url": "https://docs.mutliwoven.com",
7
7
  "github_issue_label": "source-snowflake",
8
- "icon": "https://raw.githubusercontent.com/Multiwoven/multiwoven-integrations/assets/images/source/snowflake.svg",
8
+ "icon": "snowflake.svg",
9
9
  "license": "MIT",
10
10
  "release_stage": "alpha",
11
11
  "support_level": "community",
@@ -5,28 +5,35 @@
5
5
  "$schema": "http://json-schema.org/draft-07/schema#",
6
6
  "title": "Snowflake Source Spec",
7
7
  "type": "object",
8
- "required": [
9
- "username",
10
- "password",
11
- "host",
12
- "role",
13
- "warehouse",
14
- "database"
15
- ],
8
+ "required": ["host", "role", "warehouse", "database"],
16
9
  "properties": {
17
- "username": {
18
- "description": "The username you created to allow multiwoven to access the database.",
19
- "examples": ["MULTIWOVEN_USER"],
20
- "type": "string",
21
- "title": "Username",
22
- "order": 1
23
- },
24
- "password": {
25
- "description": "The password associated with the username.",
26
- "type": "string",
27
- "multiwoven_secret": true,
28
- "title": "Password",
29
- "order": 2
10
+ "credentials": {
11
+ "title": "Authorization Method",
12
+ "type": "object",
13
+ "required": ["auth_type", "username", "password"],
14
+ "properties": {
15
+ "auth_type": {
16
+ "type": "string",
17
+ "default": "username/password",
18
+ "order": 0,
19
+ "readOnly": true
20
+ },
21
+ "username": {
22
+ "description": "The username for Redshift database access.",
23
+ "examples": ["REDSHIFT_USER"],
24
+ "type": "string",
25
+ "title": "Username",
26
+ "order": 1
27
+ },
28
+ "password": {
29
+ "description": "The password for the Redshift user.",
30
+ "type": "string",
31
+ "multiwoven_secret": true,
32
+ "title": "Password",
33
+ "order": 2
34
+ }
35
+ },
36
+ "order": 0
30
37
  },
31
38
  "host": {
32
39
  "description": "The host domain of the snowflake instance (must include the account, region, cloud environment, and end with snowflakecomputing.com).",
@@ -13,6 +13,7 @@ require "active_support/core_ext/hash/indifferent_access"
13
13
  require "restforce"
14
14
  require "logger"
15
15
  require "slack-ruby-client"
16
+ require "git"
16
17
 
17
18
  # Service
18
19
  require_relative "integrations/config"
@@ -38,6 +38,7 @@ Gem::Specification.new do |spec|
38
38
  spec.add_runtime_dependency "dry-schema"
39
39
  spec.add_runtime_dependency "dry-struct"
40
40
  spec.add_runtime_dependency "dry-types"
41
+ spec.add_runtime_dependency "git"
41
42
  spec.add_runtime_dependency "google-cloud-bigquery"
42
43
  spec.add_runtime_dependency "pg"
43
44
  spec.add_runtime_dependency "rake"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: multiwoven-integrations
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.8
4
+ version: 0.1.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Subin T P
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-02-01 00:00:00.000000000 Z
11
+ date: 2024-02-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -80,6 +80,20 @@ dependencies:
80
80
  - - ">="
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: git
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :runtime
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
83
97
  - !ruby/object:Gem::Dependency
84
98
  name: google-cloud-bigquery
85
99
  requirement: !ruby/object:Gem::Requirement
@@ -279,13 +293,13 @@ files:
279
293
  - LICENSE.txt
280
294
  - README.md
281
295
  - Rakefile
282
- - assets/images/destination/facebook.svg
283
- - assets/images/destination/klaviyo.svg
284
- - assets/images/destination/salesforce.svg
285
- - assets/images/destination/slack.svg
286
- - assets/images/source/bigquery.svg
287
- - assets/images/source/redshift.svg
288
- - assets/images/source/snowflake.svg
296
+ - assets/images/connectors/bigquery.svg
297
+ - assets/images/connectors/facebook.svg
298
+ - assets/images/connectors/klaviyo.svg
299
+ - assets/images/connectors/redshift.svg
300
+ - assets/images/connectors/salesforce.svg
301
+ - assets/images/connectors/slack.svg
302
+ - assets/images/connectors/snowflake.svg
289
303
  - lib/multiwoven/integrations.rb
290
304
  - lib/multiwoven/integrations/config.rb
291
305
  - lib/multiwoven/integrations/core/base_connector.rb
File without changes
File without changes
File without changes