itzbund / gsb-sitepackage
GSB 11 site package - All you need to define your GSB-11-based web project.
Requires
- itzbund/itzbund-mandatory: 1.6.0
Requires (Dev)
- codeception/codeception: 5.1.2
- codeception/module-asserts: 3.0.0
- codeception/module-db: 3.1.4
- doctrine/dbal: 3.9.3
- ergebnis/composer-normalize: 2.45.0
- friendsofphp/php-cs-fixer: 3.65.0
- helmich/typo3-typoscript-lint: 3.2.1
- itzbund/captainhook-hooks: 1.0.1
- michielroos/typo3scan: 1.7.7
- mockery/mockery: 1.6.12
- php-coveralls/php-coveralls: 2.7.0
- phpmd/phpmd: 2.15.0
- phpstan/extension-installer: 1.4.3
- phpstan/phpstan: 1.12.13
- phpstan/phpstan-phpunit: 1.4.2
- phpstan/phpstan-strict-rules: 1.6.1
- phpunit/phpunit: 10.5.40
- ramsey/conventional-commits: 1.5.1
- saschaegerer/phpstan-typo3: 1.10.2
- sbuerk/typo3-cmscomposerinstallers-testingframework-bridge: 0.1.3
- seld/jsonlint: 1.11.0
- squizlabs/php_codesniffer: 3.11.2
- ssch/typo3-rector: 2.12.2
- symfony/yaml: 7.2.0
- typo3/coding-standards: 0.8.0
- typo3/testing-framework: 8.2.7
- dev-main
- v1.8.0-rc.11
- v1.8.0-rc.10
- v1.8.0-rc.9
- v1.8.0-rc.8
- v1.8.0-rc.7
- v1.8.0-rc.6
- v1.8.0-rc.5
- v1.8.0-rc.4
- v1.8.0-rc.3
- v1.8.0-rc.2
- v1.8.0-rc.1
- v1.7.28
- v1.7.27
- v1.7.26
- v1.7.25
- v1.7.25-rc.3
- v1.7.25-rc.2
- v1.7.25-rc.1
- v1.7.24
- v1.7.24-rc.2
- v1.7.24-rc.1
- v1.7.23
- v1.7.23-rc.2
- v1.7.23-rc.1
- v1.7.22
- v1.7.22-rc.3
- v1.7.22-rc.2
- v1.7.22-rc.1
- v1.7.21
- v1.7.21-rc.2
- v1.7.21-rc.1
- v1.7.20
- v1.7.20-rc.5
- v1.7.20-rc.4
- v1.7.20-rc.3
- v1.7.20-rc.2
- v1.7.20-rc.1
- v1.7.19
- v1.7.19-rc.1
- v1.7.18
- v1.7.18-rc.2
- v1.7.18-rc.1
- v1.7.17
- v1.7.17-rc.4
- v1.7.17-rc.3
- v1.7.17-rc.2
- v1.7.17-rc.1
- v1.7.16
- v1.7.16-rc.2
- v1.7.16-rc.1
- v1.7.15
- v1.7.15-rc.4
- v1.7.15-rc.3
- v1.7.15-rc.2
- v1.7.15-rc.1
- v1.7.14
- v1.7.14-rc.4
- v1.7.14-rc.3
- v1.7.14-rc.2
- v1.7.14-rc.1
- v1.7.13
- v1.7.13-rc.2
- v1.7.13-rc.1
- v1.7.12
- v1.7.12-rc.6
- v1.7.12-rc.5
- v1.7.12-rc.4
- v1.7.12-rc.3
- v1.7.12-rc.2
- v1.7.12-rc.1
- v1.7.11
- v1.7.11-rc.2
- v1.7.11-rc.1
- v1.7.10
- v1.7.10-rc.2
- v1.7.10-rc.1
- v1.7.9
- v1.7.9-rc.4
- v1.7.9-rc.3
- v1.7.9-rc.2
- v1.7.9-rc.1
- v1.7.8
- v1.7.8-rc.4
- v1.7.8-rc.3
- v1.7.8-rc.2
- v1.7.8-rc.1
- v1.7.7
- v1.7.7-rc.3
- v1.7.7-rc.2
- v1.7.7-rc.1
- v1.7.6
- v1.7.6-rc.2
- v1.7.6-rc.1
- v1.7.5
- v1.7.5-rc.2
- v1.7.5-rc.1
- v1.7.4
- v1.7.4-rc.5
- v1.7.4-rc.4
- v1.7.4-rc.3
- v1.7.4-rc.2
- v1.7.4-rc.1
- v1.7.3
- v1.7.3-rc.2
- v1.7.3-rc.1
- v1.7.2
- v1.7.2-rc.2
- v1.7.2-rc.1
- v1.7.1
- v1.7.1-rc.2
- v1.7.1-rc.1
- v1.7.0
- v1.7.0-rc.4
- v1.7.0-rc.3
- v1.7.0-rc.2
- v1.7.0-rc.1
- v1.6.9
- v1.6.9-rc.2
- v1.6.9-rc.1
- v1.6.8
- v1.6.8-rc.6
- v1.6.8-rc.5
- v1.6.8-rc.4
- v1.6.8-rc.3
- v1.6.8-rc.2
- v1.6.8-rc.1
- v1.6.7
- v1.6.7-rc.5
- v1.6.7-rc.4
- v1.6.7-rc.3
- v1.6.7-rc.2
- v1.6.7-rc.1
- v1.6.6
- v1.6.6-rc.5
- v1.6.6-rc.4
- v1.6.6-rc.3
- v1.6.6-rc.2
- v1.6.6-rc.1
- v1.6.5
- v1.6.5-rc.1
- v1.6.4
- v1.6.4-rc.2
- v1.6.4-rc.1
- v1.6.3
- v1.6.3-rc.3
- v1.6.3-rc.2
- v1.6.3-rc.1
- v1.6.2
- v1.6.2-rc.6
- v1.6.2-rc.5
- v1.6.2-rc.4
- v1.6.2-rc.3
- v1.6.2-rc.2
- v1.6.2-rc.1
- v1.6.1
- v1.6.1-rc.11
- v1.6.1-rc.10
- v1.6.1-rc.9
- v1.6.1-rc.8
- v1.6.1-rc.7
- v1.6.1-rc.6
- v1.6.1-rc.5
- v1.6.1-rc.4
- v1.6.1-rc.3
- v1.6.1-rc.2
- v1.6.1-rc.1
- v1.6.0
- v1.6.0-rc.12
- v1.6.0-rc.11
- v1.6.0-rc.10
- v1.6.0-rc.9
- v1.6.0-rc.8
- v1.6.0-rc.7
- v1.6.0-rc.6
- v1.6.0-rc.5
- v1.6.0-rc.4
- v1.6.0-rc.3
- v1.6.0-rc.2
- v1.6.0-rc.1
- v1.5.1
- v1.5.1-rc.4
- v1.5.1-rc.3
- v1.5.1-rc.2
- v1.5.1-rc.1
- v1.5.0
- v1.5.0-rc.4
- v1.5.0-rc.3
- v1.5.0-rc.2
- v1.5.0-rc.1
- v1.4.2-rc.1
- v1.4.1
- v1.4.1-rc.14
- v1.4.1-rc.13
- v1.4.1-rc.12
- v1.4.1-rc.11
- v1.4.1-rc.10
- v1.4.1-rc.9
- v1.4.1-rc.8
- v1.4.1-rc.7
- v1.4.1-rc.6
- v1.4.1-rc.5
- v1.4.1-rc.4
- v1.4.1-rc.3
- v1.4.1-rc.2
- v1.4.1-rc.1
- v1.4.0
- v1.4.0-rc.11
- v1.4.0-rc.10
- v1.4.0-rc.9
- v1.4.0-rc.8
- v1.4.0-rc.7
- v1.4.0-rc.6
- v1.4.0-rc.5
- v1.4.0-rc.4
- v1.4.0-rc.3
- v1.4.0-rc.2
- v1.4.0-rc.1
- v1.3.0
- v1.2.0
- v1.2.0-rc.1
- v1.1.1-rc.1
- v1.1.0
- dev-release
This package is auto-updated.
Last update: 2024-12-22 17:09:43 UTC
README
<img src="https://www.itzbund.de/SiteGlobals/Frontend/Images/logo.svg?__blob=normal&v=18" alt="Logo" width="300">
Jumpstart your GSB11 powered tenant development.
GSB11 Sitepackage Kickstarter
The GSB11 Sitepackage Kickstarter will help you to get started with GSB11 tenant development. After completing the steps below, you will have a local development environment with sample content up and running. You will be able to commit your tenant configuration and development to your tenant GitLab repository.
What do I get?
The purpose of the GSB11 Sitepackage Kickstarter is to provide developers with an easy entry into tenant development according to Option 2. See Tenant Factsheet.
Included after a successful setup are the core components of GSB11:
- Basic configuration and core development components (gsb-core)
- Accessibility improvements through a11y_backend
- Enhanced user management and security adjustments (gsb-feusermanagement)
- Prevention of phishing by removing metadata when uploading files (gsb-metadata-cleaner)
- Display of favorites on the dashboard through gsb-widgets
What is missing?
The accessible frontend according to the federal style guide (gsb_frontend) is not published and is only accessible to authorities. Access can be requested at https://produkt.gsb.bund.de/kontakt. Pre-filled pages with showcases on how certain content is managed gsb_destribution.
Tenant Factsheet
Please have a first look into the Tenant Factsheet upfront and use it as a reference for all questions regarding your tenant GSB11 project.
Prerequisites
You need a few things upfront:
- ddev installed on your computer
- php version 8.2 installed on your computer including the required extensions
- composer installed on your computer
- Login details (Username, Password) to OpenCoDE
Preparation
Authenticate with OpenCoDE
composer config -g gitlab-domains gitlab.opencode.de composer config -g repositories.gsb-sitepackage vcs https://gitlab.opencode.de/bmi/government-site-builder-11/extensions/gsb-sitepackage-kickstarter.git composer config -g repositories.a11y-backend vcs https://gitlab.opencode.de/bmi/government-site-builder-11/extensions/a11y_backend.git composer config -g repositories.captainhook-hooks vcs https://gitlab.opencode.de/bmi/government-site-builder-11/extensions/captainhook-hooks.git composer config -g repositories.gsb-core vcs https://gitlab.opencode.de/bmi/government-site-builder-11/extensions/gsb_core.git composer config -g repositories.gsb-feusermanagement vcs https://gitlab.opencode.de/bmi/government-site-builder-11/extensions/gsb_feusermanagement.git composer config -g repositories.gsb-metadata-cleaner vcs https://gitlab.opencode.de/bmi/government-site-builder-11/extensions/gsb_metadata_cleaner.git composer config -g repositories.gsb-widgets vcs https://gitlab.opencode.de/bmi/government-site-builder-11/extensions/gsb_widgets.git composer config -g repositories.itzbund_mandatory vcs https://gitlab.opencode.de/bmi/government-site-builder-11/extensions/itzbund_mandatory.git composer config -g repositories.gsb_solr vcs https://gitlab.opencode.de/bmi/government-site-builder-11/extensions/gsb_solr.git composer config -g repositories.gsb_clustered_caching vcs https://gitlab.opencode.de/bmi/government-site-builder-11/extensions/gsb_clustered_caching.git composer config -g repositories.gsb-csp vcs https://gitlab.opencode.de/bmi/government-site-builder-11/extensions/gsb-csp.git composer config -g repositories.gsb-ngninx-proxy vcs https://gitlab.opencode.de/bmi/government-site-builder-11/extensions/gsb-ngninx-proxy.git composer config -g repositories.siteconfig_impexp vcs https://gitlab.opencode.de/bmi/government-site-builder-11/extensions/siteconfig_impexp.git
Set user and password (use your personal access token as password)
composer config -g gitlab-token.gitlab.opencode.de <PASSWORD>
Installation
NOTE
We use Linux and macOS in our team, so the Windows setup may not work without errors.
If you are developing on Windows, use ddev in WSL2 and enter the following commands in the Linux shell.
If you notice an error, please contribute your solution.
Follow the steps to set up a GSB11 website with this sitepackage as a composer root package.
Create GSB11 project
git clone https://gitlab.opencode.de/bmi/government-site-builder-11/extensions/gsb-sitepackage-kickstarter.git gsb11-mandant && cd gsb11-mandant
If this command fails, try this workaround.
cd gsb11-mandant composer config --unset repositories.63 rm composer.lock composer install
OR remove the folowing from the composer.json
"repositories": { "63": { "type": "composer", "url": "https://git.gsb-itzbund.de/api/v4/group/63/-/packages/composer/packages.json" } }
than run composer install
Start local development environment
ddev start
Install GSB11
ddev exec cp .composer/vendor/typo3/cms-install/Resources/Private/FolderStructureTemplateFiles/root-htaccess .build/public/.htaccess && \ ddev exec .composer/bin/typo3 setup --force \ --no-interaction \ --server-type=apache \ --driver=mysqli \ --username=db \ --password=db \ --port=3306 \ --host=db \ --dbname=db \ --admin-username=admin \ --admin-user-password=Pas§§wor1 \ --admin-email='' \ --project-name="GSB11" \ --create-site="https://gsb-sitepackage.ddev.site"
NOTE
This configuration is used exclusively in the local development environment. The configuration is discarded in the deployment process! Please use a secure password
Install extensions
ddev exec .composer/bin/typo3 extension:setup
- Launch project
ddev launch
you may need to configure $GLOBALS['TYPO3_CONF_VARS']['SYS']['trustedHostsPattern'] to gsb-sitepackage.ddev.site
Login Backend
Visit https://gsb-sitepackage.ddev.site/typo3 in your browser or use the
ddev launch /typo3
NOTE
You defined Username and Password in step 4 "Install GSB11".
GSB11 GitLab only! Initialize Git and add remote repository
git init --initial-branch=main git remote add origin https://git.gsb-itzbund.de/gsb11/sitepackages/<NAME OF YOUR TENANT SITEPACKAGE REPOSITORY> git add . git commit -m "Initial commit" git push --set-upstream origin main
Configure your GSB11 tenant 🚀
Additional details
For further information, please refer to the readmes of the extensions. A list of available extensions is included in the Mandate Factsheet.
Development
Explanations about caching in GSB11 and the CI/CD pipelines in development are stored in the GSB11 GitLab documentation project.
To successfully release a mandate version of GSB11, the site package must be developed with trunk-based development, with main
being the standard branch. A merge into release
triggers a stable release. The branches main
and release
are mandatory.
Contribute
As with TYPO3, we encourage you to join the project by submitting changes. Development of the GSB11 happens mainly in the GSB11 TYPO3 extensions.
To get started, have a look at our detailed contribution walkthrough.