gooddata 2.2.0 → 2.3.1

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 +10 -17
  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 +12 -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 +28 -21
  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 +104 -57
  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.1
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-21 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,58 @@ dependencies:
286
286
  name: activesupport
287
287
  requirement: !ruby/object:Gem::Requirement
288
288
  requirements:
289
- - - ">="
289
+ - - "<"
290
290
  - !ruby/object:Gem::Version
291
- version: 5.2.4.3
291
+ version: 7.0.0
292
+ type: :runtime
293
+ prerelease: false
294
+ version_requirements: !ruby/object:Gem::Requirement
295
+ requirements:
292
296
  - - "<"
293
297
  - !ruby/object:Gem::Version
294
- version: '6.0'
298
+ version: 7.0.0
299
+ - !ruby/object:Gem::Dependency
300
+ name: net-smtp
301
+ requirement: !ruby/object:Gem::Requirement
302
+ requirements:
303
+ - - ">="
304
+ - !ruby/object:Gem::Version
305
+ version: '0'
295
306
  type: :runtime
296
307
  prerelease: false
297
308
  version_requirements: !ruby/object:Gem::Requirement
298
309
  requirements:
299
310
  - - ">="
300
311
  - !ruby/object:Gem::Version
301
- version: 5.2.4.3
302
- - - "<"
312
+ version: '0'
313
+ - !ruby/object:Gem::Dependency
314
+ name: net-imap
315
+ requirement: !ruby/object:Gem::Requirement
316
+ requirements:
317
+ - - ">="
318
+ - !ruby/object:Gem::Version
319
+ version: '0'
320
+ type: :runtime
321
+ prerelease: false
322
+ version_requirements: !ruby/object:Gem::Requirement
323
+ requirements:
324
+ - - ">="
325
+ - !ruby/object:Gem::Version
326
+ version: '0'
327
+ - !ruby/object:Gem::Dependency
328
+ name: net-pop
329
+ requirement: !ruby/object:Gem::Requirement
330
+ requirements:
331
+ - - ">="
303
332
  - !ruby/object:Gem::Version
304
- version: '6.0'
333
+ version: '0'
334
+ type: :runtime
335
+ prerelease: false
336
+ version_requirements: !ruby/object:Gem::Requirement
337
+ requirements:
338
+ - - ">="
339
+ - !ruby/object:Gem::Version
340
+ version: '0'
305
341
  - !ruby/object:Gem::Dependency
306
342
  name: aws-sdk-s3
307
343
  requirement: !ruby/object:Gem::Requirement
@@ -320,50 +356,50 @@ dependencies:
320
356
  name: docile
321
357
  requirement: !ruby/object:Gem::Requirement
322
358
  requirements:
323
- - - ">"
359
+ - - "~>"
324
360
  - !ruby/object:Gem::Version
325
361
  version: '1.1'
326
- - - "<"
327
- - !ruby/object:Gem::Version
328
- version: 1.4.0
329
362
  type: :runtime
330
363
  prerelease: false
331
364
  version_requirements: !ruby/object:Gem::Requirement
332
365
  requirements:
333
- - - ">"
366
+ - - "~>"
334
367
  - !ruby/object:Gem::Version
335
368
  version: '1.1'
336
- - - "<"
337
- - !ruby/object:Gem::Version
338
- version: 1.4.0
339
369
  - !ruby/object:Gem::Dependency
340
370
  name: azure-storage-blob
341
371
  requirement: !ruby/object:Gem::Requirement
342
372
  requirements:
343
373
  - - "~>"
344
374
  - !ruby/object:Gem::Version
345
- version: 1.1.0
375
+ version: '2.0'
346
376
  type: :runtime
347
377
  prerelease: false
348
378
  version_requirements: !ruby/object:Gem::Requirement
349
379
  requirements:
350
380
  - - "~>"
351
381
  - !ruby/object:Gem::Version
352
- version: 1.1.0
382
+ version: '2.0'
353
383
  - !ruby/object:Gem::Dependency
354
384
  name: nokogiri
355
385
  requirement: !ruby/object:Gem::Requirement
356
386
  requirements:
357
387
  - - "~>"
358
388
  - !ruby/object:Gem::Version
359
- version: 1.10.0
389
+ version: '1'
390
+ - - ">="
391
+ - !ruby/object:Gem::Version
392
+ version: 1.10.8
360
393
  type: :runtime
361
394
  prerelease: false
362
395
  version_requirements: !ruby/object:Gem::Requirement
363
396
  requirements:
364
397
  - - "~>"
365
398
  - !ruby/object:Gem::Version
366
- version: 1.10.0
399
+ version: '1'
400
+ - - ">="
401
+ - !ruby/object:Gem::Version
402
+ version: 1.10.8
367
403
  - !ruby/object:Gem::Dependency
