Skip to content

anselmes/cicd

CICD - Comprehensive CI/CD Toolkit

A reusable CI/CD toolkit providing GitHub Actions workflows, development containers, and automation scripts for modern software development projects.


OpenSSF Scorecard Contiuos Integration Review


Features

πŸš€ GitHub Actions Workflows

  • Continuous Integration: Automated builds, tests, and security scanning
  • Code Review: Automated PR review with linting, security scanning, and dependency analysis
  • Security: Trivy vulnerability scanning, Scorecard analysis, and GitGuardian secret detection
  • Bot Automation: Dependabot integration with auto-merge for patch updates
  • Cleanup: Automated cache cleanup and stale issue management

πŸ› οΈ Reusable Actions

  • Container Builds: Multi-platform Docker image building with SBOM generation
  • Language Builds: Support for Swift, Rust, and Go projects
  • Helm Charts: Chart testing, packaging, and publishing
  • Linux Builds: Kernel and Ubuntu image building (planned)

πŸ”§ Development Environment

  • DevContainer: Pre-configured development environment with Ubuntu 24.04
  • Shell Configuration: Oh My Zsh setup with custom aliases and environment variables
  • Tool Integration: Built-in support for various development tools and runtimes

πŸ“‹ Code Quality & Security

  • Linting: Comprehensive linting with Trunk, Super Linter, and language-specific tools
  • Security Scanning: Multi-layer security with Trivy, Semgrep, Gitleaks, and TruffleHog
  • Dependency Management: Automated dependency updates and vulnerability monitoring
  • Code Standards: EditorConfig, Prettier, and pre-commit hooks

Quick Start

Using as a Template

  1. Clone this repository
  2. Customize the workflows in .github/workflows/ for your needs
  3. Update configuration files as needed

Using Reusable Workflows

Reference the workflows in your repository:

name: CI
on: [push, pull_request]

jobs:
  review:
    uses: anselmes/cicd/.github/workflows/review.yml@main
    
  security:
    uses: anselmes/cicd/.github/workflows/trivy.yml@main
    permissions:
      contents: read
      security-events: write

Using Composite Actions

Reference the actions in your workflow:

- name: Build Container
  uses: anselmes/cicd/.github/actions/docker@main
  with:
    tag: my-app
    publish: true

Configuration

Environment Setup

Security Configuration

  • Set up required secrets in your repository settings
  • Configure branch protection rules
  • Enable security features like Dependency Graph and Secret Scanning

Code Quality Tools

Scripts

Contributing

Please read CONTRIBUTING.md for details on our code of conduct and the process for submitting pull requests.

Security

For security concerns, please see SECURITY.md for our security policy and reporting procedures.

License

Copyright (c) 2025 Schubert Anselme schubert@anselm.es

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/.

About

No description, website, or topics provided.

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

No packages published

Contributors 5