Improved the Drupal GitHub Webhook Module
I improved the custom module “GitHub Webhook” that triggers GitHub Actions from the Drupal admin panel. https://github.com/nakamura196/Drupal-module-github_webhook Originally a basic module with multi-repository support, I added features including UI tab separation, permission granularity, workflow status display, and auto-triggering. Module Before Improvements The original module had the following structure: File count: 5 files (info.yml, routing.yml, links.menu.yml, permissions.yml, SettingsForm.php) Supported versions: Drupal 10 only Repositories: Multi-repository support (dynamic add/remove with AJAX) Screen: Settings and trigger on the same screen (2 accordions) Permissions: Only 1 permission access github webhook settings (same permission for both settings and trigger) Token management: #default_value set on password field (token output in plaintext in HTML source) HTTP client: Direct instantiation of new \GuzzleHttp\Client() Exception class: Written in catch block without use statement (incorrect namespace resolution) $ ] f ; o ' ' ' B r # # # e m t t d f [ y i e o ' p t f r s e l a e e ' e u : t ' l t = t T i > = _ o n > v k g ' a e s p $ l n ' a t u ] s h e w [ s i ' a ' w s s g o - = i r > > s t d t e h ' ( $ t u , ' c b G o i _ i n n t t f o H i # k u g d e b - e n > f ' T g a ] o e u k t l = e ( t n ' _ [ ' g v ) i a , t l h u u e b _ t o k e n ' ) , O u t p u t i n p l a i n t e x t i n H T M L $ c l B i e e f n o t r e = : n G e u w z z \ l G e u z c z l l i e e H n t t t p w \ a C s l i d e i n r t e ( c ) t ; l y i n s t a n t i a t e d w i t h n e w Overview of Changes Comparison of file structure before and after improvements. * indicates modified, + indicates newly added. ...