gooddata-edge 0.6.27.edge
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 +7 -0
- data/.document +5 -0
- data/.gitignore +36 -0
- data/.rspec +3 -0
- data/.rubocop.yml +89 -0
- data/.yardopts +22 -0
- data/CHANGELOG.md +196 -0
- data/CLI.md +439 -0
- data/DEPENDENCIES.md +817 -0
- data/Gemfile +4 -0
- data/Guardfile +5 -0
- data/LICENSE +22 -0
- data/LICENSE.rb +5 -0
- data/README.md +75 -0
- data/Rakefile +179 -0
- data/TODO.md +32 -0
- data/authors.sh +4 -0
- data/bin/gooddata +7 -0
- data/dependency_decisions.yml +104 -0
- data/gooddata +9 -0
- data/gooddata.gemspec +63 -0
- data/lib/gooddata.rb +31 -0
- data/lib/gooddata/app/app.rb +16 -0
- data/lib/gooddata/bricks/base_downloader.rb +86 -0
- data/lib/gooddata/bricks/brick.rb +38 -0
- data/lib/gooddata/bricks/bricks.rb +15 -0
- data/lib/gooddata/bricks/middleware/aws_middleware.rb +29 -0
- data/lib/gooddata/bricks/middleware/base_middleware.rb +56 -0
- data/lib/gooddata/bricks/middleware/bench_middleware.rb +24 -0
- data/lib/gooddata/bricks/middleware/bulk_salesforce_middleware.rb +37 -0
- data/lib/gooddata/bricks/middleware/decode_params_middleware.rb +20 -0
- data/lib/gooddata/bricks/middleware/fs_download_middleware.rb +48 -0
- data/lib/gooddata/bricks/middleware/fs_upload_middleware.rb +36 -0
- data/lib/gooddata/bricks/middleware/gooddata_middleware.rb +39 -0
- data/lib/gooddata/bricks/middleware/logger_middleware.rb +29 -0
- data/lib/gooddata/bricks/middleware/middleware.rb +12 -0
- data/lib/gooddata/bricks/middleware/restforce_middleware.rb +61 -0
- data/lib/gooddata/bricks/middleware/stdout_middleware.rb +23 -0
- data/lib/gooddata/bricks/middleware/twitter_middleware.rb +29 -0
- data/lib/gooddata/bricks/middleware/undot_params_middleware.rb +37 -0
- data/lib/gooddata/bricks/pipeline.rb +32 -0
- data/lib/gooddata/bricks/utils.rb +18 -0
- data/lib/gooddata/cli/cli.rb +27 -0
- data/lib/gooddata/cli/commands/auth_cmd.rb +29 -0
- data/lib/gooddata/cli/commands/domain_cmd.rb +28 -0
- data/lib/gooddata/cli/commands/project_cmd.rb +45 -0
- data/lib/gooddata/cli/hooks.rb +57 -0
- data/lib/gooddata/cli/shared.rb +61 -0
- data/lib/gooddata/cli/terminal.rb +20 -0
- data/lib/gooddata/client.rb +67 -0
- data/lib/gooddata/commands/api.rb +64 -0
- data/lib/gooddata/commands/auth.rb +107 -0
- data/lib/gooddata/commands/base.rb +12 -0
- data/lib/gooddata/commands/commands.rb +12 -0
- data/lib/gooddata/commands/datasets.rb +148 -0
- data/lib/gooddata/commands/datawarehouse.rb +20 -0
- data/lib/gooddata/commands/domain.rb +40 -0
- data/lib/gooddata/commands/process.rb +67 -0
- data/lib/gooddata/commands/project.rb +175 -0
- data/lib/gooddata/commands/projects.rb +20 -0
- data/lib/gooddata/commands/role.rb +36 -0
- data/lib/gooddata/commands/runners.rb +47 -0
- data/lib/gooddata/commands/scaffold.rb +69 -0
- data/lib/gooddata/commands/user.rb +39 -0
- data/lib/gooddata/connection.rb +127 -0
- data/lib/gooddata/core/core.rb +12 -0
- data/lib/gooddata/core/logging.rb +105 -0
- data/lib/gooddata/core/nil_logger.rb +23 -0
- data/lib/gooddata/core/project.rb +74 -0
- data/lib/gooddata/core/rest.rb +149 -0
- data/lib/gooddata/core/user.rb +20 -0
- data/lib/gooddata/data/data.rb +12 -0
- data/lib/gooddata/data/guesser.rb +122 -0
- data/lib/gooddata/exceptions/attr_element_not_found.rb +16 -0
- data/lib/gooddata/exceptions/command_failed.rb +11 -0
- data/lib/gooddata/exceptions/exceptions.rb +12 -0
- data/lib/gooddata/exceptions/execution_limit_exceeded.rb +13 -0
- data/lib/gooddata/exceptions/filter_maqlization.rb +16 -0
- data/lib/gooddata/exceptions/malformed_user.rb +15 -0
- data/lib/gooddata/exceptions/no_project_error.rb +15 -0
- data/lib/gooddata/exceptions/object_migration.rb +32 -0
- data/lib/gooddata/exceptions/project_not_found.rb +13 -0
- data/lib/gooddata/exceptions/segment_not_empty.rb +18 -0
- data/lib/gooddata/exceptions/uncomputable_report.rb +13 -0
- data/lib/gooddata/exceptions/user_in_different_domain.rb +15 -0
- data/lib/gooddata/exceptions/validation_error.rb +16 -0
- data/lib/gooddata/extensions/big_decimal.rb +17 -0
- data/lib/gooddata/extensions/enumerable.rb +39 -0
- data/lib/gooddata/extensions/extensions.rb +10 -0
- data/lib/gooddata/extensions/false.rb +15 -0
- data/lib/gooddata/extensions/hash.rb +38 -0
- data/lib/gooddata/extensions/nil.rb +15 -0
- data/lib/gooddata/extensions/numeric.rb +15 -0
- data/lib/gooddata/extensions/object.rb +27 -0
- data/lib/gooddata/extensions/symbol.rb +15 -0
- data/lib/gooddata/extensions/true.rb +15 -0
- data/lib/gooddata/extract.rb +21 -0
- data/lib/gooddata/goodzilla/goodzilla.rb +159 -0
- data/lib/gooddata/helpers/auth_helpers.rb +75 -0
- data/lib/gooddata/helpers/csv_helper.rb +61 -0
- data/lib/gooddata/helpers/data_helper.rb +116 -0
- data/lib/gooddata/helpers/global_helpers.rb +331 -0
- data/lib/gooddata/helpers/global_helpers_params.rb +172 -0
- data/lib/gooddata/helpers/helpers.rb +10 -0
- data/lib/gooddata/mixins/author.rb +26 -0
- data/lib/gooddata/mixins/content_getter.rb +15 -0
- data/lib/gooddata/mixins/content_property_reader.rb +17 -0
- data/lib/gooddata/mixins/content_property_writer.rb +17 -0
- data/lib/gooddata/mixins/contributor.rb +20 -0
- data/lib/gooddata/mixins/data_getter.rb +15 -0
- data/lib/gooddata/mixins/data_property_reader.rb +19 -0
- data/lib/gooddata/mixins/data_property_writer.rb +19 -0
- data/lib/gooddata/mixins/inspector.rb +53 -0
- data/lib/gooddata/mixins/is_attribute.rb +17 -0
- data/lib/gooddata/mixins/is_dimension.rb +17 -0
- data/lib/gooddata/mixins/is_fact.rb +17 -0
- data/lib/gooddata/mixins/is_label.rb +19 -0
- data/lib/gooddata/mixins/links.rb +15 -0
- data/lib/gooddata/mixins/md_finders.rb +77 -0
- data/lib/gooddata/mixins/md_grantees.rb +42 -0
- data/lib/gooddata/mixins/md_id_to_uri.rb +34 -0
- data/lib/gooddata/mixins/md_json.rb +15 -0
- data/lib/gooddata/mixins/md_lock.rb +87 -0
- data/lib/gooddata/mixins/md_object_id.rb +15 -0
- data/lib/gooddata/mixins/md_object_indexer.rb +64 -0
- data/lib/gooddata/mixins/md_object_query.rb +128 -0
- data/lib/gooddata/mixins/md_relations.rb +43 -0
- data/lib/gooddata/mixins/meta_getter.rb +17 -0
- data/lib/gooddata/mixins/meta_property_reader.rb +19 -0
- data/lib/gooddata/mixins/meta_property_writer.rb +19 -0
- data/lib/gooddata/mixins/mixins.rb +19 -0
- data/lib/gooddata/mixins/not_attribute.rb +17 -0
- data/lib/gooddata/mixins/not_exportable.rb +15 -0
- data/lib/gooddata/mixins/not_fact.rb +17 -0
- data/lib/gooddata/mixins/not_group.rb +17 -0
- data/lib/gooddata/mixins/not_label.rb +19 -0
- data/lib/gooddata/mixins/not_metric.rb +19 -0
- data/lib/gooddata/mixins/obj_id.rb +15 -0
- data/lib/gooddata/mixins/rest_getters.rb +17 -0
- data/lib/gooddata/mixins/rest_resource.rb +47 -0
- data/lib/gooddata/mixins/root_key_getter.rb +15 -0
- data/lib/gooddata/mixins/root_key_setter.rb +15 -0
- data/lib/gooddata/mixins/timestamps.rb +19 -0
- data/lib/gooddata/mixins/to_json.rb +11 -0
- data/lib/gooddata/mixins/uri_getter.rb +9 -0
- data/lib/gooddata/models/blueprint/anchor_field.rb +64 -0
- data/lib/gooddata/models/blueprint/attribute_field.rb +29 -0
- data/lib/gooddata/models/blueprint/blueprint.rb +11 -0
- data/lib/gooddata/models/blueprint/blueprint_field.rb +70 -0
- data/lib/gooddata/models/blueprint/dashboard_builder.rb +30 -0
- data/lib/gooddata/models/blueprint/dataset_blueprint.rb +449 -0
- data/lib/gooddata/models/blueprint/date_dimension.rb +14 -0
- data/lib/gooddata/models/blueprint/fact_field.rb +20 -0
- data/lib/gooddata/models/blueprint/label_field.rb +43 -0
- data/lib/gooddata/models/blueprint/project_blueprint.rb +746 -0
- data/lib/gooddata/models/blueprint/project_builder.rb +83 -0
- data/lib/gooddata/models/blueprint/reference_field.rb +43 -0
- data/lib/gooddata/models/blueprint/schema_blueprint.rb +160 -0
- data/lib/gooddata/models/blueprint/schema_builder.rb +89 -0
- data/lib/gooddata/models/blueprint/to_manifest.rb +181 -0
- data/lib/gooddata/models/blueprint/to_wire.rb +154 -0
- data/lib/gooddata/models/client.rb +182 -0
- data/lib/gooddata/models/client_synchronization_result.rb +31 -0
- data/lib/gooddata/models/client_synchronization_result_details.rb +41 -0
- data/lib/gooddata/models/datawarehouse.rb +92 -0
- data/lib/gooddata/models/domain.rb +479 -0
- data/lib/gooddata/models/execution.rb +115 -0
- data/lib/gooddata/models/execution_detail.rb +81 -0
- data/lib/gooddata/models/from_wire.rb +160 -0
- data/lib/gooddata/models/invitation.rb +75 -0
- data/lib/gooddata/models/links.rb +50 -0
- data/lib/gooddata/models/membership.rb +441 -0
- data/lib/gooddata/models/metadata.rb +272 -0
- data/lib/gooddata/models/metadata/attribute.rb +134 -0
- data/lib/gooddata/models/metadata/dashboard.rb +108 -0
- data/lib/gooddata/models/metadata/dashboard/dashboard_item.rb +76 -0
- data/lib/gooddata/models/metadata/dashboard/filter_apply_item.rb +37 -0
- data/lib/gooddata/models/metadata/dashboard/filter_item.rb +64 -0
- data/lib/gooddata/models/metadata/dashboard/geo_chart_item.rb +56 -0
- data/lib/gooddata/models/metadata/dashboard/headline_item.rb +56 -0
- data/lib/gooddata/models/metadata/dashboard/iframe_item.rb +46 -0
- data/lib/gooddata/models/metadata/dashboard/report_item.rb +92 -0
- data/lib/gooddata/models/metadata/dashboard/text_item.rb +55 -0
- data/lib/gooddata/models/metadata/dashboard_tab.rb +141 -0
- data/lib/gooddata/models/metadata/dataset.rb +64 -0
- data/lib/gooddata/models/metadata/dimension.rb +54 -0
- data/lib/gooddata/models/metadata/fact.rb +44 -0
- data/lib/gooddata/models/metadata/label.rb +128 -0
- data/lib/gooddata/models/metadata/metadata.rb +12 -0
- data/lib/gooddata/models/metadata/metric.rb +198 -0
- data/lib/gooddata/models/metadata/report.rb +247 -0
- data/lib/gooddata/models/metadata/report_definition.rb +264 -0
- data/lib/gooddata/models/metadata/scheduled_mail.rb +274 -0
- data/lib/gooddata/models/metadata/scheduled_mail/dashboard_attachment.rb +62 -0
- data/lib/gooddata/models/metadata/scheduled_mail/report_attachment.rb +64 -0
- data/lib/gooddata/models/metadata/variable.rb +91 -0
- data/lib/gooddata/models/model.rb +282 -0
- data/lib/gooddata/models/models.rb +12 -0
- data/lib/gooddata/models/module_constants.rb +31 -0
- data/lib/gooddata/models/process.rb +316 -0
- data/lib/gooddata/models/profile.rb +426 -0
- data/lib/gooddata/models/project.rb +1514 -0
- data/lib/gooddata/models/project_creator.rb +126 -0
- data/lib/gooddata/models/project_metadata.rb +67 -0
- data/lib/gooddata/models/project_role.rb +79 -0
- data/lib/gooddata/models/report_data_result.rb +266 -0
- data/lib/gooddata/models/schedule.rb +518 -0
- data/lib/gooddata/models/segment.rb +201 -0
- data/lib/gooddata/models/tab_builder.rb +27 -0
- data/lib/gooddata/models/user_filters/mandatory_user_filter.rb +76 -0
- data/lib/gooddata/models/user_filters/user_filter.rb +100 -0
- data/lib/gooddata/models/user_filters/user_filter_builder.rb +512 -0
- data/lib/gooddata/models/user_filters/user_filters.rb +13 -0
- data/lib/gooddata/models/user_filters/variable_user_filter.rb +31 -0
- data/lib/gooddata/models/user_group.rb +241 -0
- data/lib/gooddata/rest/README.md +37 -0
- data/lib/gooddata/rest/client.rb +389 -0
- data/lib/gooddata/rest/connection.rb +765 -0
- data/lib/gooddata/rest/object.rb +69 -0
- data/lib/gooddata/rest/object_factory.rb +76 -0
- data/lib/gooddata/rest/resource.rb +27 -0
- data/lib/gooddata/rest/rest.rb +24 -0
- data/lib/gooddata/version.rb +23 -0
- data/lib/templates/bricks/brick.rb.erb +7 -0
- data/lib/templates/bricks/main.rb.erb +5 -0
- data/lib/templates/project/Goodfile.erb +4 -0
- data/lib/templates/project/data/commits.csv +4 -0
- data/lib/templates/project/data/devs.csv +4 -0
- data/lib/templates/project/data/repos.csv +3 -0
- data/lib/templates/project/model/model.rb.erb +20 -0
- data/spec/bricks/bricks_spec.rb +112 -0
- data/spec/bricks/default-config.json +8 -0
- data/spec/data/.gooddata +4 -0
- data/spec/data/blueprints/additional_dataset_module.json +32 -0
- data/spec/data/blueprints/big_blueprint_not_pruned.json +2079 -0
- data/spec/data/blueprints/invalid_blueprint.json +103 -0
- data/spec/data/blueprints/m_n_model.json +104 -0
- data/spec/data/blueprints/model_module.json +25 -0
- data/spec/data/blueprints/test_blueprint.json +38 -0
- data/spec/data/blueprints/test_project_model_spec.json +106 -0
- data/spec/data/cc/data/source/commits.csv +4 -0
- data/spec/data/cc/data/source/devs.csv +4 -0
- data/spec/data/cc/data/source/repos.csv +3 -0
- data/spec/data/cc/devel.prm +0 -0
- data/spec/data/cc/graph/graph.grf +11 -0
- data/spec/data/cc/workspace.prm +19 -0
- data/spec/data/column_based_permissions.csv +7 -0
- data/spec/data/column_based_permissions2.csv +6 -0
- data/spec/data/gd_gse_data_blueprint.json +1371 -0
- data/spec/data/gd_gse_data_manifest.json +1424 -0
- data/spec/data/gd_gse_data_model.json +1772 -0
- data/spec/data/gooddata_version_process/gooddata_version.rb +9 -0
- data/spec/data/gooddata_version_process/gooddata_version.zip +0 -0
- data/spec/data/hello_world_process/hello_world.rb +9 -0
- data/spec/data/hello_world_process/hello_world.zip +0 -0
- data/spec/data/line_based_permissions.csv +3 -0
- data/spec/data/manifests/test_blueprint.json +32 -0
- data/spec/data/manifests/test_project.json +107 -0
- data/spec/data/reports/left_attr_report.json +108 -0
- data/spec/data/reports/metric_only_one_line.json +83 -0
- data/spec/data/reports/report_1.json +197 -0
- data/spec/data/reports/top_attr_report.json +108 -0
- data/spec/data/ruby_params_process/ruby_params.rb +9 -0
- data/spec/data/ruby_process/deep_files/deep_stuff.txt +1 -0
- data/spec/data/ruby_process/process.rb +8 -0
- data/spec/data/ruby_process/stuff.txt +1 -0
- data/spec/data/superfluous_titles_view.json +81 -0
- data/spec/data/test-ci-data.csv +2 -0
- data/spec/data/users.csv +12 -0
- data/spec/data/wire_models/model_view.json +1775 -0
- data/spec/data/wire_models/nu_model.json +3046 -0
- data/spec/data/wire_models/test_blueprint.json +63 -0
- data/spec/data/wire_test_project.json +150 -0
- data/spec/environment/default.rb +41 -0
- data/spec/environment/develop.rb +31 -0
- data/spec/environment/environment.rb +18 -0
- data/spec/environment/hotfix.rb +21 -0
- data/spec/environment/production.rb +35 -0
- data/spec/environment/release.rb +21 -0
- data/spec/environment/staging.rb +30 -0
- data/spec/environment/staging_3.rb +36 -0
- data/spec/helpers/blueprint_helper.rb +26 -0
- data/spec/helpers/cli_helper.rb +36 -0
- data/spec/helpers/connection_helper.rb +41 -0
- data/spec/helpers/crypto_helper.rb +17 -0
- data/spec/helpers/csv_helper.rb +18 -0
- data/spec/helpers/process_helper.rb +33 -0
- data/spec/helpers/project_helper.rb +59 -0
- data/spec/helpers/schedule_helper.rb +31 -0
- data/spec/helpers/spec_helper.rb +15 -0
- data/spec/integration/blueprint_updates_spec.rb +101 -0
- data/spec/integration/blueprint_with_grain_spec.rb +72 -0
- data/spec/integration/clients_spec.rb +134 -0
- data/spec/integration/command_datawarehouse_spec.rb +39 -0
- data/spec/integration/command_projects_spec.rb +32 -0
- data/spec/integration/create_from_template_spec.rb +22 -0
- data/spec/integration/create_project_spec.rb +24 -0
- data/spec/integration/date_dim_switch_spec.rb +142 -0
- data/spec/integration/deprecated_load_spec.rb +58 -0
- data/spec/integration/full_process_schedule_spec.rb +298 -0
- data/spec/integration/full_project_spec.rb +569 -0
- data/spec/integration/over_to_user_filters_spec.rb +94 -0
- data/spec/integration/partial_md_export_import_spec.rb +42 -0
- data/spec/integration/project_spec.rb +264 -0
- data/spec/integration/rest_spec.rb +213 -0
- data/spec/integration/schedule_spec.rb +626 -0
- data/spec/integration/segments_spec.rb +141 -0
- data/spec/integration/user_filters_spec.rb +290 -0
- data/spec/integration/user_group_spec.rb +127 -0
- data/spec/integration/variables_spec.rb +188 -0
- data/spec/logging_in_logging_out_spec.rb +93 -0
- data/spec/spec_helper.rb +95 -0
- data/spec/unit/bricks/bricks_spec.rb +35 -0
- data/spec/unit/bricks/middleware/aws_middelware_spec.rb +51 -0
- data/spec/unit/bricks/middleware/bench_middleware_spec.rb +15 -0
- data/spec/unit/bricks/middleware/bulk_salesforce_middleware_spec.rb +15 -0
- data/spec/unit/bricks/middleware/gooddata_middleware_spec.rb +15 -0
- data/spec/unit/bricks/middleware/logger_middleware_spec.rb +15 -0
- data/spec/unit/bricks/middleware/restforce_middleware_spec.rb +15 -0
- data/spec/unit/bricks/middleware/stdout_middleware_spec.rb +15 -0
- data/spec/unit/bricks/middleware/twitter_middleware_spec.rb +15 -0
- data/spec/unit/cli/cli_spec.rb +17 -0
- data/spec/unit/cli/commands/cmd_auth_spec.rb +17 -0
- data/spec/unit/commands/command_projects_spec.rb +22 -0
- data/spec/unit/core/connection_spec.rb +57 -0
- data/spec/unit/core/logging_spec.rb +133 -0
- data/spec/unit/core/nil_logger_spec.rb +13 -0
- data/spec/unit/core/project_spec.rb +54 -0
- data/spec/unit/extensions/hash_spec.rb +23 -0
- data/spec/unit/godzilla/goodzilla_spec.rb +78 -0
- data/spec/unit/helpers/csv_helper_spec.rb +22 -0
- data/spec/unit/helpers/data_helper_spec.rb +61 -0
- data/spec/unit/helpers/global_helpers_spec.rb +111 -0
- data/spec/unit/helpers_spec.rb +86 -0
- data/spec/unit/models/blueprint/attributes_spec.rb +29 -0
- data/spec/unit/models/blueprint/dataset_spec.rb +121 -0
- data/spec/unit/models/blueprint/labels_spec.rb +44 -0
- data/spec/unit/models/blueprint/project_blueprint_spec.rb +648 -0
- data/spec/unit/models/blueprint/reference_spec.rb +29 -0
- data/spec/unit/models/blueprint/schema_builder_spec.rb +38 -0
- data/spec/unit/models/blueprint/to_wire_spec.rb +174 -0
- data/spec/unit/models/domain_spec.rb +144 -0
- data/spec/unit/models/execution_spec.rb +108 -0
- data/spec/unit/models/from_wire_spec.rb +296 -0
- data/spec/unit/models/invitation_spec.rb +17 -0
- data/spec/unit/models/membership_spec.rb +132 -0
- data/spec/unit/models/metadata_spec.rb +104 -0
- data/spec/unit/models/metric_spec.rb +117 -0
- data/spec/unit/models/model_spec.rb +82 -0
- data/spec/unit/models/params_spec.rb +118 -0
- data/spec/unit/models/profile_spec.rb +215 -0
- data/spec/unit/models/project_creator_spec.rb +127 -0
- data/spec/unit/models/project_role_spec.rb +94 -0
- data/spec/unit/models/project_spec.rb +162 -0
- data/spec/unit/models/report_result_data_spec.rb +199 -0
- data/spec/unit/models/schedule_spec.rb +418 -0
- data/spec/unit/models/to_manifest_spec.rb +63 -0
- data/spec/unit/models/unit_project_spec.rb +125 -0
- data/spec/unit/models/user_filters_spec.rb +95 -0
- data/spec/unit/models/variable_spec.rb +265 -0
- data/spec/unit/rest/polling_spec.rb +89 -0
- data/spec/unit/rest/resource_spec.rb +10 -0
- data/yard-server.sh +3 -0
- metadata +1125 -0
data/Gemfile
ADDED
data/Guardfile
ADDED
data/LICENSE
ADDED
@@ -0,0 +1,22 @@
|
|
1
|
+
(BSD License)
|
2
|
+
|
3
|
+
Copyright (c) 2010-2015 GoodData Corporation. All rights reserved.
|
4
|
+
|
5
|
+
Redistribution and use in source and binary forms, with or without modification, are permitted provided
|
6
|
+
that the following conditions are met:
|
7
|
+
|
8
|
+
* Redistributions of source code must retain the above copyright notice, this list of conditions and
|
9
|
+
the following disclaimer.
|
10
|
+
* Redistributions in binary form must reproduce the above copyright notice, this list of conditions
|
11
|
+
and the following disclaimer in the documentation and/or other materials provided with the distribution.
|
12
|
+
* Neither the name of the GoodData Corporation nor the names of its contributors may be used to endorse
|
13
|
+
or promote products derived from this software without specific prior written permission.
|
14
|
+
|
15
|
+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS
|
16
|
+
OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
|
17
|
+
AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
|
18
|
+
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
19
|
+
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
20
|
+
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
|
21
|
+
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
22
|
+
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
data/LICENSE.rb
ADDED
data/README.md
ADDED
@@ -0,0 +1,75 @@
|
|
1
|
+
# GoodData API Ruby wrapper and CLI
|
2
|
+
|
3
|
+
A convenient Ruby wrapper around the GoodData RESTful API. The gem comes in two flavors.
|
4
|
+
It has a CLI client and it is a library which you can integrate into your application.
|
5
|
+
|
6
|
+
The best documentation for the GoodData API can be found using these resources:
|
7
|
+
|
8
|
+
* http://sdk.gooddata.com/gooddata-ruby-examples/
|
9
|
+
* http://developer.gooddata.com/api
|
10
|
+
* https://secure.gooddata.com/gdc
|
11
|
+
* http://rubydoc.info/gems/gooddata/frames
|
12
|
+
|
13
|
+
## Status
|
14
|
+
|
15
|
+
[](http://badge.fury.io/rb/gooddata)
|
16
|
+
[](http://rubygems.org/gems/gooddata)
|
17
|
+
[](https://gemnasium.com/gooddata/gooddata-ruby)
|
18
|
+
[](https://codeclimate.com/github/gooddata/gooddata-ruby)
|
19
|
+
[](https://travis-ci.org/gooddata/gooddata-ruby)
|
20
|
+
[](https://coveralls.io/r/gooddata/gooddata-ruby)
|
21
|
+
|
22
|
+
## Install
|
23
|
+
|
24
|
+
If you are using bundler. Add
|
25
|
+
|
26
|
+
gem "gooddata"
|
27
|
+
|
28
|
+
into Gemfile
|
29
|
+
|
30
|
+
and run
|
31
|
+
|
32
|
+
bundle install
|
33
|
+
|
34
|
+
If you are using gems just
|
35
|
+
|
36
|
+
gem install gooddata
|
37
|
+
|
38
|
+
## Note on Patches/Pull Requests
|
39
|
+
|
40
|
+
* Fork the project.
|
41
|
+
* Make your feature addition or bug fix.
|
42
|
+
* Add tests for it. This is important so I don't break it in a
|
43
|
+
future version unintentionally.
|
44
|
+
* Commit, do not mess with rakefile, version, or history.
|
45
|
+
(if you want to have your own version, that is fine but bump version in a commit by itself we can ignore when we pull)
|
46
|
+
* run `rake test` and make sure all tests passes
|
47
|
+
* run `rake cop` and make sure you did not introduced any new coding rules issues
|
48
|
+
* Send us a pull request. Bonus points for topic branches.
|
49
|
+
|
50
|
+
## Credits
|
51
|
+
|
52
|
+
**Originaly started by**
|
53
|
+
|
54
|
+
Pavel Kolesnikov [ <mailto:pavel@gooddata.com> / [@koles](http://twitter.com/koles) ]
|
55
|
+
|
56
|
+
**Actively developed and maintained by**
|
57
|
+
|
58
|
+
- [Tomas Korcak](https://github.com/korczis) [ <mailto:korczis@gmail.com> / [@korczis](http://twitter.com/korczis) ]
|
59
|
+
- [Tomas Svarovsky](https://github.com/fluke777) [ <mailto:svarovsky.tomas@gmail.com> / [@fluke777](http://twitter.com/fluke777) ]
|
60
|
+
|
61
|
+
**Contributors**
|
62
|
+
|
63
|
+
- [Patrick McConlogue](https://github.com/thnkr/)
|
64
|
+
- [Petr Cvengros](https://github.com/cvengros)
|
65
|
+
|
66
|
+
For full contributor info see [contributors page](https://github.com/gooddata/gooddata-ruby/graphs/contributors).
|
67
|
+
|
68
|
+
**Special thanks to**
|
69
|
+
|
70
|
+
- Thomas Watson Steen [ <mailto:w@tson.dk> / [@wa7son](http://twitter.com/wa7son) ].
|
71
|
+
|
72
|
+
## Copyright
|
73
|
+
|
74
|
+
Copyright (c) 2010 - 2015 GoodData Corporation and Thomas Watson Steen. See LICENSE for details.
|
75
|
+
|
data/Rakefile
ADDED
@@ -0,0 +1,179 @@
|
|
1
|
+
# encoding: UTF-8
|
2
|
+
|
3
|
+
require 'rubygems'
|
4
|
+
|
5
|
+
require 'bundler/setup'
|
6
|
+
require 'bundler/cli'
|
7
|
+
require 'bundler/gem_tasks'
|
8
|
+
|
9
|
+
require 'rake/testtask'
|
10
|
+
require 'rake/notes/rake_task'
|
11
|
+
require 'rspec/core/rake_task'
|
12
|
+
|
13
|
+
require 'yard'
|
14
|
+
|
15
|
+
require 'rubocop/rake_task'
|
16
|
+
|
17
|
+
desc 'Run RuboCop'
|
18
|
+
RuboCop::RakeTask.new(:cop) do |task|
|
19
|
+
task.patterns = ['lib/**/*.rb']
|
20
|
+
end
|
21
|
+
|
22
|
+
desc 'Run continuous integration test'
|
23
|
+
task :ci do
|
24
|
+
Rake::Task['test:unit'].invoke
|
25
|
+
unless ENV['TRAVIS'] == 'true' && ENV['TRAVIS_SECURE_ENV_VARS'] == 'false'
|
26
|
+
Rake::Task['test:integration'].invoke
|
27
|
+
end
|
28
|
+
Rake::Task['test:cop'].invoke
|
29
|
+
end
|
30
|
+
|
31
|
+
namespace :gem do
|
32
|
+
desc "Release gem version #{GoodData::VERSION} to rubygems"
|
33
|
+
task :release do
|
34
|
+
gem = "gooddata-#{GoodData::VERSION}.gem"
|
35
|
+
|
36
|
+
puts "Building #{gem} ..."
|
37
|
+
res = system('gem build ./gooddata.gemspec')
|
38
|
+
next unless res
|
39
|
+
|
40
|
+
puts "Pushing #{gem} ..."
|
41
|
+
system("gem push #{gem}")
|
42
|
+
end
|
43
|
+
end
|
44
|
+
|
45
|
+
namespace :hook do
|
46
|
+
hook_path = File.join(File.dirname(__FILE__), '.git', 'hooks', 'pre-commit').to_s
|
47
|
+
|
48
|
+
desc 'Installs git pre-commit hook running rubocop'
|
49
|
+
task :install do
|
50
|
+
if File.exist?(hook_path)
|
51
|
+
puts 'Git pre-commit hook is already installed'
|
52
|
+
else
|
53
|
+
File.open(hook_path, 'w') do |file|
|
54
|
+
file.write("#! /usr/bin/env bash\n")
|
55
|
+
file.write("\n")
|
56
|
+
file.write("rake cop\n")
|
57
|
+
end
|
58
|
+
system "chmod 755 #{hook_path}"
|
59
|
+
puts 'Git commit hook was installed'
|
60
|
+
end
|
61
|
+
end
|
62
|
+
|
63
|
+
desc 'Uninstalls git pre-commit hook'
|
64
|
+
task :uninstall do
|
65
|
+
res = File.exist?(hook_path)
|
66
|
+
if res
|
67
|
+
puts 'Uninstalling git pre-commit hook'
|
68
|
+
system "rm #{hook_path}"
|
69
|
+
puts 'Git pre-commit hook was uninstalled'
|
70
|
+
else
|
71
|
+
puts 'Git pre-commit hook is not installed'
|
72
|
+
end
|
73
|
+
end
|
74
|
+
|
75
|
+
desc 'Checks if is git pre-commit hook installed'
|
76
|
+
task :check do
|
77
|
+
res = File.exist?(hook_path)
|
78
|
+
if res
|
79
|
+
puts 'Git pre-commit IS installed'
|
80
|
+
else
|
81
|
+
puts 'Git pre-commit IS NOT installed'
|
82
|
+
end
|
83
|
+
end
|
84
|
+
end
|
85
|
+
|
86
|
+
namespace :license do
|
87
|
+
desc 'Show license report'
|
88
|
+
task :info do
|
89
|
+
Bundler::CLI.start(['exec', 'license_finder', '--decisions-file', 'dependency_decisions.yml'])
|
90
|
+
end
|
91
|
+
|
92
|
+
desc 'Generate licenses report - DEPENDENCIES.md'
|
93
|
+
task :report do
|
94
|
+
`bundle exec license_finder report --decisions-file dependency_decisions.yml --format=markdown > DEPENDENCIES.md`
|
95
|
+
end
|
96
|
+
|
97
|
+
desc 'Check if DEPENDENCIES.md is up to date'
|
98
|
+
task :check do
|
99
|
+
Rake::Task['license:report'].invoke
|
100
|
+
res = `git diff --stat DEPENDENCIES.md`
|
101
|
+
fail 'License check error' unless res.include?('1 file changed, 1 insertion(+), 1 deletion(-)')
|
102
|
+
|
103
|
+
puts 'All licenses seem to be OK'
|
104
|
+
end
|
105
|
+
|
106
|
+
desc 'Add license header to each file'
|
107
|
+
task :add do
|
108
|
+
spec = Gem::Specification.load('gooddata.gemspec')
|
109
|
+
license = File.readlines(File.expand_path('../LICENSE.rb', __FILE__))
|
110
|
+
license << "\n"
|
111
|
+
license_lines = license.length
|
112
|
+
|
113
|
+
spec.files.each do |path|
|
114
|
+
next if path == 'LICENSE.rb'
|
115
|
+
next unless path.end_with?('.rb')
|
116
|
+
|
117
|
+
puts "Processing #{path}"
|
118
|
+
|
119
|
+
content = File.read(path)
|
120
|
+
content_lines = content.lines
|
121
|
+
|
122
|
+
update = content_lines.length < license_lines
|
123
|
+
|
124
|
+
if update == false
|
125
|
+
content_with_license = (license + content_lines[license_lines..-1]).join
|
126
|
+
update = content != content_with_license
|
127
|
+
end
|
128
|
+
|
129
|
+
next unless update
|
130
|
+
|
131
|
+
puts "Updating #{path}"
|
132
|
+
|
133
|
+
if content_lines.length > 0 && content_lines[0].downcase.strip == '# encoding: utf-8'
|
134
|
+
content_lines.slice!(0)
|
135
|
+
content_lines.slice!(0) if content_lines[0] == "\n"
|
136
|
+
end
|
137
|
+
|
138
|
+
new_content = (license + content_lines).join
|
139
|
+
File.open(path, 'w') { |file| file.write(new_content) }
|
140
|
+
end
|
141
|
+
end
|
142
|
+
end
|
143
|
+
|
144
|
+
RSpec::Core::RakeTask.new(:test)
|
145
|
+
|
146
|
+
namespace :test do
|
147
|
+
desc 'Run unit tests'
|
148
|
+
RSpec::Core::RakeTask.new(:unit) do |t|
|
149
|
+
t.pattern = 'spec/unit/**/*.rb'
|
150
|
+
end
|
151
|
+
|
152
|
+
desc 'Run integration tests'
|
153
|
+
RSpec::Core::RakeTask.new(:integration) do |t|
|
154
|
+
t.pattern = 'spec/integration/**/*.rb'
|
155
|
+
end
|
156
|
+
|
157
|
+
desc 'Run legacy tests'
|
158
|
+
RSpec::Core::RakeTask.new(:legacy) do |t|
|
159
|
+
t.pattern = 'test/**/test_*.rb'
|
160
|
+
end
|
161
|
+
|
162
|
+
desc 'Run coding style tests'
|
163
|
+
RSpec::Core::RakeTask.new(:cop) do
|
164
|
+
Rake::Task['cop'].invoke
|
165
|
+
end
|
166
|
+
|
167
|
+
task :all => [:unit, :integration, :cop]
|
168
|
+
end
|
169
|
+
|
170
|
+
desc 'Run all tests'
|
171
|
+
task :test => 'test:all'
|
172
|
+
|
173
|
+
task :usage do
|
174
|
+
puts 'No rake task specified, use rake -T to list them'
|
175
|
+
end
|
176
|
+
|
177
|
+
YARD::Rake::YardocTask.new
|
178
|
+
|
179
|
+
task :default => [:usage]
|
data/TODO.md
ADDED
@@ -0,0 +1,32 @@
|
|
1
|
+
# TODO
|
2
|
+
|
3
|
+
## Lib
|
4
|
+
|
5
|
+
- Check all GoodData::Something[:all], they used to return Array of Hashes in many cases now they are all returning Objects
|
6
|
+
- Use less strict versioning See [#96](https://github.com/gooddata/gooddata-ruby/pull/196)
|
7
|
+
- Library wide-logging to tmp/logs/{{TIMESTAMP}}.log
|
8
|
+
- Globar library crash handler storing stacktraces to tmp/crashes/{{TIMESTAMP}}.log
|
9
|
+
- High Level Error Handling
|
10
|
+
- Pretty Print Rest Client & Connection
|
11
|
+
- Unify
|
12
|
+
- [NoProjectError](https://github.com/gooddata/gooddata-ruby/blob/master/lib/gooddata/exceptions/no_project_error.rb)
|
13
|
+
- [ProjectNotFound](https://github.com/gooddata/gooddata-ruby/blob/master/lib/gooddata/exceptions/project_not_found.rb)
|
14
|
+
- Use more of pmap
|
15
|
+
- Create class (GoodData::Storage) for abstracting remote FS (=> WebDav)
|
16
|
+
- Print stats at client disconnect and not at_exit as now!
|
17
|
+
- Make stats optional via cmd-line switch
|
18
|
+
|
19
|
+
## Tests
|
20
|
+
|
21
|
+
- Pending tests
|
22
|
+
- Rubocop spec/**/*.rb
|
23
|
+
- Properly split unit and integration tests
|
24
|
+
|
25
|
+
## All Timers
|
26
|
+
|
27
|
+
- [Issues](https://github.com/gooddata/gooddata-ruby/issues)
|
28
|
+
- Rake notes - [rake notes](https://gist.github.com/korczis/a127456afdda3df4e3a6)
|
29
|
+
|
30
|
+
# Done
|
31
|
+
|
32
|
+
- walked through Project and added majority of the helpers for getting project related objects (fact, attr, metric, etc)
|
data/authors.sh
ADDED
data/bin/gooddata
ADDED
@@ -0,0 +1,104 @@
|
|
1
|
+
---
|
2
|
+
- - :whitelist
|
3
|
+
- MIT
|
4
|
+
- :who:
|
5
|
+
:why:
|
6
|
+
:when: 2015-07-17 19:58:05.941481000 Z
|
7
|
+
- - :add_package
|
8
|
+
- rake
|
9
|
+
-
|
10
|
+
- &1
|
11
|
+
:who:
|
12
|
+
:why:
|
13
|
+
:when: 2015-07-17 20:06:59.009509000 Z
|
14
|
+
- - :license
|
15
|
+
- rake
|
16
|
+
- MIT
|
17
|
+
- *1
|
18
|
+
- - :add_package
|
19
|
+
- colored
|
20
|
+
-
|
21
|
+
- &2
|
22
|
+
:who:
|
23
|
+
:why:
|
24
|
+
:when: 2015-07-17 20:07:00.038919000 Z
|
25
|
+
- - :license
|
26
|
+
- colored
|
27
|
+
- MIT
|
28
|
+
- *2
|
29
|
+
- - :add_package
|
30
|
+
- pmap
|
31
|
+
-
|
32
|
+
- &3
|
33
|
+
:who:
|
34
|
+
:why:
|
35
|
+
:when: 2015-07-17 20:07:01.179721000 Z
|
36
|
+
- - :license
|
37
|
+
- pmap
|
38
|
+
- Apache 2.0
|
39
|
+
- *3
|
40
|
+
- - :add_package
|
41
|
+
- mime-types
|
42
|
+
-
|
43
|
+
- &4
|
44
|
+
:who:
|
45
|
+
:why:
|
46
|
+
:when: 2015-07-17 20:07:02.216723000 Z
|
47
|
+
- - :license
|
48
|
+
- mime-types
|
49
|
+
- MIT
|
50
|
+
- *4
|
51
|
+
- - :add_package
|
52
|
+
- diff-lcs
|
53
|
+
-
|
54
|
+
- &5
|
55
|
+
:who:
|
56
|
+
:why:
|
57
|
+
:when: 2015-07-17 20:07:03.248925000 Z
|
58
|
+
- - :license
|
59
|
+
- diff-lcs
|
60
|
+
- MIT
|
61
|
+
- *5
|
62
|
+
- - :add_package
|
63
|
+
- rubyzip
|
64
|
+
-
|
65
|
+
- &6
|
66
|
+
:who:
|
67
|
+
:why:
|
68
|
+
:when: 2015-07-17 20:07:04.296985000 Z
|
69
|
+
- - :license
|
70
|
+
- rubyzip
|
71
|
+
- ruby
|
72
|
+
- *6
|
73
|
+
- - :whitelist
|
74
|
+
- MIT
|
75
|
+
- :who:
|
76
|
+
:why:
|
77
|
+
:when: 2015-07-17 20:07:05.347602000 Z
|
78
|
+
- - :whitelist
|
79
|
+
- Apache 2.0
|
80
|
+
- :who:
|
81
|
+
:why:
|
82
|
+
:when: 2015-07-17 20:07:06.371393000 Z
|
83
|
+
- - :whitelist
|
84
|
+
- ruby
|
85
|
+
- :who:
|
86
|
+
:why:
|
87
|
+
:when: 2015-07-17 20:07:07.417378000 Z
|
88
|
+
- - :whitelist
|
89
|
+
- BSD
|
90
|
+
- :who:
|
91
|
+
:why:
|
92
|
+
:when: 2015-07-17 20:07:08.448183000 Z
|
93
|
+
- - :whitelist
|
94
|
+
- GPL-2
|
95
|
+
- :who:
|
96
|
+
:why:
|
97
|
+
:when: 2015-07-17 20:07:12.266179000 Z
|
98
|
+
- - :approve
|
99
|
+
- bundler
|
100
|
+
- :who:
|
101
|
+
:why:
|
102
|
+
:when: 2015-08-03 10:50:05.464030000 Z
|
103
|
+
|
104
|
+
|