gooddata 0.6.54 → 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/.document +0 -0
- data/.editorconfig +0 -0
- data/.travis.yml +9 -0
- data/.yardopts +0 -0
- data/CHANGELOG.md +7 -0
- data/CLI.md +0 -0
- data/Gemfile +0 -0
- data/Guardfile +0 -0
- data/LICENSE +0 -0
- data/LICENSE.rb +0 -0
- data/TODO.md +0 -0
- data/dependency_decisions.yml +0 -0
- data/gooddata.gemspec +1 -1
- data/lib/gooddata/app/app.rb +0 -0
- data/lib/gooddata/bricks/brick.rb +0 -0
- data/lib/gooddata/bricks/bricks.rb +0 -0
- data/lib/gooddata/bricks/middleware/base_middleware.rb +0 -0
- data/lib/gooddata/bricks/middleware/bench_middleware.rb +0 -0
- data/lib/gooddata/bricks/middleware/bulk_salesforce_middleware.rb +0 -0
- data/lib/gooddata/bricks/middleware/decode_params_middleware.rb +0 -0
- data/lib/gooddata/bricks/middleware/fs_download_middleware.rb +0 -0
- data/lib/gooddata/bricks/middleware/fs_upload_middleware.rb +0 -0
- data/lib/gooddata/bricks/middleware/middleware.rb +0 -0
- data/lib/gooddata/bricks/middleware/stdout_middleware.rb +0 -0
- data/lib/gooddata/bricks/middleware/twitter_middleware.rb +0 -0
- data/lib/gooddata/bricks/middleware/undot_params_middleware.rb +0 -0
- data/lib/gooddata/bricks/pipeline.rb +0 -0
- data/lib/gooddata/bricks/utils.rb +0 -0
- data/lib/gooddata/cli/cli.rb +0 -0
- data/lib/gooddata/cli/commands/auth_cmd.rb +0 -0
- data/lib/gooddata/cli/commands/domain_cmd.rb +0 -0
- data/lib/gooddata/cli/commands/project_cmd.rb +0 -0
- data/lib/gooddata/cli/hooks.rb +0 -0
- data/lib/gooddata/cli/shared.rb +0 -0
- data/lib/gooddata/cli/terminal.rb +0 -0
- data/lib/gooddata/commands/api.rb +0 -0
- data/lib/gooddata/commands/auth.rb +0 -0
- data/lib/gooddata/commands/base.rb +0 -0
- data/lib/gooddata/commands/commands.rb +0 -0
- data/lib/gooddata/commands/datasets.rb +0 -0
- data/lib/gooddata/commands/datawarehouse.rb +0 -0
- data/lib/gooddata/commands/domain.rb +0 -0
- data/lib/gooddata/commands/process.rb +0 -0
- data/lib/gooddata/commands/project.rb +0 -0
- data/lib/gooddata/commands/projects.rb +0 -0
- data/lib/gooddata/commands/role.rb +0 -0
- data/lib/gooddata/commands/runners.rb +0 -0
- data/lib/gooddata/commands/scaffold.rb +0 -0
- data/lib/gooddata/commands/user.rb +0 -0
- data/lib/gooddata/connection.rb +0 -0
- data/lib/gooddata/core/core.rb +0 -0
- data/lib/gooddata/core/logging.rb +0 -0
- data/lib/gooddata/core/nil_logger.rb +0 -0
- data/lib/gooddata/core/project.rb +0 -0
- data/lib/gooddata/core/rest.rb +0 -0
- data/lib/gooddata/core/user.rb +0 -0
- data/lib/gooddata/data/data.rb +0 -0
- data/lib/gooddata/data/guesser.rb +0 -0
- data/lib/gooddata/exceptions/attr_element_not_found.rb +0 -0
- data/lib/gooddata/exceptions/command_failed.rb +0 -0
- data/lib/gooddata/exceptions/exceptions.rb +0 -0
- data/lib/gooddata/exceptions/execution_limit_exceeded.rb +0 -0
- data/lib/gooddata/exceptions/export_clone.rb +0 -0
- data/lib/gooddata/exceptions/filter_maqlization.rb +0 -0
- data/lib/gooddata/exceptions/import_clone.rb +0 -0
- data/lib/gooddata/exceptions/malformed_user.rb +0 -0
- data/lib/gooddata/exceptions/maql_execution.rb +0 -0
- data/lib/gooddata/exceptions/object_migration.rb +0 -0
- data/lib/gooddata/exceptions/project_not_found.rb +0 -0
- data/lib/gooddata/exceptions/segment_not_empty.rb +0 -0
- data/lib/gooddata/exceptions/uncomputable_report.rb +0 -0
- data/lib/gooddata/exceptions/user_in_different_domain.rb +0 -0
- data/lib/gooddata/exceptions/validation_error.rb +0 -0
- data/lib/gooddata/extensions/big_decimal.rb +0 -0
- data/lib/gooddata/extensions/class.rb +0 -0
- data/lib/gooddata/extensions/extensions.rb +0 -0
- data/lib/gooddata/extensions/false.rb +0 -0
- data/lib/gooddata/extensions/hash.rb +0 -0
- data/lib/gooddata/extensions/integer.rb +0 -0
- data/lib/gooddata/extensions/nil.rb +0 -0
- data/lib/gooddata/extensions/numeric.rb +0 -0
- data/lib/gooddata/extensions/object.rb +0 -0
- data/lib/gooddata/extensions/string.rb +0 -0
- data/lib/gooddata/extensions/symbol.rb +0 -0
- data/lib/gooddata/extensions/true.rb +0 -0
- data/lib/gooddata/extract.rb +0 -0
- data/lib/gooddata/goodzilla/goodzilla.rb +0 -0
- data/lib/gooddata/helpers/auth_helpers.rb +0 -0
- data/lib/gooddata/helpers/csv_helper.rb +0 -0
- data/lib/gooddata/helpers/erb_helper.rb +0 -0
- data/lib/gooddata/helpers/global_helpers.rb +0 -0
- data/lib/gooddata/helpers/helpers.rb +0 -0
- data/lib/gooddata/lcm/actions/actions.rb +0 -0
- data/lib/gooddata/lcm/actions/base_action.rb +0 -0
- data/lib/gooddata/lcm/actions/collect_data_product.rb +4 -9
- data/lib/gooddata/lcm/actions/collect_segments.rb +2 -1
- data/lib/gooddata/lcm/actions/collect_users_brick_users.rb +46 -0
- data/lib/gooddata/lcm/actions/synchronize_user_filters.rb +8 -22
- data/lib/gooddata/lcm/actions/synchronize_users.rb +17 -5
- data/lib/gooddata/lcm/data/create_lcm_release.sql.erb +0 -0
- data/lib/gooddata/lcm/data/insert_into_lcm_release.sql.erb +0 -0
- data/lib/gooddata/lcm/data/select_from_lcm_release.sql.erb +0 -0
- data/lib/gooddata/lcm/data/update_lcm_release.sql.erb +0 -0
- data/lib/gooddata/lcm/dsl/dsl.rb +0 -0
- data/lib/gooddata/lcm/dsl/params_dsl.rb +0 -0
- data/lib/gooddata/lcm/helpers/helpers.rb +0 -0
- data/lib/gooddata/lcm/lcm2.rb +2 -0
- data/lib/gooddata/lcm/types/base_type.rb +0 -0
- data/lib/gooddata/lcm/types/class/ads_client.rb +0 -0
- data/lib/gooddata/lcm/types/class/class.rb +0 -0
- data/lib/gooddata/lcm/types/class/gd_client.rb +0 -0
- data/lib/gooddata/lcm/types/class/types.rb +0 -0
- data/lib/gooddata/lcm/types/complex/complex.rb +0 -0
- data/lib/gooddata/lcm/types/complex/release_query.rb +0 -0
- data/lib/gooddata/lcm/types/complex/tokens.rb +0 -0
- data/lib/gooddata/lcm/types/complex/types.rb +0 -0
- data/lib/gooddata/lcm/types/complex/users_brick_config.rb +32 -0
- data/lib/gooddata/lcm/types/param.rb +0 -0
- data/lib/gooddata/lcm/types/scalar/bool.rb +0 -0
- data/lib/gooddata/lcm/types/scalar/hash.rb +0 -0
- data/lib/gooddata/lcm/types/scalar/integer.rb +0 -0
- data/lib/gooddata/lcm/types/scalar/object.rb +0 -0
- data/lib/gooddata/lcm/types/scalar/string.rb +0 -0
- data/lib/gooddata/lcm/types/scalar/types.rb +0 -0
- data/lib/gooddata/lcm/types/special/types.rb +0 -0
- data/lib/gooddata/lcm/types/types.rb +0 -0
- data/lib/gooddata/lcm/user_bricks_helper.rb +32 -0
- data/lib/gooddata/mixins/author.rb +0 -0
- data/lib/gooddata/mixins/content_getter.rb +0 -0
- data/lib/gooddata/mixins/content_property_reader.rb +0 -0
- data/lib/gooddata/mixins/content_property_writer.rb +0 -0
- data/lib/gooddata/mixins/contributor.rb +0 -0
- data/lib/gooddata/mixins/data_getter.rb +0 -0
- data/lib/gooddata/mixins/data_property_reader.rb +0 -0
- data/lib/gooddata/mixins/data_property_writer.rb +0 -0
- data/lib/gooddata/mixins/inspector.rb +0 -0
- data/lib/gooddata/mixins/is_attribute.rb +0 -0
- data/lib/gooddata/mixins/is_dimension.rb +0 -0
- data/lib/gooddata/mixins/is_fact.rb +0 -0
- data/lib/gooddata/mixins/is_folder.rb +0 -0
- data/lib/gooddata/mixins/is_label.rb +0 -0
- data/lib/gooddata/mixins/links.rb +0 -0
- data/lib/gooddata/mixins/md_grantees.rb +0 -0
- data/lib/gooddata/mixins/md_lock.rb +0 -0
- data/lib/gooddata/mixins/md_object_id.rb +0 -0
- data/lib/gooddata/mixins/md_relations.rb +0 -0
- data/lib/gooddata/mixins/meta_getter.rb +0 -0
- data/lib/gooddata/mixins/meta_property_reader.rb +0 -0
- data/lib/gooddata/mixins/meta_property_writer.rb +0 -0
- data/lib/gooddata/mixins/mixins.rb +0 -0
- data/lib/gooddata/mixins/not_attribute.rb +0 -0
- data/lib/gooddata/mixins/not_exportable.rb +0 -0
- data/lib/gooddata/mixins/not_fact.rb +0 -0
- data/lib/gooddata/mixins/not_group.rb +0 -0
- data/lib/gooddata/mixins/not_label.rb +0 -0
- data/lib/gooddata/mixins/not_metric.rb +0 -0
- data/lib/gooddata/mixins/obj_id.rb +0 -0
- data/lib/gooddata/mixins/rest_getters.rb +0 -0
- data/lib/gooddata/mixins/rest_resource.rb +0 -0
- data/lib/gooddata/mixins/root_key_getter.rb +0 -0
- data/lib/gooddata/mixins/root_key_setter.rb +0 -0
- data/lib/gooddata/mixins/timestamps.rb +0 -0
- data/lib/gooddata/mixins/to_json.rb +0 -0
- data/lib/gooddata/mixins/uri_getter.rb +0 -0
- data/lib/gooddata/models/ads_output_stage.rb +0 -0
- data/lib/gooddata/models/automated_data_distribution.rb +0 -0
- data/lib/gooddata/models/blueprint/anchor_field.rb +0 -0
- data/lib/gooddata/models/blueprint/attribute_field.rb +0 -0
- data/lib/gooddata/models/blueprint/blueprint.rb +0 -0
- data/lib/gooddata/models/blueprint/blueprint_field.rb +0 -0
- data/lib/gooddata/models/blueprint/dashboard_builder.rb +0 -0
- data/lib/gooddata/models/blueprint/dataset_blueprint.rb +0 -0
- data/lib/gooddata/models/blueprint/fact_field.rb +0 -0
- data/lib/gooddata/models/blueprint/label_field.rb +0 -0
- data/lib/gooddata/models/blueprint/reference_field.rb +0 -0
- data/lib/gooddata/models/blueprint/schema_blueprint.rb +0 -0
- data/lib/gooddata/models/blueprint/schema_builder.rb +0 -0
- data/lib/gooddata/models/blueprint/to_manifest.rb +0 -0
- data/lib/gooddata/models/channel_configuration.rb +0 -0
- data/lib/gooddata/models/client_synchronization_result.rb +0 -0
- data/lib/gooddata/models/client_synchronization_result_details.rb +0 -0
- data/lib/gooddata/models/datawarehouse.rb +0 -0
- data/lib/gooddata/models/execution.rb +0 -0
- data/lib/gooddata/models/execution_detail.rb +0 -0
- data/lib/gooddata/models/invitation.rb +0 -0
- data/lib/gooddata/models/links.rb +0 -0
- data/lib/gooddata/models/metadata/dashboard/dashboard_item.rb +0 -0
- data/lib/gooddata/models/metadata/dashboard/filter_apply_item.rb +0 -0
- data/lib/gooddata/models/metadata/dashboard/filter_item.rb +0 -0
- data/lib/gooddata/models/metadata/dashboard/geo_chart_item.rb +0 -0
- data/lib/gooddata/models/metadata/dashboard/headline_item.rb +0 -0
- data/lib/gooddata/models/metadata/dashboard/iframe_item.rb +0 -0
- data/lib/gooddata/models/metadata/dashboard/report_item.rb +0 -0
- data/lib/gooddata/models/metadata/dashboard/text_item.rb +0 -0
- data/lib/gooddata/models/metadata/dashboard_tab.rb +0 -0
- data/lib/gooddata/models/metadata/label.rb +0 -0
- data/lib/gooddata/models/metadata/metadata.rb +0 -0
- data/lib/gooddata/models/metadata/report.rb +10 -0
- data/lib/gooddata/models/metadata/scheduled_mail/dashboard_attachment.rb +0 -0
- data/lib/gooddata/models/metadata/scheduled_mail/report_attachment.rb +0 -0
- data/lib/gooddata/models/models.rb +0 -0
- data/lib/gooddata/models/module_constants.rb +0 -0
- data/lib/gooddata/models/notification_rule.rb +0 -0
- data/lib/gooddata/models/project_log_formatter.rb +0 -0
- data/lib/gooddata/models/project_metadata.rb +0 -0
- data/lib/gooddata/models/tab_builder.rb +0 -0
- data/lib/gooddata/models/user_filters/mandatory_user_filter.rb +0 -0
- data/lib/gooddata/models/user_filters/user_filter_builder.rb +24 -12
- data/lib/gooddata/models/user_filters/user_filters.rb +0 -0
- data/lib/gooddata/rest/README.md +0 -0
- data/lib/gooddata/rest/connection.rb +15 -3
- data/lib/gooddata/rest/object.rb +0 -0
- data/lib/gooddata/rest/resource.rb +0 -0
- data/lib/gooddata/rest/rest.rb +0 -0
- data/lib/gooddata/version.rb +1 -1
- data/lib/templates/bricks/brick.rb.erb +0 -0
- data/lib/templates/bricks/main.rb.erb +0 -0
- data/lib/templates/project/Goodfile.erb +0 -0
- data/lib/templates/project/data/commits.csv +0 -0
- data/lib/templates/project/data/devs.csv +0 -0
- data/lib/templates/project/data/repos.csv +0 -0
- data/lib/templates/project/model/model.rb.erb +0 -0
- data/spec/.rubocop.yml +0 -0
- data/spec/bricks/bricks_spec.rb +0 -0
- data/spec/bricks/default-config.json +0 -0
- data/spec/data/.gooddata +0 -0
- data/spec/data/blueprints/additional_dataset_module.json +0 -0
- data/spec/data/blueprints/attribute_sort_order_blueprint.json +0 -0
- data/spec/data/blueprints/big_blueprint_not_pruned.json +0 -0
- data/spec/data/blueprints/m_n_model.json +0 -0
- data/spec/data/blueprints/model_module.json +0 -0
- data/spec/data/cc/data/source/commits.csv +0 -0
- data/spec/data/cc/data/source/devs.csv +0 -0
- data/spec/data/cc/data/source/repos.csv +0 -0
- data/spec/data/cc/devel.prm +0 -0
- data/spec/data/cc/graph/graph.grf +0 -0
- data/spec/data/cc/workspace.prm +0 -0
- data/spec/data/column_based_permissions.csv +0 -0
- data/spec/data/column_based_permissions2.csv +0 -0
- data/spec/data/gd_gse_data_blueprint.json +0 -0
- data/spec/data/gd_gse_data_manifest.json +0 -0
- data/spec/data/gd_gse_data_model.json +0 -0
- data/spec/data/gooddata_version_process/gooddata_version.rb +0 -0
- data/spec/data/gooddata_version_process/gooddata_version.zip +0 -0
- data/spec/data/hello_world_process/hello_world.rb +0 -0
- data/spec/data/hello_world_process/hello_world.zip +0 -0
- data/spec/data/line_based_permissions.csv +0 -0
- data/spec/data/manifests/test_blueprint.json +0 -0
- data/spec/data/manifests/test_project.json +0 -0
- data/spec/data/reports/left_attr_report.json +0 -0
- data/spec/data/reports/metric_only_one_line.json +0 -0
- data/spec/data/reports/report_1.json +0 -0
- data/spec/data/reports/top_attr_report.json +0 -0
- data/spec/data/ruby_params_process/ruby_params.rb +0 -0
- data/spec/data/ruby_process/deep_files/deep_stuff.txt +0 -0
- data/spec/data/ruby_process/process.rb +0 -0
- data/spec/data/ruby_process/stuff.txt +0 -0
- data/spec/data/superfluous_titles_view.json +0 -0
- data/spec/data/test-ci-data.csv +0 -0
- data/spec/data/users.csv +0 -0
- data/spec/data/wire_models/attribute_sort_by_model.json +0 -0
- data/spec/data/wire_models/model_view.json +0 -0
- data/spec/data/wire_models/nu_model.json +0 -0
- data/spec/data/wire_test_project.json +0 -0
- data/spec/environment/default.rb +0 -0
- data/spec/environment/environment.rb +0 -0
- data/spec/environment/production.rb +0 -0
- data/spec/helpers/blueprint_helper.rb +0 -0
- data/spec/helpers/cli_helper.rb +0 -0
- data/spec/helpers/connection_helper.rb +0 -0
- data/spec/helpers/crypto_helper.rb +0 -0
- data/spec/helpers/csv_helper.rb +0 -0
- data/spec/helpers/project_helper.rb +13 -0
- data/spec/helpers/spec_helper.rb +0 -0
- data/spec/integration/blueprint_updates_spec.rb +0 -0
- data/spec/integration/blueprint_with_grain_spec.rb +0 -0
- data/spec/integration/channel_configuration_spec.rb +0 -0
- data/spec/integration/command_projects_spec.rb +0 -0
- data/spec/integration/create_project_spec.rb +0 -0
- data/spec/integration/deprecated_load_spec.rb +0 -0
- data/spec/integration/full_project_spec.rb +3 -5
- data/spec/integration/models/metadata/report_spec.rb +54 -0
- data/spec/integration/over_to_user_filters_spec.rb +0 -0
- data/spec/integration/partial_md_export_import_spec.rb +0 -0
- data/spec/integration/rest_spec.rb +0 -0
- data/spec/integration/schedule_spec.rb +0 -0
- data/spec/integration/user_group_spec.rb +0 -0
- data/spec/logging_in_logging_out_spec.rb +0 -0
- data/spec/unit/actions/collect_data_product_spec.rb +9 -17
- data/spec/unit/actions/collect_users_brick_users_spec.rb +36 -0
- data/spec/unit/actions/shared_examples_for_user_actions.rb +17 -1
- data/spec/unit/actions/synchronize_user_filters_spec.rb +5 -1
- data/spec/unit/actions/synchronize_users_spec.rb +64 -6
- data/spec/unit/bricks/bricks_spec.rb +0 -0
- data/spec/unit/bricks/middleware/bench_middleware_spec.rb +0 -0
- data/spec/unit/bricks/middleware/bulk_salesforce_middleware_spec.rb +0 -0
- data/spec/unit/bricks/middleware/gooddata_middleware_spec.rb +0 -0
- data/spec/unit/bricks/middleware/restforce_middleware_spec.rb +0 -0
- data/spec/unit/bricks/middleware/stdout_middleware_spec.rb +0 -0
- data/spec/unit/bricks/middleware/twitter_middleware_spec.rb +0 -0
- data/spec/unit/cli/cli_spec.rb +0 -0
- data/spec/unit/cli/commands/cmd_auth_spec.rb +0 -0
- data/spec/unit/core/nil_logger_spec.rb +0 -0
- data/spec/unit/extensions/hash_spec.rb +0 -0
- data/spec/unit/godzilla/goodzilla_spec.rb +0 -0
- data/spec/unit/helpers/csv_helper_spec.rb +0 -0
- data/spec/unit/lcm/user_bricks_helper_spec.rb +58 -0
- data/spec/unit/models/blueprint/attribute_sort_by_spec.rb +0 -0
- data/spec/unit/models/blueprint/attributes_spec.rb +0 -0
- data/spec/unit/models/blueprint/dataset_spec.rb +0 -0
- data/spec/unit/models/blueprint/labels_spec.rb +0 -0
- data/spec/unit/models/blueprint/reference_spec.rb +0 -0
- data/spec/unit/models/blueprint/schema_builder_spec.rb +0 -0
- data/spec/unit/models/blueprint/to_wire_spec.rb +0 -0
- data/spec/unit/models/execution_spec.rb +0 -0
- data/spec/unit/models/from_wire_spec.rb +0 -0
- data/spec/unit/models/metric_spec.rb +0 -0
- data/spec/unit/models/model_spec.rb +0 -0
- data/spec/unit/models/report_result_data_spec.rb +0 -0
- data/spec/unit/models/user_filters/user_filter_builder_spec.rb +110 -0
- data/spec/unit/models/user_filters_spec.rb +0 -0
- data/spec/unit/models/variable_spec.rb +0 -0
- data/spec/unit/rest/resource_spec.rb +0 -0
- metadata +148 -94
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 9408b0739864f2bccdff5fadf792f65cd1e9e1cb
|
4
|
+
data.tar.gz: 51ec5d63f27c2f6b4e09456a406ef07a1d0297f6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 8c6aaaa625353dafd2c2cb4d5b97af9c46bb38628583af3e23b39b46e2a37e6070f043406d337543eb1b866cdc568247da5b5c27ac0144f3dcf89e25fbc952f4
|
7
|
+
data.tar.gz: 68d49617d6e403a1e0f3b6023b61ae6e17f97974347af684010ae412ed56b2c09e15ab86ff889941314eec740a6d5a567da0a3f70adadd972b55bcb7f90a818d
|
data/.document
CHANGED
File without changes
|
data/.editorconfig
CHANGED
File without changes
|
data/.travis.yml
ADDED
data/.yardopts
CHANGED
File without changes
|
data/CHANGELOG.md
CHANGED
@@ -1,4 +1,11 @@
|
|
1
1
|
# GoodData Ruby SDK Changelog
|
2
|
+
## 1.0.0
|
3
|
+
- TMA-575: Add support for raw export-report API
|
4
|
+
- TMA-738: Update highline to v2
|
5
|
+
- TMA-711: segments filter works correctly in users brick
|
6
|
+
- TMA-662: Users Brick passes with empty input source
|
7
|
+
- Rename travis.yml to .travis.yml
|
8
|
+
|
2
9
|
## 0.6.54
|
3
10
|
- Generating changelog automatically from git
|
4
11
|
- Fix resolving dataproduct
|
data/CLI.md
CHANGED
File without changes
|
data/Gemfile
CHANGED
File without changes
|
data/Guardfile
CHANGED
File without changes
|
data/LICENSE
CHANGED
File without changes
|
data/LICENSE.rb
CHANGED
File without changes
|
data/TODO.md
CHANGED
File without changes
|
data/dependency_decisions.yml
CHANGED
File without changes
|
data/gooddata.gemspec
CHANGED
@@ -54,7 +54,7 @@ Gem::Specification.new do |s|
|
|
54
54
|
s.add_dependency 'gli', '~> 2.15'
|
55
55
|
s.add_dependency 'gooddata_datawarehouse' if RUBY_PLATFORM == 'java'
|
56
56
|
s.add_dependency 'gooddata-dss-jdbc', '0.1.12' if RUBY_PLATFORM == 'java'
|
57
|
-
s.add_dependency 'highline', '
|
57
|
+
s.add_dependency 'highline', '= 2.0.0.pre.develop.14'
|
58
58
|
s.add_dependency 'json_pure', '~> 1.8'
|
59
59
|
s.add_dependency 'multi_json', '~> 1.12'
|
60
60
|
s.add_dependency 'parseconfig', '~> 1.0'
|
data/lib/gooddata/app/app.rb
CHANGED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
data/lib/gooddata/cli/cli.rb
CHANGED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
data/lib/gooddata/cli/hooks.rb
CHANGED
File without changes
|
data/lib/gooddata/cli/shared.rb
CHANGED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
data/lib/gooddata/connection.rb
CHANGED
File without changes
|
data/lib/gooddata/core/core.rb
CHANGED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
data/lib/gooddata/core/rest.rb
CHANGED
File without changes
|
data/lib/gooddata/core/user.rb
CHANGED
File without changes
|
data/lib/gooddata/data/data.rb
CHANGED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
data/lib/gooddata/extract.rb
CHANGED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
@@ -31,18 +31,13 @@ module GoodData
|
|
31
31
|
domain = client.domain(domain_name) || fail("Invalid domain name specified - #{domain_name}")
|
32
32
|
|
33
33
|
if params.key?(:data_product)
|
34
|
-
|
35
|
-
data_product = domain.data_products(params.data_product)
|
36
|
-
rescue RestClient::BadRequest
|
37
|
-
fail 'the specified DataProduct does not exist'
|
38
|
-
end
|
34
|
+
data_product_id = params.data_product
|
39
35
|
else
|
40
|
-
params.gdc_logger.info
|
41
|
-
|
42
|
-
fail 'No data_product parameter specified - unable to fallback to a default' if data_products.length > 1 || data_products.empty?
|
43
|
-
data_product = data_products.first
|
36
|
+
params.gdc_logger.info "Using data product 'default' since none was specified in brick parameters"
|
37
|
+
data_product_id = 'default'
|
44
38
|
end
|
45
39
|
|
40
|
+
data_product = domain.data_products(data_product_id)
|
46
41
|
results = [
|
47
42
|
{
|
48
43
|
data_product: data_product
|
@@ -0,0 +1,46 @@
|
|
1
|
+
# encoding: UTF-8
|
2
|
+
#
|
3
|
+
# Copyright (c) 2010-2017 GoodData Corporation. All rights reserved.
|
4
|
+
# This source code is licensed under the BSD-style license found in the
|
5
|
+
# LICENSE file in the root directory of this source tree.
|
6
|
+
|
7
|
+
require_relative 'base_action'
|
8
|
+
|
9
|
+
module GoodData
|
10
|
+
module LCM2
|
11
|
+
class CollectUsersBrickUsers < BaseAction
|
12
|
+
DESCRIPTION = 'Enriches parameters with users from the Users Brick input.'
|
13
|
+
|
14
|
+
PARAMS = define_params(self) do
|
15
|
+
description 'Input source of the Users Brick. Needed to prevent ' \
|
16
|
+
'deletion of filters for a user that is to be removed.'
|
17
|
+
param :users_brick_config, instance_of(Type::UsersBrickConfig), required: true
|
18
|
+
end
|
19
|
+
|
20
|
+
class << self
|
21
|
+
def call(params)
|
22
|
+
users_brick_users = []
|
23
|
+
login_column = params.users_brick_config.login_column || 'login'
|
24
|
+
users_brick_data_source = GoodData::Helpers::DataSource.new(params.users_brick_config.input_source)
|
25
|
+
users_brick_data_source_file = File.open(
|
26
|
+
users_brick_data_source.realize(params),
|
27
|
+
'r:UTF-8'
|
28
|
+
)
|
29
|
+
CSV.foreach(users_brick_data_source_file,
|
30
|
+
headers: true,
|
31
|
+
return_headers: false,
|
32
|
+
encoding: 'utf-8') do |row|
|
33
|
+
users_brick_users << { login: row[login_column] }
|
34
|
+
end
|
35
|
+
|
36
|
+
{
|
37
|
+
results: users_brick_users,
|
38
|
+
params: {
|
39
|
+
users_brick_users: users_brick_users
|
40
|
+
}
|
41
|
+
}
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
@@ -87,7 +87,8 @@ module GoodData
|
|
87
87
|
ignore_missing_values: params.ignore_missing_values == 'true',
|
88
88
|
do_not_touch_filters_that_are_not_mentioned: params.do_not_touch_filters_that_are_not_mentioned == 'true',
|
89
89
|
domain: domain,
|
90
|
-
dry_run: false
|
90
|
+
dry_run: false,
|
91
|
+
users_brick_input: params.users_brick_users
|
91
92
|
}
|
92
93
|
|
93
94
|
puts "Synchronizing in mode \"#{mode}\""
|
@@ -118,21 +119,7 @@ module GoodData
|
|
118
119
|
project.add_data_permissions(filters_to_load, run_params)
|
119
120
|
end
|
120
121
|
when 'sync_one_project_based_on_custom_id'
|
121
|
-
|
122
|
-
goodot_id = md['GOODOT_CUSTOM_PROJECT_ID'].to_s
|
123
|
-
|
124
|
-
client = domain.clients(:all, data_product).find { |c| c.project_uri == project.uri }
|
125
|
-
if goodot_id.empty? && client.nil?
|
126
|
-
fail "Project \"#{project.pid}\" metadata does not contain key GOODOT_CUSTOM_PROJECT_ID neither is it mapped \
|
127
|
-
to a client_id in LCM metadata. We are unable to get the values for user filters."
|
128
|
-
end
|
129
|
-
|
130
|
-
unless goodot_id.empty? || client.nil? || (goodot_id == client.id)
|
131
|
-
fail "GOODOT_CUSTOM_PROJECT_ID metadata key is provided for project \"#{project.pid}\" but doesn't match \
|
132
|
-
client id assigned to the project in LCM metadata. Please resolve the conflict."
|
133
|
-
end
|
134
|
-
|
135
|
-
filter_value = goodot_id.empty? ? client.id : goodot_id
|
122
|
+
filter_value = UserBricksHelper.resolve_client_id(domain, project, data_product)
|
136
123
|
|
137
124
|
filepath = File.open(data_source.realize(params), 'r:UTF-8')
|
138
125
|
CSV.foreach(filepath, headers: csv_with_headers, return_headers: false, encoding: 'utf-8') do |row|
|
@@ -166,10 +153,9 @@ module GoodData
|
|
166
153
|
end
|
167
154
|
|
168
155
|
domain_clients = domain.clients(:all, data_product)
|
169
|
-
|
170
|
-
|
171
|
-
|
172
|
-
domain_clients.select! { |c| segments_filter.include?(c.segment_uri) }
|
156
|
+
if params.segments
|
157
|
+
segment_uris = params.segments.map(&:uri)
|
158
|
+
domain_clients = domain_clients.select { |c| segment_uris.include?(c.segment_uri) }
|
173
159
|
end
|
174
160
|
|
175
161
|
working_client_ids = []
|
@@ -177,8 +163,8 @@ module GoodData
|
|
177
163
|
filters.group_by { |u| u[multiple_projects_column] }.flat_map do |client_id, new_filters|
|
178
164
|
fail "Client id cannot be empty" if client_id.blank?
|
179
165
|
c = domain.clients(client_id, data_product)
|
180
|
-
if params.
|
181
|
-
puts "Client #{client_id} is outside segments_filter #{params.
|
166
|
+
if params.segments && !segment_uris.include?(c.segment_uri)
|
167
|
+
puts "Client #{client_id} is outside segments_filter #{params.segments}"
|
182
168
|
next
|
183
169
|
end
|
184
170
|
project = c.project
|
@@ -5,6 +5,7 @@
|
|
5
5
|
# LICENSE file in the root directory of this source tree.
|
6
6
|
|
7
7
|
require_relative 'base_action'
|
8
|
+
require_relative '../user_bricks_helper'
|
8
9
|
|
9
10
|
module GoodData
|
10
11
|
module LCM2
|
@@ -125,18 +126,21 @@ module GoodData
|
|
125
126
|
do_not_touch_users_that_are_not_mentioned: do_not_touch_users_that_are_not_mentioned,
|
126
127
|
create_non_existing_user_groups: create_non_existing_user_groups)
|
127
128
|
when 'sync_one_project_based_on_custom_id'
|
128
|
-
|
129
|
-
goodot_id = md['GOODOT_CUSTOM_PROJECT_ID'].to_s
|
129
|
+
filter_value = UserBricksHelper.resolve_client_id(domain, project, data_product)
|
130
130
|
|
131
131
|
filtered_users = new_users.select do |u|
|
132
132
|
fail "Column for determining the project assignement is empty for \"#{u[:login]}\"" if u[:pid].blank?
|
133
133
|
client_id = u[:pid].to_s
|
134
|
-
|
134
|
+
client_id == filter_value
|
135
135
|
end
|
136
136
|
|
137
137
|
if filtered_users.empty?
|
138
|
-
|
139
|
-
|
138
|
+
params.gdc_logger.warn(
|
139
|
+
"Project \"#{project.pid}\" does not match " \
|
140
|
+
"any client ids in input source (both " \
|
141
|
+
"GOODOT_CUSTOM_PROJECT_ID and SEGMENT/CLIENT). " \
|
142
|
+
"We are unable to get the value to filter users."
|
143
|
+
)
|
140
144
|
end
|
141
145
|
|
142
146
|
puts "Project #{project.pid} will receive #{filtered_users.count} from #{new_users.count} users"
|
@@ -168,11 +172,19 @@ module GoodData
|
|
168
172
|
end
|
169
173
|
when 'sync_domain_client_workspaces'
|
170
174
|
domain_clients = domain.clients(:all, data_product)
|
175
|
+
if params.segments
|
176
|
+
segment_uris = params.segments.map(&:uri)
|
177
|
+
domain_clients = domain_clients.select { |c| segment_uris.include?(c.segment_uri) }
|
178
|
+
end
|
171
179
|
working_client_ids = []
|
172
180
|
res = []
|
173
181
|
res += new_users.group_by { |u| u[:pid] }.flat_map do |client_id, users|
|
174
182
|
fail "Client id cannot be empty" if client_id.blank?
|
175
183
|
c = domain.clients(client_id, data_product)
|
184
|
+
if params.segments && !segment_uris.include?(c.segment_uri)
|
185
|
+
puts "Client #{client_id} is outside segments_filter #{params.segments}"
|
186
|
+
next
|
187
|
+
end
|
176
188
|
project = c.project
|
177
189
|
fail "Client #{client_id} does not have project." unless project
|
178
190
|
working_client_ids << client_id.to_s
|