gooddata 2.2.0 → 2.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (67) hide show
  1. checksums.yaml +5 -5
  2. data/.gdc-ii-config.yaml +42 -1
  3. data/.github/workflows/build.yml +14 -13
  4. data/.github/workflows/pre-merge.yml +13 -13
  5. data/.pronto.yml +1 -0
  6. data/.rubocop.yml +2 -14
  7. data/CHANGELOG.md +9 -0
  8. data/Dockerfile +13 -7
  9. data/Dockerfile.jruby +5 -5
  10. data/Dockerfile.ruby +5 -7
  11. data/Gemfile +4 -2
  12. data/README.md +5 -4
  13. data/Rakefile +1 -1
  14. data/SDK_VERSION +1 -1
  15. data/VERSION +1 -1
  16. data/bin/run_brick.rb +7 -0
  17. data/ci/mysql/pom.xml +6 -1
  18. data/ci/redshift/pom.xml +3 -4
  19. data/docker-compose.lcm.yml +42 -1
  20. data/docker-compose.yml +42 -0
  21. data/gooddata.gemspec +21 -22
  22. data/lcm.rake +9 -0
  23. data/lib/gooddata/bricks/base_pipeline.rb +26 -0
  24. data/lib/gooddata/bricks/brick.rb +0 -1
  25. data/lib/gooddata/bricks/middleware/execution_result_middleware.rb +3 -3
  26. data/lib/gooddata/bricks/pipeline.rb +2 -14
  27. data/lib/gooddata/cloud_resources/mysql/mysql_client.rb +18 -8
  28. data/lib/gooddata/cloud_resources/redshift/drivers/.gitkeepme +0 -0
  29. data/lib/gooddata/cloud_resources/redshift/redshift_client.rb +0 -2
  30. data/lib/gooddata/cloud_resources/snowflake/snowflake_client.rb +1 -1
  31. data/lib/gooddata/lcm/actions/base_action.rb +157 -0
  32. data/lib/gooddata/lcm/actions/collect_data_product.rb +2 -1
  33. data/lib/gooddata/lcm/actions/collect_projects_warning_status.rb +53 -0
  34. data/lib/gooddata/lcm/actions/collect_segment_clients.rb +14 -0
  35. data/lib/gooddata/lcm/actions/initialize_continue_on_error_option.rb +87 -0
  36. data/lib/gooddata/lcm/actions/migrate_gdc_date_dimension.rb +28 -2
  37. data/lib/gooddata/lcm/actions/provision_clients.rb +34 -5
  38. data/lib/gooddata/lcm/actions/synchronize_cas.rb +24 -4
  39. data/lib/gooddata/lcm/actions/synchronize_clients.rb +56 -4
  40. data/lib/gooddata/lcm/actions/synchronize_dataset_mappings.rb +28 -3
  41. data/lib/gooddata/lcm/actions/synchronize_etls_in_segment.rb +48 -11
  42. data/lib/gooddata/lcm/actions/synchronize_kd_dashboard_permission.rb +103 -0
  43. data/lib/gooddata/lcm/actions/synchronize_ldm.rb +60 -15
  44. data/lib/gooddata/lcm/actions/synchronize_ldm_layout.rb +98 -0
  45. data/lib/gooddata/lcm/actions/synchronize_pp_dashboard_permission.rb +108 -0
  46. data/lib/gooddata/lcm/actions/synchronize_schedules.rb +31 -1
  47. data/lib/gooddata/lcm/actions/synchronize_user_filters.rb +14 -9
  48. data/lib/gooddata/lcm/actions/synchronize_user_groups.rb +30 -4
  49. data/lib/gooddata/lcm/actions/synchronize_users.rb +11 -10
  50. data/lib/gooddata/lcm/actions/update_metric_formats.rb +21 -4
  51. data/lib/gooddata/lcm/exceptions/lcm_execution_warning.rb +15 -0
  52. data/lib/gooddata/lcm/helpers/check_helper.rb +19 -0
  53. data/lib/gooddata/lcm/lcm2.rb +45 -4
  54. data/lib/gooddata/lcm/user_bricks_helper.rb +9 -0
  55. data/lib/gooddata/mixins/inspector.rb +1 -1
  56. data/lib/gooddata/models/ldm_layout.rb +38 -0
  57. data/lib/gooddata/models/project.rb +197 -22
  58. data/lib/gooddata/models/project_creator.rb +83 -6
  59. data/lib/gooddata/models/segment.rb +2 -1
  60. data/lib/gooddata/models/user_filters/user_filter_builder.rb +104 -15
  61. data/lib/gooddata/rest/connection.rb +5 -3
  62. data/lib/gooddata/rest/phmap.rb +1 -0
  63. data/lib/gooddata.rb +1 -0
  64. data/lib/gooddata_brick_base.rb +35 -0
  65. data/sonar-project.properties +6 -0
  66. metadata +64 -59
  67. data/lib/gooddata/cloud_resources/redshift/drivers/log4j.properties +0 -15
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gooddata
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.2.0
4
+ version: 2.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Pavel Kolesnikov
@@ -14,7 +14,7 @@ authors:
14
14
  autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
