liberusoftware/boilerplate-scripts

Release, repository splitting, and Packagist publishing automation for Liberu Composer packages.

Maintainers

Package info

github.com/liberusoftware/boilerplate-scripts

Language:Shell

Type:liberusoftware-scripts

pkg:composer/liberusoftware/boilerplate-scripts

Transparency log

Statistics

Installs: 4

Dependents: 1

Suggesters: 0

Stars: 0

Open Issues: 0

1.2.0 2026-08-07 09:23 UTC

This package is auto-updated.

Last update: 2026-08-07 09:24:45 UTC


README

Generic release and maintenance automation for Composer-based meta repositories whose modules, themes, and shared tooling live in independent GitHub repositories.

composer require --dev liberusoftware/boilerplate-scripts

Copy .liberu-meta.json from a meta repository and customize its organization, genre, repository, component paths, prefixes, and additional Composer packages.

  • setup.sh performs a repeatable local or production install without destructive migrations.
  • update.sh updates dependencies and validates the project; --release 1.2.3 commits, tags, pushes, and creates a GitHub release after successful checks.
  • submit-packagist.php creates missing Packagist packages and refreshes existing package metadata.
  • fleet fans a command across the component repositories once they are the source of truth — status, clone, run, commit, and a separate tag that only ever acts on an explicit --only list. It replaced publish-components, which rsynced a monorepo into its component repositories — the opposite direction, and meaningless once those repositories are the source.
  • set-coverage-thresholds writes each measured figure into that package's tests.yml, ratcheting only upward — a package that has lost coverage keeps its threshold and is reported.
  • measure-coverage resolves each package from nothing and runs its own suite under pcov, writing storage/app/coverage.tsv — the evidence a repository sets its coverage threshold from.

All commands are non-interactive and fail on errors. GitHub operations require an authenticated gh CLI. Packagist operations read PACKAGIST_USERNAME and PACKAGIST_API_TOKEN from the environment; never commit either credential.