gooddata 2.2.0 → 2.3.0

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.
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
-