368
404
  name: gli
369
405
  requirement: !ruby/object:Gem::Requirement
@@ -398,14 +434,14 @@ dependencies:
398
434
  requirements:
399
435
  - - "~>"
400
436
  - !ruby/object:Gem::Version
401
- version: '1.8'
437
+ version: '2.6'
402
438
  type: :runtime
403
439
  prerelease: false
404
440
  version_requirements: !ruby/object:Gem::Requirement
405
441
  requirements:
406
442
  - - "~>"
407
443
  - !ruby/object:Gem::Version
408
- version: '1.8'
444
+ version: '2.6'
409
445
  - !ruby/object:Gem::Dependency
410
446
  name: multi_json
411
447
  requirement: !ruby/object:Gem::Requirement
@@ -448,6 +484,20 @@ dependencies:
448
484
  - - "~>"
449
485
  - !ruby/object:Gem::Version
450
486
  version: '1.1'
487
+ - !ruby/object:Gem::Dependency
488
+ name: sequel
489
+ requirement: !ruby/object:Gem::Requirement
490
+ requirements:
491
+ - - "<"
492
+ - !ruby/object:Gem::Version
493
+ version: 5.72.0
494
+ type: :runtime
495
+ prerelease: false
496
+ version_requirements: !ruby/object:Gem::Requirement
497
+ requirements:
498
+ - - "<"
499
+ - !ruby/object:Gem::Version
500
+ version: 5.72.0
451
501
  - !ruby/object:Gem::Dependency
452
502
  name: remote_syslog_logger
453
503
  requirement: !ruby/object:Gem::Requirement
@@ -469,9 +519,6 @@ dependencies:
469
519
  - - ">="
470
520
  - !ruby/object:Gem::Version
471
521
  version: '2.4'
472
- - - "<"
473
- - !ruby/object:Gem::Version
474
- version: '4.0'
475
522
  type: :runtime
476
523
  prerelease: false
477
524
  version_requirements: !ruby/object:Gem::Requirement
@@ -479,9 +526,6 @@ dependencies:
479
526
  - - ">="
480
527
  - !ruby/object:Gem::Version
481
528
  version: '2.4'
482
- - - "<"
483
- - !ruby/object:Gem::Version
484
- version: '4.0'
485
529
  - !ruby/object:Gem::Dependency
486
530
  name: rest-client
487
531
  requirement: !ruby/object:Gem::Requirement
@@ -500,22 +544,16 @@ dependencies:
500
544
  name: rubyzip
501
545
  requirement: !ruby/object:Gem::Requirement
502
546
  requirements:
503
- - - "~>"
504
- - !ruby/object:Gem::Version
505
- version: '1.2'
506
547
  - - ">="
507
548
  - !ruby/object:Gem::Version
508
- version: 1.2.1
549
+ version: '0'
509
550
  type: :runtime
510
551
  prerelease: false
511
552
  version_requirements: !ruby/object:Gem::Requirement
512
553
  requirements:
513
- - - "~>"
514
- - !ruby/object:Gem::Version
515
- version: '1.2'
516
554
  - - ">="
517
555
  - !ruby/object:Gem::Version
518
- version: 1.2.1
556
+ version: '0'
519
557
  - !ruby/object:Gem::Dependency
520
558
  name: terminal-table
521
559
  requirement: !ruby/object:Gem::Requirement
@@ -662,6 +700,7 @@ files:
662
700
  - lib/gooddata.rb
663
701
  - lib/gooddata/app/app.rb
664
702
  - lib/gooddata/bricks/base_downloader.rb
703
+ - lib/gooddata/bricks/base_pipeline.rb
665
704
  - lib/gooddata/bricks/brick.rb
666
705
  - lib/gooddata/bricks/bricks.rb
667
706
  - lib/gooddata/bricks/hello_world_brick.rb
@@ -713,7 +752,7 @@ files:
713
752
  - lib/gooddata/cloud_resources/mysql/mysql_client.rb
714
753
  - lib/gooddata/cloud_resources/postgresql/drivers/.gitkeepme
715
754
  - lib/gooddata/cloud_resources/postgresql/postgresql_client.rb
716
- - lib/gooddata/cloud_resources/redshift/drivers/log4j.properties
755
+ - lib/gooddata/cloud_resources/redshift/drivers/.gitkeepme
717
756
  - lib/gooddata/cloud_resources/redshift/redshift_client.rb
718
757
  - lib/gooddata/cloud_resources/snowflake/drivers/.gitkeepme
719
758
  - lib/gooddata/cloud_resources/snowflake/snowflake_client.rb
@@ -790,6 +829,7 @@ files:
790
829
  - lib/gooddata/lcm/actions/collect_ldm_objects.rb
