embulk-output-bigquery 0.4.8 → 0.4.9

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
- SHA1:
3
- metadata.gz: a24d41ba699a9ef9467658a3c9992a3c14c32495
4
- data.tar.gz: 8ab8e872b21f05076cbc2b8c3e93e8bb64da3843
2
+ SHA256:
3
+ metadata.gz: 1b02f82363fcc5b0d7ee79ede178abb05f7ccd261f999fde60c382a86c694620
4
+ data.tar.gz: 94541e8c719c18b3c1d02a16617cc2daabef545a354c35bdbd2c19b6490d24dc
5
5
  SHA512:
6
- metadata.gz: 046bca8f4fc0f913810bf783dc7747142985d0d7482d51fa158e9254de7087ffa8d5aebf3350f981b8c1fa2231bc6f72a5dcc8063d5cf57963344d4bf72fb4e9
7
- data.tar.gz: 5c5f56560d4873379dd5979bb211cad8907635d75bbd409540ea1170f02503ab459fd1458cd3b6ef1ef4320cc57a6ff255440bb9e660656f9f304e2be2397a58
6
+ metadata.gz: 9cc25e352180cecbe6502d031e1eda10c8bfd566b407467bffacef04b45f993ddcc0976ee09a46314453c661306ba1d2604d1ae5c3bac7633f28ea2faa4eb071
7
+ data.tar.gz: f11b24264d4ace3576581da99c29a561af6eb5c26a230a9fc6fc11ef897b7f44d1645c2fdfbea9cd347e21addbff6d3340baf9c9a7a1560d00a18b49761242fd
@@ -1,5 +1,8 @@
1
+ ## 0.4.9 - 2018-09-08
2
+ * [enhancement] Enable object lifecycle management when creating buckets with `auto_create_gcs_bucket` (thanks to @potato2003)
3
+
1
4
  ## 0.4.8 - 2017-05-23
2
- * [enhancement] Support location option for auto_create_gcs_bucket option (thanks to @potato2003)
5
+ * [enhancement] Support location option for `auto_create_gcs_bucket` option (thanks to @potato2003)
3
6
 
4
7
  ## 0.4.7 - 2017-05-02
5
8
  * [enhancement] Support location option to allow to use 'asia-northeast1' region
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |spec|
2
2
  spec.name = "embulk-output-bigquery"
3
- spec.version = "0.4.8"
3
+ spec.version = "0.4.9"
4
4
  spec.authors = ["Satoshi Akama", "Naotoshi Seo"]
5
5
  spec.summary = "Google BigQuery output plugin for Embulk"
6
6
  spec.description = "Embulk plugin that insert records to Google BigQuery."
@@ -372,7 +372,7 @@ module Embulk
372
372
  target_table = task['temp_table'] ? task['temp_table'] : task['table']
373
373
  if bucket = task['gcs_bucket']
374
374
  gcs = GcsClient.new(task)
375
- gcs.insert_bucket(bucket) if task['auto_create_gcs_bucket']
375
+ gcs.insert_temporary_bucket(bucket) if task['auto_create_gcs_bucket']
376
376
  objects = paths.size.times.map { SecureRandom.uuid.to_s }
377
377
  gcs.insert_objects(paths, objects: objects, bucket: bucket)
378
378
  object_uris = objects.map {|object| URI.join("gs://#{bucket}", object).to_s }
@@ -20,12 +20,24 @@ module Embulk
20
20
  @location = @task['location']
21
21
  end
22
22
 
23
- def insert_bucket(bucket = nil)
23
+ def insert_temporary_bucket(bucket = nil)
24
24
  bucket ||= @bucket
25
25
  begin
26
26
  Embulk.logger.info { "embulk-output-bigquery: Insert bucket... #{@project}:#{bucket}" }
27
27
  body = {
28
- name: bucket
28
+ name: bucket,
29
+ lifecycle: {
30
+ rule: [
31
+ {
32
+ action: {
33
+ type: "Delete",
34
+ },
35
+ condition: {
36
+ age: 1,
37
+ }
38
+ },
39
+ ]
40
+ }
29
41
  }
30
42
 
31
43
  if @location
@@ -34,7 +46,7 @@ module Embulk
34
46
 
35
47
  opts = {}
36
48
 
37
- Embulk.logger.debug { "embulk-output-bigquery: insert_bucket(#{@project}, #{body}, #{opts})" }
49
+ Embulk.logger.debug { "embulk-output-bigquery: insert_temporary_bucket(#{@project}, #{body}, #{opts})" }
38
50
  with_network_retry { client.insert_bucket(@project, body, opts) }
