This project rebuilds matomo releases into git tags so that matomo can more easily be installed via composer.
We recommend using this alongside mpl/composer-plugin which will
manage placing matomo into /mpl-matomo
.
- Determine the available versions via matomo-org/matomo tags
- Skip any versions that we already have a tag for in
/build
- Download the matching version release zip from https://builds.matomo.org
- Download the matching
composer.json
from the github tag - For versions that support it:
- Download the matching
.asc
signature file from https://builds.matomo.org - Verify the release zip signature using
gpg
- Download the matching
- Unzip the zip into a unique directory in
/temp
- Apply our changes to the unzipped directory
- Delete the
unzip/vendor
directory - Delete the
unzip/composer.lock
file if it exists - Reinstate the
unzip/composer.json
file using what we downloaded from github - Prepend
/overlay/README.md
to theunzip/README.md
file - Modify
unzip/composer.json
to have the propername
and type, and toreplace
matomo/matomo
- Modify the
unzip/config/manifest.inc.php
to remove and update files that were removed or modified in previous steps
- Delete the
- Tag the new release in the
/build
directory:- Create a new orphan branch using
git checkout --orphan $TAG
- Delete any files that exist other than
.git
- Copy in
unzip/*
to/build
- Add and commit all files
- Create a new tag with
git tag $TAG
- Create a new orphan branch using
Important
This project generates unique commits per tag. If you intend to regenerate tags, you must rename existing branches to
allow existing composer.lock
files will continue to work.
To pull the keys run ./console keys
git clone git@my-git-repo:some/path build
./console build
cd build
git push origin --all
git push origin --tags