2 个版本
0.5.2 | 2024 年 6 月 1 日 |
---|---|
0.5.1 | 2023 年 12 月 4 日 |
#606 在 命令行工具
175KB
2K SLoC
LOSH OKH 工具
一个用于处理 OKH 数据文件的命令行工具。其主要功能包括
- 验证和
- 转换
不同格式的 OKH
定义
- LOSH: 一个 Library of Open Source Hardware - 以开放图数据库形式的技术文档。
- OKH: Open Know-How - 一个 OSH 项目元数据标准。
简介
此仓库包含两个软件
okh-tool
fetch-n-conv-v1
它使用 OKH JSON-Schemas 仓库 作为子模块。
okh-tool
可以
- 将清单文件从一个版本的 OKH 标准转换为另一个版本
- 验证不同版本 OKH 标准的清单文件。它通过使用上述提到的 JSON Schema 文件来实现。
fetch-n-conv-v1
脚本将
- 获取公开注册的 OKH v1 清单文件
- 清理它们
- 验证它们
- 将它们转换为 OKH LOSH(也称为“v2”)
- 验证生成的 OKH LOSH 清单文件
用法
转换和验证
okh-tool
是用 Rust 编写的,可以像这样编译
cargo build --release
这将生成位于 target/release/okh-tool
的独立二进制工具。
要运行它,您有以下转换选项
$ okh-tool conv --help
okh-tool-conv 0.1.0
Converts one format into an other (currently only OKH-v1 to OKH-LOSH)
USAGE:
okh-tool conv [OPTIONS] <INPUT> [OUTPUT]
ARGS:
<INPUT> The input file or dir path
<OUTPUT> The output file or dir path
OPTIONS:
-c, --continue If the input path is a directory, continue processing further files, even
after an error
-h, --help Print help information
-o, --overwrite If the outout file alreayd exists, overwrite it, instead of skipping the
conversion
-r, --recursive If the input path is a directory, search for input files recursively
-V, --version Print version information
和这些验证选项
$ okh-tool val --help
okh-tool-val 0.1.0
Validates manifest files for validity using JSON Schema (currently supports OKH-v1 and OKH-LOSH)
USAGE:
okh-tool val [OPTIONS] <INPUT>
ARGS:
<INPUT> The input file or dir path
OPTIONS:
-c, --continue If the input path is a directory, continue processing further
files, even after an error
-h, --help Print help information
-o, --okh-version <okh-version> If the input path is a directory, search for input files
recursively [possible values: v1, losh]
-r, --recursive If the input path is a directory, search for input files
recursively
-V, --version Print version information
获取和转换 OKH v1
一旦您已经准备好了上述描述的 okh-tool
(此脚本需要它),您就可以像以下这样启动整个过程;但请注意,这可能需要大约 3 小时(99% 的时间用于下载)。当您中断过程并重新启动时,已下载的文件将不会重新下载。
./fetch-n-conv-v1
资金
此项目由
-
欧洲联盟的“地平线2020”研究与创新计划,根据资助协议编号869984,在“OPEN!NEXT项目”的背景下,从2021年11月(项目启动)至2022年7月。
-
欧洲区域发展基金(ERDF)在“INTERFACER项目”的背景下,从2022年8月至2023年3月。
依赖关系
~40–58MB
~1M SLoC