Skip to content

CI/CD Improvements: Dependabot automation and testing infrastructure reorganization#44

Merged
chadmf merged 2 commits into
mainfrom
AWS
Apr 10, 2026
Merged

CI/CD Improvements: Dependabot automation and testing infrastructure reorganization#44
chadmf merged 2 commits into
mainfrom
AWS

Conversation

@chadmf

@chadmf chadmf commented Apr 10, 2026

Copy link
Copy Markdown
Collaborator

Summary

This PR introduces two major improvements to the CI/CD infrastructure:

  1. Automated Dependency Management - Adds Dependabot configuration for GitHub Actions and pre-commit hooks
  2. Testing Infrastructure Reorganization - Moves all testing and CI scripts into a dedicated top-level tests/ directory

Changes

1. Dependabot Configuration (265a5db)

Added .github/dependabot.yml:

  • Weekly automated updates for GitHub Actions versions
  • Weekly updates for Python/pre-commit hooks
  • Grouped updates to reduce PR noise
  • Automatic reviewer assignment

Fixed critical stability issue:

  • Replaced ludeeus/action-shellcheck@master (unstable) with @2.0.0 (stable release)
  • Updated in both pr-validation.yml and shell-script-testing.yml

Expected benefits:

  • Automatic security updates
  • Version drift prevention
  • Reduced maintenance burden

2. Testing Infrastructure Reorganization (c7c874a)

New tests/ directory structure:

tests/
├── README.md              # Comprehensive testing documentation
├── scripts/               # Test and validation scripts
│   ├── dr-failover-test.sh
│   ├── measure-rto-rpo.sh
│   ├── validate-aap-data.sh
│   ├── test-split-brain-prevention.sh
│   ├── generate-dr-report.sh
│   └── run-ci-checks-locally.sh
├── hooks/                 # Pre-commit and CI hooks
│   ├── check-script-permissions.sh
│   └── validate-openshift-manifests.sh
└── openshift/             # DR testing CronJob manifests
    └── dr-testing/

Updated scripts/ to contain only operational scripts:

  • AAP scaling and cluster management
  • EFM integration hooks
  • Shared operational libraries

Documentation updates (15 files):

  • All script references updated to new paths
  • Repository structure diagrams updated in README.md and CLAUDE.md
  • .pre-commit-config.yaml updated with new hook paths
  • All DR testing documentation updated

Benefits:

  • Clear separation of concerns (testing vs operations)
  • Better project organization
  • Easier navigation for contributors
  • Complete git history preserved via git mv

Testing

Pre-commit Hooks

All pre-commit hooks updated and tested with new paths:

# Hooks now correctly reference tests/hooks/
- tests/hooks/check-script-permissions.sh
- tests/hooks/validate-openshift-manifests.sh

CI Workflows

All GitHub Actions workflows validated:

  • YAML validation ✅
  • Shell script testing ✅
  • Security scanning ✅

Documentation

All 15 updated documentation files verified:

  • No broken links ✅
  • All script references point to correct paths ✅
  • Repository structure diagrams accurate ✅

Files Changed

30 files total:

  • 1 new file: .github/dependabot.yml
  • 1 new file: tests/README.md
  • 14 files moved: scripts/ and openshift/dr-testing/tests/
  • 15 files updated: Documentation with new paths
  • 2 workflows updated: ShellCheck action pinned to stable version

Impact

Low risk changes:

  • All file moves preserve complete git history
  • No functional code changes to scripts
  • Documentation updates only affect references, not content
  • Dependabot is additive (no breaking changes)

Expected Dependabot PRs after merge:

  • GitHub Actions version updates (actions/checkout, actions/setup-python)
  • Pre-commit hook updates (shellcheck-py, yamllint, markdownlint, detect-secrets)

Checklist

  • All tests passing
  • Documentation updated
  • Pre-commit hooks work with new paths
  • No broken links
  • Git history preserved for moved files
  • Repository structure diagrams updated
  • Conventional commit messages used

Related

This PR sets the foundation for future CI/CD improvements identified in pipeline analysis:

  • BATS unit testing framework (future PR)
  • Migration from kubeval to kubeconform (future PR)
  • Trivy container scanning (future PR)
  • DR script integration tests (future PR)

🤖 Generated with Claude Code

chadmf and others added 2 commits April 10, 2026 10:19
Add automated dependency management via Dependabot for GitHub Actions
and Python pre-commit hooks. Replace unstable @master reference with
stable v2.0.0 release for ludeeus/action-shellcheck to prevent
unexpected breaking changes in CI workflows.

Changes:
- Add .github/dependabot.yml for weekly dependency updates
- Update pr-validation.yml: ludeeus/action-shellcheck@master → @2.0.0
- Update shell-script-testing.yml: ludeeus/action-shellcheck@master → @2.0.0

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
…ts/ directory

Move all testing, validation, and CI-related scripts and manifests from
scripts/ and openshift/dr-testing/ into a new top-level tests/ directory
for better organization and separation of concerns.

New structure:
- tests/scripts/       - Test and validation scripts (DR, RTO/RPO, validation)
- tests/hooks/         - Pre-commit and CI hooks
- tests/openshift/     - OpenShift DR testing CronJob manifests
- tests/README.md      - Comprehensive testing documentation

scripts/ now contains only operational scripts:
- AAP scaling and cluster management
- EFM integration hooks
- Shared operational libraries

Changes (30 files):
- Moved 6 test scripts to tests/scripts/
- Moved 2 CI hooks to tests/hooks/
- Moved 6 DR testing manifests to tests/openshift/dr-testing/
- Updated 15 documentation files with new paths
- Updated .pre-commit-config.yaml with new hook paths
- Updated CLAUDE.md and README.md repository structure diagrams
- Created tests/README.md with complete testing documentation

All file moves preserve complete git history via 'git mv'.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
@chadmf chadmf merged commit c6a9f99 into main Apr 10, 2026
18 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant