Ruby GoodData::Model::ProjectBlueprint是否支持将自身生成到某个目录的JSON项目数据集清单文件中的任何方法?

Ruby GoodData::Model::ProjectBlueprint是否支持将自身生成到某个目录的JSON项目数据集清单文件中的任何方法?,ruby,sdk,manifest,blueprint,gooddata,Ruby,Sdk,Manifest,Blueprint,Gooddata,为了避免不完善的人工定义,我想知道如何从用于Ruby自动化的ActiveGoodData项目生成json数据集清单文件 我想可能有一些命令行可以实现这一点,比如在控制台上输入project.blueprint.~或GoodData::Model::ProjectBlueprint,比如windows命令提示符,或者从CloudConnect LDM modeler的MAQL选项卡中查找MAQL,或者从project web控制台(比如下一个位置)中查找MAQL {project_id}/ldm/

为了避免不完善的人工定义,我想知道如何从用于Ruby自动化的ActiveGoodData项目生成json数据集清单文件

我想可能有一些命令行可以实现这一点,比如在控制台上输入project.blueprint.~或GoodData::Model::ProjectBlueprint,比如windows命令提示符,或者从CloudConnect LDM modeler的MAQL选项卡中查找MAQL,或者从project web控制台(比如下一个位置)中查找MAQL


{project_id}/ldm/singleloadinterface/dataset.{dataset_name}

当前,试图以中定义的方式获取清单时出现错误,但我可以为您提供一个解决方法,直到他们修复并更新我们的gem:

require 'gooddata'
require 'pp'

module GoodData
    module Model
        module ToManifest
        def self.dataset_to_manifest(project, dataset, mode = 'FULL')
            dataset = dataset.is_a?(String) ?  Model::ProjectBlueprint.find_dataset(project, dataset) : dataset
            dataset = dataset.to_hash
            all_datasets = Model::ProjectBlueprint.datasets(project)
            tm = to_manifest(project, mode)
            datasets = all_datasets.zip(tm)
            res = datasets.find do |ds|
            ds.first[:title] == dataset['dataSet']['meta']['title']
        end
        res[1]
        end
    end
end
end


GoodData.logging_on
client = GoodData.connect 'your_user@gooddata.com', 'password'

project = client.projects('project_id')
dataset =project.datasets('/gdc/md/projectid/obj/dataset_id')

res = GoodData::Model::ToManifest.dataset_to_manifest(project.blueprint, dataset)

pp res

这将允许您无误地获取清单。

特别是,当业务客户项目扩大时,这种手动创建项目数据集json清单的方式(不在CloudConnect的LDM modeler之间转换)既不合适也不合适,由于此类客户项目不可避免地要由CloudConnect处理,否则,由于其业务级别、生产力或可维护性不足,此类项目无法发展到如此规模。我认为这个功能不能说是一个业务级别的产品,而是一个技术实验级别的产品。在控制台上记录所谓变量blueprint中包含的项目数据集清单的基于文本的确切内容时,没有任何技术吗,通过控制台上的Ruby automation SDK结合less命令或其他方法调用某些GoodData API方法?我强烈关注服务器数据集架构与本地model.rb清单文件定义的架构之间的一致性。项目数据集json清单文件是否也必须始终描述数据库中已定义的数据集目标项目,或者,仅描述Ruby脚本将上载数据的非常直接的目标数据集,而目标项目中尚未定义这些数据集?我们如何保持项目数据集清单定义与目标项目内实际模式的一致性?在操作指定外部Ruby脚本上载数据的目标数据集时,是否只有单方面的外部数据集模式声明,在引用已定义的项目数据集架构时,外部Ruby脚本不应以兼容的方式从项目外部引用active GoodData项目数据集架构、CloudConnect的LDM modeler和Ruby automation SDK的数据集清单文件,