如何配置和使用Flex私有配方存储库
编辑本页如何配置和使用Flex私有配方存储库
自1.16版本的发布的ob娱乐下载symfony / flex
,您可以构建自己的私有Symfony Flex配方存储库,并无缝地ob娱乐下载将它们集成到作曲家
包的安装和维护过程。
当您拥有必须执行自己的安装任务的私有包或包时,这特别有用。要做到这一点,你需要完成以下几个步骤:
- 创建一个私有的GitHub存储库;
- 创建您的私人食谱;
- 创建食谱索引;
- 将您的食谱存储在私有存储库中;
- 格兰特
作曲家
对私有存储库的访问; - 配置项目的
composer.json
文件;而且 - 在项目中安装食谱。
创建一个私有GitHub存储库
登录你的GitHub.com账户,点击右上角的账户图标,然后选择你的仓库.然后按新按钮,填写库名称,选择私人单选按钮,然后单击创建存储库按钮。
创建你的私人食谱
一个ob娱乐下载symfony / flex
recipe是一个JSON文件,具有以下结构:
1 2 3 4 5 6 7 8 9
{“体现”: {“acme /包名称”: {“清单”: {},“ref”:“7405 f3af1312d1f9121afed4dddef636c6c7ff00”}}}
如果你的包是一个私有的Symfony包,你将在配方中有以下ob娱乐下载内容:
12 3 4 5 6 7 8 9 10 11 12 13 14
{“体现”: {“acme / private-bundle”: {“清单”: {“包”: {“Acme \ \ PrivateBundle \ \ AcmePrivateBundle”:【“所有”]}},“ref”:“7405 f3af1312d1f9121afed4dddef636c6c7ff00”}}}
取代acme
而且private-bundle
使用您自己的私有包详细信息。的“ref”
Entry是一个随机的40个字符的字符串,用于作曲家
来确定你的食谱是否被修改过。每次更改食谱时,您还需要生成一个新的“ref”
价值。
提示
使用下面的PHP脚本生成一个随机的“ref”
值:
1
回声bin2hex (random_bytes (20.));
的“所有”
条目告诉ob娱乐下载symfony / flex
在项目的bundles.php
所有环境的文件。加载你的包只是为了dev
环境,替换“所有”
与“开发”
.
食谱JSON文件的名称必须符合以下约定,其中1.0
您的bundle的版本号(replace ?acme
而且private-bundle
使用您自己的私有包或包详细信息):
acme.private-bundle.1.0.json
你可能还想要ob娱乐下载symfony / flex
为项目中的包或包创建配置文件/ config /包
目录中。要做到这一点,修改配方JSON文件如下:
12 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
{“体现”: {“acme / private-bundle”: {“清单”: {“包”: {“Acme \ \ PrivateBundle \ \ AcmePrivateBundle”:【“所有”)},“copy-from-recipe”: {“配置/”:“% CONFIG_DIR %”}},“文件”: {“配置/包/ acme_private.yaml”: {“内容”:【”acme_private:“," Encode: true",""),“可执行”:假}},“ref”:“7405 f3af1312d1f9121afed4dddef636c6c7ff00”}}}
有关菜谱文件中可包含内容的更多示例,请浏览ob娱乐下载Symfony配方文件.
创建食谱索引
下一步是创建一个index.json
文件,其中将包含所有私有食谱的条目和其他一般配置信息。
的index.json
文件格式如下:
12 3 4 5 6 7 8 9 10 11 12 13 14
{“食谱”: {“acme / private-bundle”:【“1.0”)},“分支”:“主”,“is_contrib”:真正的,“_links”: {“库”:“github.com/your-github-account-name/your-recipes-repository”,“origin_template”:“{包}:{version} @github.com/your-github-account-name/your-recipes-repository:大师”,“recipe_template”:“https://api.github.com/repos/your-github-account-name/your-recipes-repository/contents/ {package_dotted} {version} . json。”}}
中创建一个条目“食谱”
为你的每一个捆绑食谱。取代your-github-account-name
而且your-recipes-repository
用你自己的细节。
在私有存储库中存储您的食谱
上传食谱. json
文件和index.json
文件到你的私有GitHub存储库的根目录。
格兰特作曲家
访问私有存储库
在您的GitHub帐户中,单击右上角的帐户图标,选择设置
而且开发人员设置
.然后选择个人访问令牌
.
生成一个新的访问令牌完全控制私有存储库
特权。复制access token值,切换到本地计算机的终端,执行如下命令:
1
$Composer config——global——auth github-oauth.github.com [token]
取代(令牌)
与您的GitHub个人访问令牌的价值。
配置项目的composer.json
文件
将以下内容添加到项目中composer.json
文件:
1 2 3 4 5 6 7 8 9 10
{“额外的”: {“ob娱乐下载symfony”: {“端点”:【“https://api.github.com/repos/your-github-account-name/your-recipes-repository/contents/index.json”,“flex: / /违约”]}}}
取代your-github-account-name
而且your-recipes-repository
用你自己的细节。
提示
的extra.ob娱乐下载symfony
键很可能已经存在于您的composer.json
.在这种情况下,添加“端点”
现有的钥匙extra.ob娱乐下载symfony
条目。
提示
的端点
URL必须指出https://api.github.com/repos
而且不来https://www.github.com
.
在项目中安装食谱
如果您的私有包/包还没有安装在您的项目中,运行以下命令:
1
$作曲家更新
如果私有bundle /packages已经安装,而您只想安装新的私有recipe,请运行以下命令:
1
$作曲家的食谱