@contentful/app-scripts
该项目使得在下列地点开展一些经常性业务更为容易: 内容的 App 框架。 。 。 .
* 安装
当地:
npm i @contentful/app-scripts
全球:
npm i -g @contentful/app-scripts
使用量
*
安装时
$ contentful-app-scripts create-app-definition
否则
$ npx @contentful/app-scripts create-app-definition
程序化
const { createAppDefinition } = require('@contentful/app-scripts');
const { myCustomLogic } = require('./my-custom-logic')(async function main() {
myCustomLogic();
await createAppDefinition.interactive();
})();
• API
从此模块导出脚本将全部为以下形状
interface Script<Result, Options> {
// query the user or local cache for required information
interactive: () => Result;
// run by automation (`--ci` flag), they would need all the information upfront
nonInteractive: (...options: Options) => Result;
}
: 警告:请注意
同一脚本的互动和非互动版本都是为了返回相同的结果.
生成函数
允许从我们创建新函数模板 函数示例自动更新 contentful-app-manifest.json 并合并脚本/从 package.json 输入现有项目.
互动模式 :
在交互模式下,CLI会询问所有所需的选项.
示例
$ npx --no-install @contentful/app-scripts generate-function
非交互模式 :
当通过 --ci 参数,当所需的变量未设置为参数时,命令会失败.
示例
$ npx --no-install @contentful/app-scripts generate-function --ci \ --name <name> \ --example <example> \ --language <javascript/typescript> \
选项 :
| 参数 | 说明 | 默认值 |
|---|---|---|
--name | 您函数的名称 . | |
--example | 我们所列举的例子名称 函数示例 | |
--language | Javascript或打字的选择 |
创建 App 定义
允许创建新的 附录 提供了内容管理 这里) (中文(简体) ).
它只在交互模式下运行.
示例
$ npx --no-install @contentful/app-scripts create-app-definition
上传捆绑到 App 定义
允许您上传构建目录并创建绑定到一个 附录。 。 。 . 它以交互或非交互模式运行.
说明: 命令会自动激活捆绑. 为了跳过激活,你可以通过 --skip-activation 在交互和非交互模式下,然后手动进行参数 激活 这个.
互动模式 :
在交互模式下,CLI会询问所有所需的选项.
示例
$ npx --no-install @contentful/app-scripts upload
非交互模式 :
当通过 --ci 参数,当所需的变量未设置为参数时,命令会失败.
示例
$ npx --no-install @contentful/app-scripts upload --ci \ --bundle-dir ./built \ --organization-id some-org-id \ --definition-id some-app-def-id \ --token $MY_CONTENTFUL_PAT
选项 :
| 参数 | 说明 | 默认值 |
|---|---|---|
--bundle-dir | 您的构建文件夹目录( 例如 : ./build(中文(简体) ) | |
--organization-id | 你组织的身份 | |
--definition-id | 要添加捆绑的应用程序的ID | |
--token | 一个个人 访问令牌 | |
--skip-activation | (可选)布尔旗以跳过自动激活 AppBundle | false |
--comment | (可选)与创建的 AppBundle。可用于区分捆绑. | |
--host | (可选)内容 CMA 端点使用 | api.contentful.com |
说明: 您也可以以交互模式通过所有参数来跳过被请求的参数 .
激活 AppBundle 程序
允许您激活 AppBundle 应用程序定义 . 当启动时,该应用程序将服务于新启用的AppBundle.
互动模式 :
在交互模式下,CLI会询问所有所需的选项.
示例
$ npx --no-install @contentful/app-scripts activate
非交互模式 :
当通过 --ci 参数添加所有变量作为参数.
示例
$ npx --no-install @contentful/app-scripts activate --ci \ --bundle-id some-bundle-id \ --organization-id some-org-id \ --definition-id some-app-def-id \ --token $MY_CONTENTFUL_PAT
选项 :
| 参数 | 说明 | 默认值 |
|---|---|---|
--bundle-id | 您想要激活的 AppBundle 的ID | |
--organization-id | 你组织的身份 | |
--definition-id | 要添加捆绑的应用程序的ID | |
--token | 一个个人 访问令牌 | |
--host | (可选)内容 CMA 端点使用 | api.contentful.com |
说明: 您也可以以交互模式通过所有参数来跳过被请求的参数 .
打开应用程序定义的设置
它打开了内容丰富的网络应用程序中的设置,以便您可以使用UI来更改一个软件的设置 附录。 。 。 .
示例
$ npx --no-install @contentful/app-scripts open-settings --definition-id some-definition-id
如果环境变量(CONTENTFUL_APP_DEF_ID) 已经设置.
示例
$ CONTENTFUL_APP_DEF_ID=some-definition-id npx --no-install @contentful/app-scripts open-settings
选项 :
| 参数 | 说明 | 默认值 |
|---|---|---|
--definition-id | 要添加捆绑的应用程序的ID | |
--host | (可选)内容 CMA 端点使用 | api.contentful.com |
说明: 您也可以以交互模式通过所有参数来跳过被请求的参数 .
清理捆绑
允许您清理以前的捆绑列表 。 它获取列表并删除所有捆绑, 除了50个最新的.
您可以调整您想要保存的金额 --keep <amount> 到论证,如果不通过,默认为50.
互动模式 :
在交互模式下,CLI会询问所有所需的选项.
示例
$ npx --no-install @contentful/app-scripts bundle-cleanup
如果环境变量(CONTENTFUL_APP_DEF_ID)和 (中文(简体) )CONTENTFUL_ORG_ID) 已经设置.
非交互模式 :
当通过 --ci 参数作为参数需要添加所有变量
示例
$ npx --no-install @contentful/app-scripts bundle-cleanup --ci \ --organization-id some-org-id \ --definition-id some-app-def-id \ --token $MY_CONTENTFUL_PAT --keep 30
选项 :
| 参数 | 说明 | 默认值 |
|---|---|---|
--organization-id | 你组织的身份 | |
--definition-id | 要添加捆绑的应用程序的ID | |
--token | 一个个人 访问令牌 | |
--keep | (可选) 要保存的捆绑量 | 50 |
--host | (可选)内容 CMA 端点使用 | api.contentful.com |
说明: 您也可以以交互模式通过所有参数来跳过被请求的参数 .
将定义安装到特定空间/ 环境
它打开一个对话框来选择与给定的应用程序相关的空间和环境 附录 应安装.
示例
$ npx --no-install @contentful/app-scripts install --definition-id some-definition-id
如果环境变量(CONTENTFUL_APP_DEF_ID) 已经设置.
示例
$ CONTENTFUL_APP_DEF_ID=some-definition-id npx --no-install @contentful/app-scripts install
默认情况下,脚本会将应用程序安装到默认主机URL: app.contentful.com。如果想要将应用程序安装到不同的主机 URL,则可以设置参数 --host 转到想要的主机 URL.
示例
$ npx --no-install @contentful/app-scripts install --definition-id some-definition-id --host api.eu.contentful.com
选项 :
| 参数 | 说明 | 默认值 |
|---|---|---|
--definition-id | 要添加捆绑的应用程序的ID | |
--host | (可选)内容 CMA 端点使用 | api.contentful.com |
说明: 您也可以以交互模式通过所有参数来跳过被请求的参数 .
跟踪
我们收集了我们国家综合发展工具的个人化使用数据,以便改进经验。 如果您不想收集您的数据, 您可以通过提供 env 变量选择退出 DISABLE_ANALYTICS 设置为任意值 :
示例
DISABLE_ANALYTICS=true npx create-contentful-app
构建内容函数源
将 Contentful 函数的源代码构建为 App Framework 兼容捆绑 .
互动模式 :
在交互模式下,CLI会提示自定义配置,但不需要任何选项.
示例
$ npx --no-install @contentful/app-scripts build-functions
非交互模式 :
当通过 --ci 参数作为参数需要添加所有变量
示例
$ npx --no-install @contentful/app-scripts build-functions --ci \ --manifest-file path/to/contentful/app/manifest.json \ --esbuild-config path/to/custom/esbuild/config.js \ --watch
选项 :
选项 : -e, --sbuilt-config 自定义 esbuilt 配置文件路径 -m, -- mifest-file 内容应用程序显示文件路径 -w, -- 监视变化 -h, --help 显示命令的帮助
更新 App 动作
使用 Contentful App Manific 文件的配置创建或更新 App 的动作 。 已创建的资源将被同步回您的列表文件 .
互动模式 :
在交互模式下,CLI会询问所有所需的选项.
示例
$ npx --no-install @contentful/app-scripts upsert-actions
非交互模式 :
当通过 --ci 参数添加所有变量作为参数.
示例
$ npx --no-install @contentful/app-scripts upsert-actions --ci \ --manifest-file path/to/contentful-app-manifest.json \ --organization-id some-org-id \ --definition-id some-app-def-id \ --token $MY_CONTENTFUL_PAT
选项 :
| 参数 | 说明 | 默认值 |
|---|---|---|
--manifest-file | Contentful app 显示文件的路径 | contentful-app-manifest.json |
--organization-id | 应用程序定义的组织身份 | |
--definition-id | 添加动作的应用程序的标识 | |
--token | 一个个人 访问令牌 | |
--host | (可选)内容 CMA 端点使用 | api.contentful.com |
说明: 您也可以以交互模式通过所有参数来跳过被请求的参数 .