apidae 1.3.10 → 1.3.13

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: ff7e99f43738b625845c69d825db7272d23ac2d65f95750434a5ec9c1f758c21
4
- data.tar.gz: a445c317db55b883f9226bc41885445c9d67d481fe5e09bb520ebeb3f5b870b0
3
+ metadata.gz: bf56887dfb66e43d40e27502ee04927cc5464aec4d0338fe047f35572ed08e55
4
+ data.tar.gz: 25bd439610b4315b8cdcd6ecc3d9050b7f2572ff805dae27e1baaf964e861841
5
5
  SHA512:
6
- metadata.gz: 947899964c8bd92cf170f2efa7b26d174422cbaf6c6fee4dc582fe8fce8f1cce9ec4f165dd53147356fceb1a60b7c7b5829f40e2ff17057c9d53555c59967652
7
- data.tar.gz: 89de66fd894f4138e5f658d25c4e606f9d797cc2405d3f76bf85b12952b3c6ced414dbf07d1b8fb0e91177346ef28f29f4ffaeab234253b011413369ce6b7050
6
+ metadata.gz: e42811c794c15006dad38b8f6809d197d1d2c749b86a3cdbe4609a8213783c5fc725d8231c94a70ddff458b014b883225043f105d07b2d72824927ea9d000377
7
+ data.tar.gz: df8b7b6dddcfbe31746fc1a36ab807de31832f008790b168176431a33cfc85cfa9de0ef29ce0714445c3df57af927fce4228d8871acdd1c1f8b421f42b793d6d
@@ -37,7 +37,10 @@ module Apidae
37
37
  def run
38
38
  success = true
39
39
  Export.pending.each do |e|
40
+ logger.info "Running import for Apidae export #{e.id} - Project #{e.project.id}"
41
+ e.update(status: Export::IN_PROGRESS)
40
42
  success &&= e.import_data
43
+ logger.info "Apidae export #{e.id} import run complete - Project #{e.project.id}"
41
44
  end
42
45
  success ? head(:ok) : head(:internal_server_error)
43
46
  end
@@ -370,7 +370,11 @@ module Apidae
370
370
  end
371
371
 
372
372
  def self.node_id(node, key)
373
- node[key][:id] if node && node[key]
373
+ if node && node[key]
374
+ node[key].is_a?(Array) ? node[key][0][:id] : node[key][:id]
375
+ else
376
+ nil
377
+ end
374
378
  end
375
379
 
376
380
  private
@@ -5,6 +5,7 @@ module Apidae
5
5
  class Export < ActiveRecord::Base
6
6
 
7
7
  PENDING = 'pending'
8
+ IN_PROGRESS = 'in_progress'
8
9
  COMPLETE = 'complete'
9
10
  CANCELLED = 'cancelled'
10
11
 
@@ -24,11 +25,16 @@ module Apidae
24
25
  where(remote_status: 'SUCCESS', status: PENDING).order(:id)
25
26
  end
26
27
 
28
+ def self.in_progress
29
+ where(remote_status: 'SUCCESS', status: IN_PROGRESS)
30
+ end
31
+
27
32
  def import_data
28
33
  success = true
29
34
  begin
30
35
  open(file_url) do |f|
31
36
  begin
37
+ logger.info "Starting file import for export #{id} - project #{project_id}"
32
38
  FileImport.import(f, project_id)
33
39
  unless confirm_url.blank?
34
40
  uri = URI(confirm_url)
@@ -36,11 +42,13 @@ module Apidae
36
42
  Net::HTTP.start(uri.hostname, uri.port) do |http|
37
43
  http.request(req)
38
44
  end
45
+ logger.info "Posted file import callback for export #{id} - project #{project_id}"
39
46
  end
40
47
  update(status: Export::COMPLETE)
41
48
  if Rails.application.config.respond_to?(:apidae_import_callback)
42
49
  Rails.application.config.apidae_import_callback.call(self)
43
50
  end
51
+ logger.info "Completed file import for export #{id} - project #{project_id}"
44
52
  rescue Exception => ex
45
53
  logger.error("Failed to import export file : #{file_url}")
46
54
  logger.error("Error is : #{ex} \n#{ex.backtrace.join("\n") unless ex.backtrace.blank?}")
@@ -1,3 +1,3 @@
1
1
  module Apidae
2
- VERSION = "1.3.10"
2
+ VERSION = "1.3.13"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: apidae
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.10
4
+ version: 1.3.13
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jean-Baptiste Vilain
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-05-11 00:00:00.000000000 Z
11
+ date: 2022-07-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails