itk-dev/azure_ad_delta_sync

Azure AD Delta Sync for Drupal

安装: 25

依赖: 0

建议者: 0

安全: 0

星星: 0

关注者: 3

分支: 0

开放问题: 1

类型:drupal-module

1.0.0 2021-09-06 13:05 UTC

This package is auto-updated.

Last update: 2024-09-08 11:11:45 UTC


README

Azure AD Delta Sync提供的Drupal模块。

安装

composer require itk-dev/azure_ad_delta_sync
vendor/bin/drush pm:enable azure_ad_delta_sync

转到 /admin/config/azure_ad_delta_sync 以设置该模块。

你可能需要在 settings.local.php 中添加Azure API密钥,例如:

# settings.local.php

$config['azure_ad_delta_sync.settings']['azure']['client_id'] = '';
$config['azure_ad_delta_sync.settings']['azure']['client_secret'] = '';
$config['azure_ad_delta_sync.settings']['azure']['group_id'] = '';
$config['azure_ad_delta_sync.settings']['azure']['tenant_id'] = '';

此外,你可能想要安装Config Ignore模块,并在将配置提交到版本控制系统时忽略azure_ad_delta_sync.settings配置。

使用

cron作业应定期运行以下命令

vendor/bin/drush azure_ad_delta_sync:run --force

运行vendor/bin/drush azure_ad_delta_sync:run --help以获取命令的详细信息。

开发

对于开发,你需要一个完整的Drupal项目。有关示例,请参阅itk-dev/azure-ad-delta-sync-drupal-test

我们使用懒加载服务azure_ad_delta_sync.user_managerDrupal\azure_ad_delta_sync\UserManager)和azure_ad_delta_sync.controllerDrupal\azure_ad_delta_sync\Controller),这需要生成一个代理类(参考https://www.webomelette.com/lazy-loaded-services-drupal-8)。

运行以下命令以更新代理类

php «DRUPAL_ROOT»/web/core/scripts/generate-proxy-class.php 'Drupal\azure_ad_delta_sync\UserManager' web/modules/contrib/azure_ad_delta_sync/src
php «DRUPAL_ROOT»/web/core/scripts/generate-proxy-class.php 'Drupal\azure_ad_delta_sync\Controller web/modules/contrib/azure_ad_delta_sync/src

自动化测试

需要完整的Drupal安装,并将azure_ad_delta_sync模块放在web/modules/contrib文件夹中。

(cd «DRUPAL_ROOT»/web; ../vendor/bin/phpunit modules/contrib/azure_ad_delta_sync/tests/src/Functional)

编码标准

代码遵循Drupal编码标准(参考phpcs.xml.dist),并通过运行进行检查

composer install
composer coding-standards-check

使用

composer coding-standards-apply

自动修复一些编码标准违规。

代码分析

drupal-check用于执行代码的静态分析。运行

composer code-analysis

GitHub Actions

我们使用GitHub Actions来检查编码标准,执行代码分析和运行自动化测试,每当有pull request提交时(参考.github/workflows/pr.yaml)。

在提交pull request之前,您可以在本地运行GitHub Actions以检查是否存在任何问题

安装act并运行

act -P ubuntu-latest=shivammathur/node:focal pull_request

(参考https://github.com/shivammathur/setup-php#local-testing-setup)。