package_metadata_tasks.py 文件源码

python
阅读 21 收藏 0 点赞 0 评论 0

项目:artman 作者: googleapis 项目源码 文件源码
def _create_config(self, api_name, api_version, api_full_name, output_dir,
                       package_dependencies_yaml, package_defaults_yaml, proto_deps,
                       proto_test_deps, language, local_paths, src_proto_path, package_type,
                       gapic_api_yaml, release_level=None,packaging='single-artifact',
                       generated_package_version=None):
        googleapis_dir = local_paths['googleapis']
        googleapis_path = os.path.commonprefix(
            [os.path.relpath(p, googleapis_dir) for p in src_proto_path])

        with open(package_dependencies_yaml) as dep_file:
            package_dependencies = yaml.load(dep_file, Loader=yaml.Loader)
        with open(package_defaults_yaml) as dep_file:
            package_defaults = yaml.load(dep_file, Loader=yaml.Loader)

        if release_level is not None:
            package_defaults['release_level'][language] = (
                release_level)
        # Apply package version and development status overrides if specified
        # in the artman config
        if generated_package_version is not None:
            release_version_type = package_defaults['release_level'][language]
            if release_version_type != 'ga':
                package_defaults['generated_package_version'][language] = (
                    generated_package_version)
            else:
                package_defaults['generated_ga_package_version'][language] = (
                    generated_package_version)

        gapic_config_name = ''
        if len(gapic_api_yaml) > 0:
            gapic_config_name = os.path.basename(gapic_api_yaml[0])

        dependency_type = 'local'
        if packaging == 'single-artifact':
            dependency_type = 'release'

        config = {
            'short_name': api_name,
            'major_version': api_version,
            'proto_path': googleapis_path,
            'package_name': {
                'default': api_full_name,
            },
            'proto_deps': proto_deps,
            'package_type': package_type,
            'dependency_type': dependency_type,
            'gapic_config_name': gapic_config_name,
        }

        if proto_test_deps:
            config['proto_test_deps'] = proto_test_deps

        config.update(package_dependencies)
        config.update(package_defaults)

        return config

    # Separated so that this can be mocked for testing
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号