embulk-output-bigquery 0.4.8 → 0.4.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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: