TYPO3 extension academic_programs
Installation
Install with your flavour:
- TER
- Extension Manager
- composer
We prefer composer installation:
composer req fgtclb/academic-programs
Create a release (maintainers only)
Prerequisites:
- git binary
- ssh key allowed to push new branches to the repository
- GitHub command line tool
ghinstalled and configured with user having permission to create pull requests.
Prepare release locally
Set
RELEASE_BRANCHto branch release should happen, for example: 'main'. SetRELEASE_VERSIONto release version working on, for example: '0.1.4'.
echo '>> Prepare release pull-request' ; \
RELEASE_BRANCH='main' ; \
RELEASE_VERSION='0.1.4' ; \
git checkout main && \
git fetch --all && \
git pull --rebase && \
git checkout ${RELEASE_BRANCH} && \
git pull --rebase && \
git checkout -b prepare-release-${RELEASE_VERSION} && \
composer require --dev "typo3/tailor" && \
./.Build/bin/tailor set-version ${RELEASE_VERSION} && \
composer remove --dev "typo3/tailor" && \
git add . && \
git commit -m "[RELEASE] ${RELEASE_VERSION}" && \
git push --set-upstream origin prepare-release-${RELEASE_VERSION} && \
gh pr create --fill-verbose --base ${RELEASE_BRANCH} --title "[RELEASE] ${RELEASE_VERSION}" && \
git checkout main && \
git branch -D prepare-release-${RELEASE_VERSION}
Check pull-request and the pipeline run.
Merge approved pull-request and push version tag
Set
RELEASE_PR_NUMBERwith the pull-request number of the preparation pull-request. SetRELEASE_BRANCHto branch release should happen, for example: 'main' (same as in previous step). SetRELEASE_VERSIONto release version working on, for example:0.1.4(same as in previous step).
RELEASE_BRANCH='main' ; \
RELEASE_VERSION='0.1.4' ; \
RELEASE_PR_NUMBER='123' ; \
git checkout main && \
git fetch --all && \
git pull --rebase && \
gh pr checkout ${RELEASE_PR_NUMBER} && \
gh pr merge -rd ${RELEASE_PR_NUMBER} && \
git tag ${RELEASE_VERSION} && \
git push --tags
This triggers the on push tags workflow (publish.yml) which creates the upload package, creates the GitHub release and also uploads the release to the TYPO3 Extension Repository.