multiwoven-integrations 0.1.52 → 0.1.54

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: 48a0bc4db6363e13af5b5c1f72b35c00be6975e6b0a63d34117f40ba43cbf39c
4
- data.tar.gz: b0cee1ab790474c3be66718220ffa07daea339226f6ff518449c354e6ce0cdc8
3
+ metadata.gz: e4b51e39426dfe4192cfdf80398977a56b8df6cc7b1a3bef50364baba0186513
4
+ data.tar.gz: 3546ba77679508fdcbda75ed4d73cd248994312e7a2e67241dacff009a3f8b61
5
5
  SHA512:
6
- metadata.gz: fef782ddd15c42247a39e6c4db54430388587d553a4ee0a8b4325bdc938c3460c2ccef560153e7bb467763ec67f1bc8760640c722df7be5a870993c9d98229ad
7
- data.tar.gz: 6da2703663100ff0240aefa0db8acac9382ac1c16a0445fd19bac682025b30fcd161641fefc7dc955d0519cbd3b1768462856e98a8af614b8343c38235a9b513
6
+ metadata.gz: 9df99e773d406ac6e535d1d9572bc76df7dbafb22b3da237ee7257f52db509d2700301186bf656059fe11fc42bd2393a5553f4da59005556ed223eafe75f8a64
7
+ data.tar.gz: 1e8ca52d6b5afef62e80a36c36b3351f47e2e321910bdfbefbfeb43f73a7558dffe1d3ebb1f1eba836cdfe682278786214c6a1eb20bea5385dcf9401fd956d25
@@ -82,13 +82,14 @@ module Multiwoven::Integrations::Destination
82
82
  def generate_file_path(sync_config)
83
83
  connection_specification = sync_config.destination.connection_specification.with_indifferent_access
84
84
  timestamp = Time.now.strftime("%Y%m%d-%H%M%S")
85
- file_name = "#{sync_config.stream.name}_#{timestamp}.csv"
85
+ file_name = "#{connection_specification[:file_name]}_#{timestamp}.csv"
86
86
  File.join(connection_specification[:destination_path], file_name)
87
87
  end
88
88
 
89
89
  def generate_local_file_name(sync_config)
90
+ connection_specification = sync_config.destination.connection_specification.with_indifferent_access
90
91
  timestamp = Time.now.strftime("%Y%m%d-%H%M%S")
91
- "#{sync_config.stream.name}_#{timestamp}"
92
+ "#{connection_specification[:file_name]}_#{timestamp}"
92
93
  end
93
94
 
94
95
  def generate_csv_content(records)
@@ -5,7 +5,7 @@
5
5
  "schema_mode": "schemaless",
6
6
  "streams": [
7
7
  {
8
- "name": "visits",
8
+ "name": "sftp",
9
9
  "batch_support": true,
10
10
  "batch_size": 100000,
11
11
  "action": "create",
@@ -38,6 +38,12 @@
38
38
  "type": "string",
39
39
  "description": "Path to the directory where files will be written.",
40
40
  "order": 4
41
+ },
42
+ "file_name": {
43
+ "title": "File Name",
44
+ "type": "string",
45
+ "description": "Name of the file to be written.",
46
+ "order": 5
41
47
  }
42
48
  }
43
49
  }
@@ -10,7 +10,8 @@ module Multiwoven
10
10
  SyncStatus = Types::String.enum("started", "running", "complete", "incomplete")
11
11
  DestinationSyncMode = Types::String.enum("insert", "upsert")
12
12
  ConnectorType = Types::String.enum("source", "destination")
13
- ModelQueryType = Types::String.enum("raw_sql", "dbt")
13
+ ConnectorQueryType = Types::String.enum("raw_sql", "soql")
14
+ ModelQueryType = Types::String.enum("raw_sql", "dbt", "soql")
14
15
  ConnectionStatusType = Types::String.enum("succeeded", "failed")
15
16
  StreamType = Types::String.enum("static", "dynamic")
16
17
  StreamAction = Types::String.enum("fetch", "create", "update", "delete")
@@ -69,6 +70,7 @@ module Multiwoven
69
70
  attribute :name, Types::String
70
71
  attribute :type, ConnectorType
71
72
  attribute :connection_specification, Types::Hash
73
+ attribute :query_type, ConnectorQueryType.optional.default("raw_sql")
72
74
  end
73
75
 
74
76
  class LogMessage < ProtocolModel
@@ -2,7 +2,7 @@
2
2
 
3
3
  module Multiwoven
4
4
  module Integrations
5
- VERSION = "0.1.52"
5
+ VERSION = "0.1.54"
6
6
 
