The OpenID Connect module is not yet officially compatible with Drupal 11, but chx/drupal-issue-fork comes to the rescue:
docker compose exec phpfpm require chx/drupal-issue-fork
docker compose exec phpfpm require composer drupal-issue-fork https://git.drupalcode.org/issue/openid_connect-3452009/-/tree/3452009-drupal-11-compatibility
docker compose exec phpfpm require composer require drupal/openid_connect:dev-3452009-drupal-11-compatibilityDuring (local) development we use OpenId Connect Server Mock (cf.
docker-compose.oidc.yml which is
included in
docker-compose.override.yml).
The following users are available for local testing:
| Username | Password | Groups |
|---|---|---|
| administrator | administrator | Administrator |
| editor | editor | Redaktoer |
| user | user | Bruger1 |
For easy user switching during testing (without access to drush user:login), the Masquerade
module can be installed (composer install --dev must be run to make the
module available).
A patch has been applied to allow unmasking
by visiting /unmask.
The WebProfiler module can be installed to help during development:
task drush -- pm:install webprofilerThe module and other development modules are excluded from configuration syncronization (cf.
settings.php and https://www.drupal.org/node/3079028).
Webforms: Forms configuration (/admin/structure/webform/config)
ai_screening_weighted_radiosai_screening_weighted_textareaai_screening_weighted_textfield
Some helper Drush commands are added – currently most for debugging purposes:
task drush -- ai-screening:project-track:list: List project trackstask drush -- ai-screening:project-track:show: Show details for a project tracktask drush -- ai-screening:access-check: Show access details
We have a modules test. Run it with
task test-module-testThe Development settings on /admin/config/development/settings (cf.
https://www.drupal.org/docs/develop/development-tools/disabling-and-debugging-caching) can be set using some command
line incantations:
# Disable cache
task drush -- php:eval "Drupal::keyValue('development_settings')->setMultiple(['disable_rendered_output_cache_bins' => TRUE]);"
task drush -- cache:rebuild# Enable cache (for production)
task drush -- php:eval "Drupal::keyValue('development_settings')->setMultiple(['disable_rendered_output_cache_bins' => FALSE]);"
task drush -- cache:rebuild# Enable Twig development mode
task drush -- php:eval "Drupal::keyValue('development_settings')->setMultiple(['twig_debug' => TRUE, 'twig_cache_disable' => TRUE]);"
task drush -- cache:rebuild# Disable Twig development mode (for production)
task drush -- php:eval "Drupal::keyValue('development_settings')->setMultiple(['twig_debug' => FALSE, 'twig_cache_disable' => FALSE]);"
task drush -- cache:rebuildThis section contains some useful command line incantations that can come in handy during development and manual testing.
task apply-fixtures -- --yes
task drush -- sql:cli --extra=--table <<'EOF'
SELECT
(SELECT COUNT(*) FROM project_track) AS '#project_track',
(SELECT COUNT(*) FROM project_track_tool) AS '#project_track_tool',
(SELECT COUNT(*) FROM webform_submission) AS '#webform_submission'
EOF
task drush -- --yes cron
task drush -- sql:cli --extra=--table <<'EOF'
SELECT
(SELECT COUNT(*) FROM project_track) AS '#project_track',
(SELECT COUNT(*) FROM project_track_tool) AS '#project_track_tool',
(SELECT COUNT(*) FROM webform_submission) AS '#webform_submission'
EOFFootnotes
-
The "Bruger" group is not actually used in Drupal (but the AD requires a group on a user). A user that is neither an "ADministrator" or "Redaktoer" will be just an "authenticated" user. ↩