Add comprehensive GitHub Actions CI/CD workflows

Implemented automated testing and quality assurance pipelines:

Workflows added:
- python-package.yml: Main CI pipeline
  * Multi-OS testing (Ubuntu, Windows, macOS)
  * Python 3.9-3.12 compatibility testing
  * Linting with flake8
  * Code formatting checks with black
  * Type checking with mypy
  * Import and compilation tests
  * Unit tests for core components

- codeql.yml: Security scanning
  * Weekly automated security analysis
  * CodeQL vulnerability detection
  * Extended security and quality queries

- dependency-review.yml: Dependency safety
  * Automatic dependency vulnerability checks
  * License compliance verification
  * Blocks moderate+ severity issues

- pr-labeler.yml: PR automation
  * Auto-labels based on changed files
  * PR size labeling (xs/s/m/l/xl)
  * Metadata extraction for better organization

- welcome.yml: Community engagement
  * Welcomes first-time contributors
  * Provides helpful guidelines
  * Improves contributor experience

Configuration:
- labeler.yml: Label mapping for automatic categorization

All workflows include proper permissions and error handling.
This commit is contained in:
Claude 2026-01-02 11:29:19 +00:00
parent 963a65536f
commit c8d09969df
No known key found for this signature in database
6 changed files with 395 additions and 0 deletions

35
.github/workflows/welcome.yml vendored Normal file
View file

@ -0,0 +1,35 @@
name: Welcome
on:
issues:
types: [opened]
pull_request_target:
types: [opened]
jobs:
welcome:
runs-on: ubuntu-latest
permissions:
issues: write
pull-requests: write
steps:
- uses: actions/first-interaction@v1
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
issue-message: |
👋 Thanks for opening your first issue! We appreciate your contribution to the Eugen Twitch Bot project.
Please make sure you've provided all the necessary information and followed our issue template (if applicable).
A maintainer will review your issue soon!
pr-message: |
🎉 Thanks for opening your first pull request! We're excited to review your contribution.
Before we can merge, please make sure:
- [ ] Your code follows our style guidelines
- [ ] You've tested your changes
- [ ] You've updated documentation if needed
- [ ] All CI checks pass
A maintainer will review your PR as soon as possible. Thanks for contributing to Eugen!