- date: 2022-02-15 00:00:00.000000000 Z
17
+ date: 2024-03-12 00:00:00.000000000 Z
18
18
  dependencies:
19
19
  - !ruby/object:Gem::Dependency
20
20
  name: license_finder
@@ -36,14 +36,14 @@ dependencies:
36
36
  requirements:
37
37
  - - "~>"
38
38
  - !ruby/object:Gem::Version
39
- version: '11.1'
39
+ version: '13.0'
40
40
  type: :development
41
41
  prerelease: false
42
42
  version_requirements: !ruby/object:Gem::Requirement
43
43
  requirements:
44
44
  - - "~>"
45
45
  - !ruby/object:Gem::Version
46
- version: '11.1'
46
+ version: '13.0'
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: redcarpet
49
49
  requirement: !ruby/object:Gem::Requirement
@@ -64,56 +64,56 @@ dependencies:
64
64
  requirements:
65
65
  - - "~>"
66
66
  - !ruby/object:Gem::Version
67
- version: 3.5.0
67
+ version: 3.12.0
68
68
  type: :development
69
69
  prerelease: false
70
70
  version_requirements: !ruby/object:Gem::Requirement
71
71
  requirements:
72
72
  - - "~>"
73
73
  - !ruby/object:Gem::Version
74
- version: 3.5.0
74
+ version: 3.12.0
75
75
  - !ruby/object:Gem::Dependency
76
76
  name: rspec-expectations
77
77
  requirement: !ruby/object:Gem::Requirement
78
78
  requirements:
79
79
  - - "~>"
80
80
  - !ruby/object:Gem::Version
81
- version: '3.5'
81
+ version: '3.12'
82
82
  type: :development
83
83
  prerelease: false
84
84
  version_requirements: !ruby/object:Gem::Requirement
85
85
  requirements:
86
86
  - - "~>"
87
87
  - !ruby/object:Gem::Version
88
- version: '3.5'
88
+ version: '3.12'
89
89
  - !ruby/object:Gem::Dependency
90
90
  name: rspec_junit_formatter
91
91
  requirement: !ruby/object:Gem::Requirement
92
92
  requirements:
93
93
  - - "~>"
94
94
  - !ruby/object:Gem::Version
95
- version: 0.3.0
95
+ version: 0.6.0
96
96
  type: :development
97
97
  prerelease: false
98
98
  version_requirements: !ruby/object:Gem::Requirement
99
99
  requirements:
100
100
  - - "~>"
101
101
  - !ruby/object:Gem::Version
102
- version: 0.3.0
102
+ version: 0.6.0
103
103
  - !ruby/object:Gem::Dependency
104
104
  name: rubocop
105
105
  requirement: !ruby/object:Gem::Requirement
106
106
  requirements:
107
- - - "~>"
107
+ - - ">="
108
108
  - !ruby/object:Gem::Version
109
- version: 0.59.1
109
+ version: '1.28'
110
110
  type: :development
111
111
  prerelease: false
112
112
  version_requirements: !ruby/object:Gem::Requirement
113
113
  requirements:
114
- - - "~>"
114
+ - - ">="
115
115
  - !ruby/object:Gem::Version
116
- version: 0.59.1
116
+ version: '1.28'
117
117
  - !ruby/object:Gem::Dependency
118
118
  name: simplecov
119
119
  requirement: !ruby/object:Gem::Requirement
@@ -202,42 +202,42 @@ dependencies:
202
202
  name: pronto
203
203
  requirement: !ruby/object:Gem::Requirement
204
204
  requirements:
205
- - - "~>"
205
+ - - ">="
206
206
  - !ruby/object:Gem::Version
207
207
  version: '0.10'
208
208
  type: :development
209
209
  prerelease: false
210
210
  version_requirements: !ruby/object:Gem::Requirement
211
211
  requirements:
212
- - - "~>"
212
+ - - ">="
213
213
  - !ruby/object:Gem::Version
214
214
  version: '0.10'
215
215
  - !ruby/object:Gem::Dependency
216
216
  name: pronto-rubocop
217
217
  requirement: !ruby/object:Gem::Requirement
218
218
  requirements:
219
- - - "~>"
219
+ - - ">="
220
220
  - !ruby/object:Gem::Version
221
221
  version: '0.9'
222
222
  type: :development
223
223
  prerelease: false
224
224
  version_requirements: !ruby/object:Gem::Requirement
225
225
  requirements:
226
- - - "~>"
226
+ - - ">="
227
227
  - !ruby/object:Gem::Version
228
228
  version: '0.9'
229
229
  - !ruby/object:Gem::Dependency
230
230
  name: pronto-reek
231
231
  requirement: !ruby/object:Gem::Requirement
232
232
  requirements:
233
- - - "~>"
233
+ - - ">="
234
234
  - !ruby/object:Gem::Version
235
235
  version: '0.9'
236
236
  type: :development
237
237
  prerelease: false
238
238
  version_requirements: !ruby/object:Gem::Requirement
239
239
  requirements:
240
- - - "~>"
240
+ - - ">="
241
241
  - !ruby/object:Gem::Version
242
242
  version: '0.9'
243
243
  - !ruby/object:Gem::Dependency
@@ -286,22 +286,16 @@ dependencies:
286
286
  name: activesupport
287
287
  requirement: !ruby/object:Gem::Requirement
288
288
  requirements:
289
- - - ">="
290
- - !ruby/object:Gem::Version
291
- version: 5.2.4.3
292
289
  - - "<"
293
290
  - !ruby/object:Gem::Version
294
- version: '6.0'
291
+ version: 7.0.0
295
292
  type: :runtime
296
293
  prerelease: false
297
294
  version_requirements: !ruby/object:Gem::Requirement
298
295
  requirements:
299
- - - ">="
300
- - !ruby/object:Gem::Version
301
- version: 5.2.4.3
302
296
  - - "<"
303
297
  - !ruby/object:Gem::Version
304
- version: '6.0'
298
+ version: 7.0.0
305
299
  - !ruby/object:Gem::Dependency
306
300
  name: aws-sdk-s3
307
301
  requirement: !ruby/object:Gem::Requirement
@@ -320,50 +314,50 @@ dependencies:
320
314
  name: docile
321
315
  requirement: !ruby/object:Gem::Requirement
322
316
  requirements:
323
- - - ">"
317
+ - - "~>"
324
318
  - !ruby/object:Gem::Version
325
319
  version: '1.1'
326
- - - "<"
327
- - !ruby/object:Gem::Version
328
- version: 1.4.0
329
320
  type: :runtime
330
321
  prerelease: false
331
322
  version_requirements: !ruby/object:Gem::Requirement
332
323
  requirements:
333
- - - ">"
324
+ - - "~>"
334
325
  - !ruby/object:Gem::Version
335
326
  version: '1.1'
336
- - - "<"
337
- - !ruby/object:Gem::Version
338
- version: 1.4.0
339
327
  - !ruby/object:Gem::Dependency
340
328
  name: azure-storage-blob
341
329
  requirement: !ruby/object:Gem::Requirement
342
330
  requirements:
343
331
  - - "~>"
344
332
  - !ruby/object:Gem::Version
345
- version: 1.1.0
333
+ version: '2.0'
346
334
  type: :runtime
347
335
  prerelease: false
348
336
  version_requirements: !ruby/object:Gem::Requirement
349
337
  requirements:
350
338
  - - "~>"
351
339
  - !ruby/object:Gem::Version
352
- version: 1.1.0
340
+ version: '2.0'
353
341
  - !ruby/object:Gem::Dependency
354
342
  name: nokogiri
355
343
  requirement: !ruby/object:Gem::Requirement
356
344
  requirements:
357
345
  - - "~>"
358
346
  - !ruby/object:Gem::Version
359
- version: 1.10.0
347
+ version: '1'
348
+ - - ">="
349
+ - !ruby/object:Gem::Version
350
+ version: 1.10.8
360
351
  type: :runtime
361
352
  prerelease: false
362
353
  version_requirements: !ruby/object:Gem::Requirement
363
354
  requirements:
364
355
  - - "~>"
365
356
  - !ruby/object:Gem::Version
366
- version: 1.10.0
357
+ version: '1'
358
+ - - ">="
359
+ - !ruby/object:Gem::Version
360
+ version: 1.10.8
367
361
  - !ruby/object:Gem::Dependency
368
362
  name: gli
369
363
  requirement: !ruby/object:Gem::Requirement
@@ -398,14 +392,14 @@ dependencies:
398
392
  requirements:
399
393
  - - "~>"
400
394
  - !ruby/object:Gem::Version
401
- version: '1.8'
395
+ version: '2.6'
402
396
  type: :runtime
403
397
  prerelease: false
404
398
  version_requirements: !ruby/object:Gem::Requirement
405
399
  requirements:
406
400
  - - "~>"
407
401
  - !ruby/object:Gem::Version
408
- version: '1.8'
402
+ version: '2.6'
409
403
  - !ruby/object:Gem::Dependency
410
404
  name: multi_json
411
405
  requirement: !ruby/object:Gem::Requirement
@@ -448,6 +442,20 @@ dependencies:
448
442
  - - "~>"
449
443
  - !ruby/object:Gem::Version
450
444
  version: '1.1'
445
+ - !ruby/object:Gem::Dependency
446
+ name: sequel
447
+ requirement: !ruby/object:Gem::Requirement
448
+ requirements:
449
+ - - "<"
450
+ - !ruby/object:Gem::Version
451
+ version: 5.72.0
452
+ type: :runtime
453
+ prerelease: false
454
+ version_requirements: !ruby/object:Gem::Requirement
455
+ requirements:
456
+ - - "<"
457
+ - !ruby/object:Gem::Version
458
+ version: 5.72.0
451
459
  - !ruby/object:Gem::Dependency
452
460
  name: remote_syslog_logger
453
461
  requirement: !ruby/object:Gem::Requirement
@@ -469,9 +477,6 @@ dependencies:
469
477
  - - ">="
470
478
  - !ruby/object:Gem::Version
471
479
  version: '2.4'
472
- - - "<"
473
- - !ruby/object:Gem::Version
474
- version: '4.0'
475
480
  type: :runtime
476
481
  prerelease: false
477
482
  version_requirements: !ruby/object:Gem::Requirement
@@ -479,9 +484,6 @@ dependencies:
479
484
  - - ">="
480
485
  - !ruby/object:Gem::Version
481
486
  version: '2.4'
