piotrpress/github-composer
最新稳定版本:v2.0.0
Composer 安装命令:
composer require piotrpress/github-composer
包简介
This Composer plugin adds support for using GitHub Workflow Artifacts as Composer Repositories.
关键字:
README 文档
README
This Composer plugin adds support for using GitHub Workflow Artifacts as Composer Repositories.
It also provides GitHub Workflows to build and update the Composer repository based on packages from GitHub repositories.
Example composer.json
{
"repositories": [
{
"type": "composer",
"url": "github.artifacts://PiotrPress/packages"
}
]
}
Installation
- Add the plugin as a global composer requirement:
$ composer global require piotrpress/github-composer
- Allow the plugin execution:
$ composer config -g allow-plugins.piotrpress/github-composer true
Authentication
Add GitHub API authentication credentials:
$ composer config --global http-basic.github.com x-oauth-basic <token>
NOTE: using --global option is recommended to keep credentials outside of project's files.
Arguments:
token- the token must have permissions to get repository content and list artifacts for a repository
Workflows
This plugin also comes with two Reusable Workflows designed to build and update the packages.json artifact based on packages from GitHub repositories belonging to the provided owner.
Build
Add a .github/workflows/build.yml file with the content below to the GitHub repository where the artifact containing the list of packages should be kept.
name: Build packages.json on: workflow_dispatch: repository_dispatch: types: [ Update packages.json ] jobs: build: uses: piotrpress/github-composer/.github/workflows/build.yml@master secrets: token: ${{ secrets.token }} with: owner: ${{ vars.owner }}
NOTE: by using the workflow_dispatch event, this workflow can also be triggered manually.
Workflow secrets and variables:
secrets.token- required:false, the token must have permissions to get repository contentvars.owner- required:false, default:github.repository_owner
Update
Add a .github/workflows/update.yml file with the content below to the GitHub repository, which is configured to trigger an update to the package list after every push.
name: Update packages.json on: workflow_dispatch: push: jobs: update: uses: piotrpress/github-composer/.github/workflows/update.yml@master secrets: token: ${{ secrets.token }} with: owner: ${{ vars.owner }} repository: ${{ vars.repository }}
NOTE: by using the workflow_dispatch event, this workflow can also be triggered manually.
Workflow secrets and variables:
secrets.token- required:true, the token must have permissions to create a repository dispatch eventvars.owner- required:false, default:github.repository_ownervars.repository- required:true
Requirements
- PHP >=
7.4version. - Composer ^
2.0version.
License
统计信息
- 总下载量: 123
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2024-02-20