This extension provides a basic structure for academic jobs.
This extension is currently in beta state - please notice that there might be changes to the structure
composer require fgtclb/academic-jobs
This extension was created the FGTCLB GmbH.
Find more TYPO3 extensions we have developed.
Prerequisites:
- git binary
- ssh key allowed to push new branches to the repository
- GitHub command line tool
gh
installed and configured with user having permission to create pull requests.
Prepare release locally
Set
RELEASE_BRANCH
to branch release should happen, for example: 'main'. SetRELEASE_VERSION
to 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 "[TASK] Prepare release ${RELEASE_VERSION}" && \
git push --set-upstream origin prepare-release-${RELEASE_VERSION} && \
gh pr create --fill-verbose --base ${RELEASE_BRANCH} --title "[TASK] Prepare release for ${RELEASE_VERSION} on ${RELEASE_BRANCH}" && \
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_NUMBER
with the pull-request number of the preparation pull-request. SetRELEASE_BRANCH
to branch release should happen, for example: 'main' (same as in previous step). SetRELEASE_VERSION
to 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.