Skip to content

Drupal module to report on availability status of 3-rd party endpoints.

License

Notifications You must be signed in to change notification settings

AlexSkrypnyk/integration_report

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Integration Report Drupal module

Integration Report Drupal module

GitHub Issues GitHub Pull Requests CircleCI GitHub release (latest by date) LICENSE Renovate

Drupal 9 Drupal 10 Drupal 11

screenshot

Why?

If your website has 3rd-party integration with one or multiple 3rd-party services via API endpoints, this module allows to call the endpoints and see all the response information within a single page.

You may also implement status check on behalf of any other Drupal module that does not have such information page.

Features

  • Single page for all status checks.
  • <iframe>-based status checks (useful for SSO with redirects).

Getting started

  1. Extend IntegrationReport class with your 3rd-party endpoint request methods.

  2. Register this class as a service in your custom module and tag it:

     services:
       example_integration_report:
         class: Drupal\example\ExampleIntegrationReport
         tags:
           - { name: integration_report }
    
  3. Go to /admin/reports/integrations to check the status.

Refer to integration_report.api.php and modules/integration_report_example for an implementation example.

Local development

Provided that you have PHP installed locally, you can develop an extension using the provided scripts.

Build

Run .devtools/assemble.sh (or ahoy assemble if Ahoy is installed) to start inbuilt PHP server locally and run the same commands as in CI, plus installing a site and your extension automatically.

Code linting

Run tools individually (or ahoy lint to run all tools if Ahoy is installed) to lint your code according to the Drupal coding standards.

cd build

vendor/bin/phpcs
vendor/bin/phpstan
vendor/bin/rector --clear-cache --dry-run
vendor/bin/phpmd . text phpmd.xml
vendor/bin/twig-cs-fixer

Tests

Run tests individually with cd build && ./vendor/bin/phpunit (or ahoy test if Ahoy is installed) to run all test for your extension.

Browsing SQLite database

To browse the contents of created SQLite database (located at /tmp/site_[EXTENSION_NAME].sqlite), use DB Browser for SQLite.