Skip to content
download-cloud

GitHub Action

Private Composer Registry

v1.1 Latest version

Private Composer Registry

download-cloud

Private Composer Registry

Build a private composer registry (packagist) using Satis

Installation

Copy and paste the following snippet into your .yml file.

              

- name: Private Composer Registry

uses: and-that/private-composer-registry-action@v1.1

Learn more about this action in and-that/private-composer-registry-action

Choose a version

Private Composer Registry Action

Used for building your own composer repository using composer/satis.

Inputs

Input Description Required
token GitHub token that will be used for composer when invoked by satis.
Currently auth is static for "github-oauth"
Yes
satis_config Path to your satis configuration file No.
Default = ./satis.json
package_name The name of the package to add and/or update. No.

Outputs

None

Usage

Note: Your satis.json must contain "output-dir": ""

Example .github/workflow/composer-build.yaml

# eg. Can be used to host your internal composer package registry on github pages.
name: Composer repository

on:
  - push

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - name: Private Composer Registry
        uses: and-that/private-composer-registry-action@v1.1
        with:
          token: ${{ GITHUB_TOKEN }} # App/OAuth token, PAT
      - env:
          GIT_EMAIL: bot@github.com
          GIT_NAME: cool-bot
        run: |
          git config user.name $GIT_NAME
          git config user.email $GIT_EMAIL
          git add docs/
          git commit -m "Re-built repository assets"
          git push

Example satis.json

{
  "name": "my-cool/repository",
  "homepage": "https://where-are-you/",
  "repositories": [
    {
      "packagist.org": false
    },
    {
      "type": "vcs",
      "url": "https://github.com/my-cool-org/the-repository"
    }
  ],
  "require-all": true,
  "output-dir": "docs"
}