482
- - - "<"
483
- - !ruby/object:Gem::Version
484
- version: '4.0'
485
487
  - !ruby/object:Gem::Dependency
486
488
  name: rest-client
487
489
  requirement: !ruby/object:Gem::Requirement
@@ -500,22 +502,16 @@ dependencies:
500
502
  name: rubyzip
501
503
  requirement: !ruby/object:Gem::Requirement
502
504
  requirements:
503
- - - "~>"
504
- - !ruby/object:Gem::Version
505
- version: '1.2'
506
505
  - - ">="
507
506
  - !ruby/object:Gem::Version
508
- version: 1.2.1
507
+ version: '0'
509
508
  type: :runtime
510
509
  prerelease: false
511
510
  version_requirements: !ruby/object:Gem::Requirement
512
511
  requirements:
513
- - - "~>"
514
- - !ruby/object:Gem::Version
515
- version: '1.2'
516
512
  - - ">="
517
513
  - !ruby/object:Gem::Version
518
- version: 1.2.1
514
+ version: '0'
519
515
  - !ruby/object:Gem::Dependency
520
516
  name: terminal-table
521
517
  requirement: !ruby/object:Gem::Requirement
@@ -662,6 +658,7 @@ files:
662
658
  - lib/gooddata.rb
663
659
  - lib/gooddata/app/app.rb
664
660
  - lib/gooddata/bricks/base_downloader.rb
661
+ - lib/gooddata/bricks/base_pipeline.rb
665
662
  - lib/gooddata/bricks/brick.rb
666
663
  - lib/gooddata/bricks/bricks.rb
667
664
  - lib/gooddata/bricks/hello_world_brick.rb
@@ -713,7 +710,7 @@ files:
713
710
  - lib/gooddata/cloud_resources/mysql/mysql_client.rb
714
711
  - lib/gooddata/cloud_resources/postgresql/drivers/.gitkeepme
715
712
  - lib/gooddata/cloud_resources/postgresql/postgresql_client.rb
716
- - lib/gooddata/cloud_resources/redshift/drivers/log4j.properties
713
+ - lib/gooddata/cloud_resources/redshift/drivers/.gitkeepme
717
714
  - lib/gooddata/cloud_resources/redshift/redshift_client.rb
718
715
  - lib/gooddata/cloud_resources/snowflake/drivers/.gitkeepme
719
716
  - lib/gooddata/cloud_resources/snowflake/snowflake_client.rb
@@ -790,6 +787,7 @@ files:
790
787
  - lib/gooddata/lcm/actions/collect_ldm_objects.rb
791
788
  - lib/gooddata/lcm/actions/collect_meta.rb
792
789
  - lib/gooddata/lcm/actions/collect_multiple_projects_column.rb
790
+ - lib/gooddata/lcm/actions/collect_projects_warning_status.rb
793
791
  - lib/gooddata/lcm/actions/collect_segment_clients.rb
794
792
  - lib/gooddata/lcm/actions/collect_segments.rb
795
793
  - lib/gooddata/lcm/actions/collect_tagged_objects.rb
@@ -802,6 +800,7 @@ files:
802
800
  - lib/gooddata/lcm/actions/hello_world.rb
803
801
  - lib/gooddata/lcm/actions/help.rb
804
802
  - lib/gooddata/lcm/actions/import_object_collections.rb
803
+ - lib/gooddata/lcm/actions/initialize_continue_on_error_option.rb
805
804
  - lib/gooddata/lcm/actions/migrate_gdc_date_dimension.rb
806
805
  - lib/gooddata/lcm/actions/provision_clients.rb
807
806
  - lib/gooddata/lcm/actions/purge_clients.rb
@@ -814,10 +813,13 @@ files:
814
813
  - lib/gooddata/lcm/actions/synchronize_color_palette.rb
815
814
  - lib/gooddata/lcm/actions/synchronize_dataset_mappings.rb
816
815
  - lib/gooddata/lcm/actions/synchronize_etls_in_segment.rb