791
830
  - lib/gooddata/lcm/actions/collect_meta.rb
792
831
  - lib/gooddata/lcm/actions/collect_multiple_projects_column.rb
832
+ - lib/gooddata/lcm/actions/collect_projects_warning_status.rb
793
833
  - lib/gooddata/lcm/actions/collect_segment_clients.rb
794
834
  - lib/gooddata/lcm/actions/collect_segments.rb
795
835
  - lib/gooddata/lcm/actions/collect_tagged_objects.rb
@@ -802,6 +842,7 @@ files:
802
842
  - lib/gooddata/lcm/actions/hello_world.rb
803
843
  - lib/gooddata/lcm/actions/help.rb
804
844
  - lib/gooddata/lcm/actions/import_object_collections.rb
845
+ - lib/gooddata/lcm/actions/initialize_continue_on_error_option.rb
805
846
  - lib/gooddata/lcm/actions/migrate_gdc_date_dimension.rb
806
847
  - lib/gooddata/lcm/actions/provision_clients.rb
807
848
  - lib/gooddata/lcm/actions/purge_clients.rb
@@ -814,10 +855,13 @@ files:
814
855
  - lib/gooddata/lcm/actions/synchronize_color_palette.rb
815
856
  - lib/gooddata/lcm/actions/synchronize_dataset_mappings.rb
816
857
  - lib/gooddata/lcm/actions/synchronize_etls_in_segment.rb
858
+ - lib/gooddata/lcm/actions/synchronize_kd_dashboard_permission.rb
817
859
  - lib/gooddata/lcm/actions/synchronize_label_types.rb
818
860
  - lib/gooddata/lcm/actions/synchronize_ldm.rb
861
+ - lib/gooddata/lcm/actions/synchronize_ldm_layout.rb
819
862
  - lib/gooddata/lcm/actions/synchronize_meta.rb
820
863
  - lib/gooddata/lcm/actions/synchronize_new_segments.rb
864
+ - lib/gooddata/lcm/actions/synchronize_pp_dashboard_permission.rb
821
865
  - lib/gooddata/lcm/actions/synchronize_processes.rb
822
866
  - lib/gooddata/lcm/actions/synchronize_schedules.rb
823
867
  - lib/gooddata/lcm/actions/synchronize_tag_objects.rb
@@ -836,6 +880,7 @@ files:
836
880
  - lib/gooddata/lcm/dsl/params_dsl.rb
837
881
  - lib/gooddata/lcm/dsl/type_dsl.rb
838
882
  - lib/gooddata/lcm/exceptions/lcm_execution_error.rb
883
+ - lib/gooddata/lcm/exceptions/lcm_execution_warning.rb
839
884
  - lib/gooddata/lcm/helpers/check_helper.rb
840
885
  - lib/gooddata/lcm/helpers/helpers.rb
841
886
  - lib/gooddata/lcm/helpers/release_table_helper.rb
@@ -949,6 +994,7 @@ files:
949
994
  - lib/gooddata/models/execution_detail.rb
950
995
  - lib/gooddata/models/from_wire.rb
951
996
  - lib/gooddata/models/invitation.rb
997
+ - lib/gooddata/models/ldm_layout.rb
952
998
  - lib/gooddata/models/links.rb
953
999
  - lib/gooddata/models/membership.rb
954
1000
  - lib/gooddata/models/metadata.rb
@@ -1012,6 +1058,7 @@ files:
1012
1058
  - lib/gooddata/rest/rest.rb
1013
1059
  - lib/gooddata/rest/rest_aggregator.rb
1014
1060
  - lib/gooddata/version.rb
1061
+ - lib/gooddata_brick_base.rb
1015
1062
  - lib/templates/bricks/brick.rb.erb
1016
1063
  - lib/templates/bricks/main.rb.erb
1017
1064
  - lib/templates/project/Goodfile.erb
@@ -1021,6 +1068,7 @@ files:
1021
1068
  - lib/templates/project/model/model.rb.erb
1022
1069
  - rubydev_public.gpg.encrypted
1023
1070
  - rubydev_secret_keys.gpg.encrypted
1071
+ - sonar-project.properties
1024
1072
  - tmp/.gitkeepme
1025
1073
  - yard-server.sh
1026
1074
  homepage: http://github.com/gooddata/gooddata-ruby
@@ -1042,8 +1090,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
1042
1090
  - !ruby/object:Gem::Version
1043
1091
  version: '0'
1044
1092
  requirements: []
1045
- rubyforge_project:
1046
- rubygems_version: 2.5.2.3
1093
+ rubygems_version: 3.4.6
1047
1094
  signing_key:
1048
1095
  specification_version: 4
1049
1096
  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
-