7
7
  ENABLED_SOURCES = %w[
8
8
  Snowflake
@@ -0,0 +1,65 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative "lib/multiwoven/integrations/rollout"
4
+
5
+ Gem::Specification.new do |spec|
6
+ spec.name = "multiwoven-integrations"
7
+ spec.version = Multiwoven::Integrations::VERSION
8
+ spec.authors = ["Subin T P"]
9
+ spec.email = ["subin@multiwoven.com"]
10
+
11
+ spec.summary = "Integration suite for open source reverse ETL platform"
12
+ spec.description = "Multiwoven Integrations is a comprehensive Ruby gem designed to facilitate seamless connectivity between various data sources and SaaS platforms."
13
+
14
+ spec.homepage = "https://www.multiwoven.com/"
15
+ spec.license = "MIT"
16
+ spec.required_ruby_version = ">= 2.6.0"
17
+
18
+ # spec.metadata["allowed_push_host"] = nil
19
+ spec.metadata["github_repo"] = "https://github.com/Multiwoven/multiwoven-integrations"
20
+ spec.metadata["homepage_uri"] = spec.homepage
21
+ spec.metadata["source_code_uri"] = "https://github.com/Multiwoven/multiwoven-integrations"
22
+ spec.metadata["changelog_uri"] = "https://github.com/Multiwoven/multiwoven-integrations/blob/master/CHANGELOG.md"
23
+
24
+ # Specify which files should be added to the gem when it is released.
25
+ # The `git ls-files -z` loads the files in the RubyGem that have been added into git.
26
+ spec.files = Dir.chdir(__dir__) do
27
+ `git ls-files -z`.split("\x0").reject do |f|
28
+ (File.expand_path(f) == __FILE__) ||
29
+ f.start_with?(*%w[bin/ test/ spec/ features/ .git .circleci appveyor Gemfile])
30
+ end
31
+ end
32
+ spec.bindir = "exe"
33
+ spec.executables = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
34
+ spec.require_paths = ["lib"]
35
+
36
+ spec.add_runtime_dependency "activesupport"
37
+ spec.add_runtime_dependency "async-websocket"
38
+ spec.add_runtime_dependency "csv"
39
+ spec.add_runtime_dependency "dry-schema"
40
+ spec.add_runtime_dependency "dry-struct"
41
+ spec.add_runtime_dependency "dry-types"
42
+ spec.add_runtime_dependency "git"
43
+ spec.add_runtime_dependency "google-apis-sheets_v4"
44
+ spec.add_runtime_dependency "google-cloud-bigquery"
45
+ spec.add_runtime_dependency "hubspot-api-client"
46
+ spec.add_runtime_dependency "net-sftp"
47
+ spec.add_runtime_dependency "pg"
48
+ spec.add_runtime_dependency "rake"
49
+ spec.add_runtime_dependency "restforce"
50
+ spec.add_runtime_dependency "ruby-limiter"
51
+ spec.add_runtime_dependency "ruby-odbc"
52
+ spec.add_runtime_dependency "sequel"
53
+ spec.add_runtime_dependency "slack-ruby-client"
54
+ spec.add_runtime_dependency "stripe"
55
+
56
+ spec.add_development_dependency "byebug"
57
+ spec.add_development_dependency "rspec"
58
+ spec.add_development_dependency "rubocop"
59
+ spec.add_development_dependency "simplecov"
60
+ spec.add_development_dependency "simplecov_json_formatter"
61
+ spec.add_development_dependency "webmock"
62
+
63
+ # For more information and examples about making a new gem, check out our
64
+ # guide at: https://bundler.io/guides/creating_gem.html
65
+ end
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.52
4
+ version: 0.1.54
5
5
  platform: ruby
6
6
  authors:
7
7
  - Subin T P
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-03-28 00:00:00.000000000 Z
11
+ date: 2024-04-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -474,6 +474,7 @@ files:
474
474
  - lib/multiwoven/integrations/source/snowflake/config/meta.json
475
475
  - lib/multiwoven/integrations/source/snowflake/config/spec.json
476
476
  - lib/multiwoven/integrations/source/snowflake/icon.svg
477
+ - multiwoven-integrations.gemspec
477
478
  - sig/multiwoven/integrations.rbs
478
479
  homepage: https://www.multiwoven.com/
479
480
  licenses:
@@ -483,7 +484,7 @@ metadata:
483
484
  homepage_uri: https://www.multiwoven.com/
484
485
  source_code_uri: https://github.com/Multiwoven/multiwoven-integrations
485
486
  changelog_uri: https://github.com/Multiwoven/multiwoven-integrations/blob/master/CHANGELOG.md
486
- post_install_message:
487
+ post_install_message:
487
488
  rdoc_options: []
488
489
  require_paths:
489
490
  - lib
@@ -498,8 +499,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
498
499
  - !ruby/object:Gem::Version
499
500
  version: '0'
500
501
  requirements: []
501
- rubygems_version: 3.5.3
502
- signing_key:
502
+ rubygems_version: 3.4.1
503
+ signing_key:
503
504
  specification_version: 4
504
505
  summary: Integration suite for open source reverse ETL platform
505
506
  test_files: []