816
+ - lib/gooddata/lcm/actions/synchronize_kd_dashboard_permission.rb
817
817
  - lib/gooddata/lcm/actions/synchronize_label_types.rb
818
818
  - lib/gooddata/lcm/actions/synchronize_ldm.rb
819
+ - lib/gooddata/lcm/actions/synchronize_ldm_layout.rb
819
820
  - lib/gooddata/lcm/actions/synchronize_meta.rb
820
821
  - lib/gooddata/lcm/actions/synchronize_new_segments.rb
822
+ - lib/gooddata/lcm/actions/synchronize_pp_dashboard_permission.rb
821
823
  - lib/gooddata/lcm/actions/synchronize_processes.rb
822
824
  - lib/gooddata/lcm/actions/synchronize_schedules.rb
823
825
  - lib/gooddata/lcm/actions/synchronize_tag_objects.rb
@@ -836,6 +838,7 @@ files:
836
838
  - lib/gooddata/lcm/dsl/params_dsl.rb
837
839
  - lib/gooddata/lcm/dsl/type_dsl.rb
838
840
  - lib/gooddata/lcm/exceptions/lcm_execution_error.rb
841
+ - lib/gooddata/lcm/exceptions/lcm_execution_warning.rb
839
842
  - lib/gooddata/lcm/helpers/check_helper.rb
840
843
  - lib/gooddata/lcm/helpers/helpers.rb
841
844
  - lib/gooddata/lcm/helpers/release_table_helper.rb
@@ -949,6 +952,7 @@ files:
949
952
  - lib/gooddata/models/execution_detail.rb
950
953
  - lib/gooddata/models/from_wire.rb
951
954
  - lib/gooddata/models/invitation.rb
955
+ - lib/gooddata/models/ldm_layout.rb
952
956
  - lib/gooddata/models/links.rb
953
957
  - lib/gooddata/models/membership.rb
954
958
  - lib/gooddata/models/metadata.rb
@@ -1012,6 +1016,7 @@ files:
1012
1016
  - lib/gooddata/rest/rest.rb
1013
1017
  - lib/gooddata/rest/rest_aggregator.rb
1014
1018
  - lib/gooddata/version.rb
1019
+ - lib/gooddata_brick_base.rb
1015
1020
  - lib/templates/bricks/brick.rb.erb
1016
1021
  - lib/templates/bricks/main.rb.erb
1017
1022
  - lib/templates/project/Goodfile.erb
@@ -1021,6 +1026,7 @@ files:
1021
1026
  - lib/templates/project/model/model.rb.erb
1022
1027
  - rubydev_public.gpg.encrypted
1023
1028
  - rubydev_secret_keys.gpg.encrypted
1029
+ - sonar-project.properties
1024
1030
  - tmp/.gitkeepme
1025
1031
  - yard-server.sh
1026
1032
  homepage: http://github.com/gooddata/gooddata-ruby
@@ -1042,8 +1048,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
1042
1048
  - !ruby/object:Gem::Version
1043
1049
  version: '0'
1044
1050
  requirements: []
1045
- rubyforge_project:
1046
- rubygems_version: 2.5.2.3
1051
+ rubygems_version: 3.4.6
1047
1052
  signing_key:
1048
1053
  specification_version: 4
1049
1054
  summary: A convenient Ruby wrapper around the GoodData RESTful API
@@ -1,15 +0,0 @@
1
- #
2
- # Copyright (C) 2007-2019, GoodData(R) Corporation. All rights reserved.
3
- #
4
-
5
- #=======================================================================================================================
6
- # Root Logger
7
- #=======================================================================================================================
8
- #log4j.rootCategory=INFO, Syslog, Console
9
- log4j.rootCategory=INFO
10
-
11
- #=======================================================================================================================
12
- # Logger with Higher Verbosity
13
- #=======================================================================================================================
14
- log4j.logger.com.amazonaws=INFO
15
-