39
51
  rescue Google::Apis::ServerError, Google::Apis::ClientError, Google::Apis::AuthorizationError => e
40
52
  if e.status_code == 409 && /conflict:/ =~ e.message
@@ -43,7 +55,7 @@ module Embulk
43
55
  end
44
56
  response = {status_code: e.status_code, message: e.message, error_class: e.class}
45
57
  Embulk.logger.error {
46
- "embulk-output-bigquery: insert_bucket(#{@project}, #{body}, #{opts}), response:#{response}"
58
+ "embulk-output-bigquery: insert_temporary_bucket(#{@project}, #{body}, #{opts}), response:#{response}"
47
59
  }
48
60
  raise Error, "failed to insert bucket #{@project}:#{bucket}, response:#{response}"
49
61
  end
metadata CHANGED
@@ -1,81 +1,81 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: embulk-output-bigquery
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.8
4
+ version: 0.4.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Satoshi Akama
8
8
  - Naotoshi Seo
9
- autorequire:
9
+ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2018-05-22 00:00:00.000000000 Z
12
+ date: 2018-09-08 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
+ name: google-api-client
15
16
  requirement: !ruby/object:Gem::Requirement
16
17
  requirements:
17
18
  - - ">="
18
19
  - !ruby/object:Gem::Version
19
20
  version: '0'
20
- name: google-api-client
21
- prerelease: false
22
21
  type: :runtime
22
+ prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
25
  - - ">="
26
26
  - !ruby/object:Gem::Version
27
27
  version: '0'
28
28
  - !ruby/object:Gem::Dependency
29
+ name: time_with_zone
29
30
  requirement: !ruby/object:Gem::Requirement
30
31
  requirements:
31
32
  - - ">="
32
33
  - !ruby/object:Gem::Version
33
34
  version: '0'
34
- name: time_with_zone
35
- prerelease: false
36
35
  type: :runtime
36
+ prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
39
  - - ">="
40
40
  - !ruby/object:Gem::Version
41
41
  version: '0'
42
42
  - !ruby/object:Gem::Dependency
43
+ name: embulk
43
44
  requirement: !ruby/object:Gem::Requirement
44
45
  requirements:
45
46
  - - ">="
46
47
  - !ruby/object:Gem::Version
47
48
  version: 0.8.2
48
- name: embulk
49
- prerelease: false
50
49
  type: :development
50
+ prerelease: false
51
51
  version_requirements: !ruby/object:Gem::Requirement
52
52
  requirements:
53
53
  - - ">="
54
54
  - !ruby/object:Gem::Version
55
55
  version: 0.8.2
56
56
  - !ruby/object:Gem::Dependency
57
+ name: bundler
57
58
  requirement: !ruby/object:Gem::Requirement
58
59
  requirements:
59
60
  - - ">="
60
61
  - !ruby/object:Gem::Version
61
62
  version: 1.10.6
62
- name: bundler
63
- prerelease: false
64
63
  type: :development
64
+ prerelease: false
65
65
  version_requirements: !ruby/object:Gem::Requirement
66
66
  requirements:
67
67
  - - ">="
68
68
  - !ruby/object:Gem::Version
69
69
  version: 1.10.6
70
70
  - !ruby/object:Gem::Dependency
71
+ name: rake
71
72
  requirement: !ruby/object:Gem::Requirement
72
73
  requirements:
73
74
  - - ">="
74
75
  - !ruby/object:Gem::Version
75
76
  version: '10.0'
76
- name: rake
77
- prerelease: false
78
77
  type: :development
78
+ prerelease: false
79
79
  version_requirements: !ruby/object:Gem::Requirement
80
80
  requirements:
81
81
  - - ">="
@@ -159,7 +159,7 @@ homepage: https://github.com/embulk/embulk-output-bigquery
159
159
  licenses:
160
160
  - MIT
161
161
  metadata: {}
162
- post_install_message:
162
+ post_install_message:
163
163
  rdoc_options: []
164
164
  require_paths:
165
165
  - lib
@@ -174,9 +174,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
174
174
  - !ruby/object:Gem::Version
175
175
  version: '0'
176
176
  requirements: []
177
- rubyforge_project:
178
- rubygems_version: 2.6.13
179
- signing_key:
177
+ rubyforge_project:
178
+ rubygems_version: 2.7.4
179
+ signing_key:
180
180
  specification_version: 4
181
181
  summary: Google BigQuery output plugin for Embulk
182
182
  test_files: