Add batch mode support and utilities
What does this MR do?
This Merge Request adds Batch Mode support to enable fetching and processing data for multiple GitLab usernames in a single execution. It extends the existing single-user workflow without breaking backward compatibility.
Motivation / Use Case
Currently, users must run the process one username at a time, which is inefficient when handling multiple GitLab accounts.
Batch Mode allows:
- Faster compliance checks
- Reduced repetitive executions
- Easier handling of multiple users in one run
This feature is especially useful for admins and auditors managing multiple users.
Implementation Notes
-
Introduced Batch Mode logic to handle multiple usernames
-
Usernames are manually provided as a list
-
System iterates over each username and fetches data individually
-
Report generation supports:
- Consolidated output
- Separate sections per username
-
Existing single-username functionality remains unchanged
-
No breaking changes introduced
How to Test
-
Checkout this branch:
git checkout batch-mode -
Run the application:
python app.py -
Enable Batch Mode
-
Provide multiple GitLab usernames
-
Verify that:
- Data is fetched for all usernames
- Reports are generated correctly for each user
Checklist
-
Feature is documented (in README or relevant doc files) -
Code is clean, readable, and follows the project style -
No breaking changes -
Tests are added or updated -
Feature works as intended in local testing
Related Issues or Discussions
- Implements: Batch Mode – Multiple Username Support
- Related discussion: Multi-user compliance reporting
