@cubejs-infra/后安装
在您 npm 软件包的安装后步骤下下载文件的最简单方式 .
用法实例
- 首先需要定义
resources对应部分package.json文档.
{
"resources": {
"files": [{
"host": "https://github.com/cube-js/cube/releases/download/v${version}/",
"path": "native-${platform}-${arch}-${libc}-${libpython_or_fallback}.tar.gz",
}]
}
}
额外
正在下载普通文件( 不提取)
默认情况下,下载的文件会被取入包目录. 文件是否为
从它的 mime 类型自动检测归档( 从 url 通过 url 解析)
mime 类型: application/gzip, (中文(简体) ),
application/x-tar 财务报告和审定财务报表 application/zip (单位:千美元).tar.gz, (中文(简体) ), .tgz, (中文(简体) ), .tar, (中文(简体) ), .zip已经
提取,其他任何东西 - a .jar页:1 .node,一个赤裸的二进制 - 被下载到现在.
对于未取出的文件, 您必须指定 dst - 相对于
软件包目录。 缺少目录被创建, 逃避软件包目录为
不允许.
{
"resources": {
"files": [{
"host": "https://repo1.maven.org/maven2/",
"path": "org/slf4j/slf4j-api/${slf4j_version}/slf4j-api-${slf4j_version}.jar",
"dst": "lib/slf4j.jar"
}]
}
}
dst 支持与 host 打开 path。 。 。 .
探测器可以被覆盖 extract数字 :
{
"host": "https://example.com/",
"path": "bundle.tar.gz",
"extract": false,
"dst": "vendor/bundle.tar.gz"
}
档案 dst 忽略(它们总是被取入软件包目录).
制约因素
变量和文件支持约束,可以定义它:
"constraints": {
"platform": [
"linux"
],
"arch": [
"x64"
]
}
支持类型 :
- 平台 :
win32编号 :darwin编号 :linux编号 :aix编号 :android编号 :freebsd编号 :openbsd编号 :cygwin - 拱门 :
x64编号 :arm64 - 平台架构 :
linux-x64等 (中文(简体) ).
变量
您可以在 path 打开 host。 。 。 .
{
"vars": {
"libpython_or_fallback": {
"default": "fallback",
"value": [
"libpython",
[
"3.11",
"3.10",
"3.9"
]
],
"constraints": {
"platform": [
"linux"
],
"arch": [
"x64"
]
}
},
"feature_or_default": {
"default": "default",
"value": [
"env",
"YOUR_ENV_NAME"
]
}
},
}
接下来您可以在 URL 中通过 /file/${libpython_or_fallback}.tar.gz
自由主义
阿帕奇 - 2.0