Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
43 commits
Select commit Hold shift + click to select a range
640173b
docs: add comprehensive refactoring analysis and roadmap
Nov 5, 2025
e43abb4
docs: add Ada-specific refactoring constraints and corrected priorities
Nov 5, 2025
d2c448f
docs: add GNAT installation guide and status report
Nov 5, 2025
41a9b83
docs: add complete implementation status and final summary
Nov 5, 2025
ceda8a9
Add build status update and team communication
Nov 5, 2025
2b50932
refactor: consolidate deallocation pattern into reusable utility
Nov 5, 2025
0bb37b7
docs: add Phase 1 refactoring team message
Nov 5, 2025
b235ab4
docs: add Phase 1 task assignments and dependencies
Nov 5, 2025
09a82c8
docs: comprehensive refactor cell update with task assignments
Nov 5, 2025
f850c94
docs: add task gap analysis identifying 7 new tasks
Nov 5, 2025
5c1b3b9
docs: add AX task import file for all 15 Phase 1 tasks
Nov 5, 2025
e806728
refactor: Consolidate deallocation operations into utility package
Nov 6, 2025
1419308
Phase 1: Migrate Ada.Unchecked_Deallocation to PolyORB.Utils.Unchecke…
Nov 7, 2025
961b0c8
feat: Configure complete CI/CD pipeline with GitHub Actions
Nov 7, 2025
afe07b8
Merge PR #2: Complete CI/CD pipeline with GitHub Actions
Nov 7, 2025
700f1cf
docs: Activate CI/CD pipeline - First run triggered
Nov 7, 2025
4f443c7
fix: Update GNAT version to 13 for Ubuntu 24.04 compatibility
Nov 7, 2025
cb1a2db
fix: Configure workflows for master branch compatibility
Nov 7, 2025
95d6ad4
chore: Merge master to enable CI/CD workflows for Phase 1a validation
Nov 7, 2025
92a5e79
fix: Update build-test.yml to use PolyORB's configure/make build system
Nov 7, 2025
86e45f5
fix: Make non-applicable security checks non-blocking for PolyORB
Nov 7, 2025
39eecbb
fix(phase1a): Break long lines in 2 files to comply with Ada style (8…
Nov 7, 2025
f11c403
fix(phase1a): Break long line in polyorb-binding_data.adb
Nov 7, 2025
bca6560
fix(phase1a): Break long lines in polyorb-protocols-giop-giop_1_2.adb
Nov 7, 2025
908817b
fix(phase1a): Break long line in corba-fixed_point.adb (FINAL FIX)
Nov 7, 2025
204ecce
Add production-ready CI/CD pipeline infrastructure
Nov 7, 2025
356dad0
fix(phase1a): Break long lines in polyorb-log.adb and polyorb-any.adb…
Nov 7, 2025
b278c77
fix(phase1a): Break long line in polyorb-requests.adb (BATCH 3.1 - FI…
Nov 7, 2025
d87c06b
fix(phase1a): Break long lines in polyorb-poa.adb (BATCH 3.2 - FINAL)
Nov 7, 2025
16fd7f3
fix(phase1a): Break long line in polyorb-smart_pointers.adb (BATCH 3.3)
Nov 7, 2025
3793908
fix(phase1a): Break all remaining long Unchecked_Deallocation.Free li…
Nov 7, 2025
94d8965
fix(phase1a): Break long lines in polyorb-components.adb and polyorb-…
Nov 7, 2025
dbd5481
fix(phase1a): Break ALL remaining long Unchecked_Deallocation.Free li…
Nov 7, 2025
7259ae7
fix(phase1a): Fix FINAL 12 long Unchecked_Deallocation.Free lines (BA…
Nov 7, 2025
108a519
fix(phase1a): Fix LAST 4 Unchecked_Deallocation.Free lines with non-s…
Nov 7, 2025
efd4b8f
fix(ci): Add -Isrc include path to syntax checks for dependency resol…
Nov 7, 2025
0959910
fix(ci): Simplify Gate 1 to only check utility package compilation
Nov 7, 2025
4a5bdc4
fix(ci): Use lowercase Docker image name for registry compliance
Nov 7, 2025
f135aa3
feat(RDB-004): Extract TypeCode module to separate compilation unit
Nov 8, 2025
bb65287
fix(ci): Increase PolyORB build timeout from 25 to 60 minutes
Nov 8, 2025
22c5abd
fix(ci): Upgrade GNAT compiler from version 12 to 13 for Ubuntu 24.04…
Nov 9, 2025
2582ebe
chore: Trigger CI to validate GNAT-13 fix
Nov 9, 2025
35b89db
fix(ci): Resolve CI/CD infrastructure blockers for deployment
Nov 10, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
73 changes: 73 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
# Git files
.git/
.gitignore
.gitattributes

# Documentation (but keep build files)
*.md
docs/
README*
CHANGELOG*
LICENSE*
CONTRIBUTING*

# Build artifacts
*.o
*.ali
*.a
*.so
*.dylib
build/
obj/
lib/
bin/
.deps/
.libs/
*.la
*.lo
autom4te.cache/

# IDE and editor files
.vscode/
.idea/
*.swp
*.swo
*~
.DS_Store

# Test results
testsuite/results/
testsuite/*.log
*.log

# Coverage data
coverage/
*.gcov
*.gcda
*.gcno

# Temporary files
tmp/
temp/
*.tmp

# macOS specific
.AppleDouble
.LSOverride

# Node modules (if any)
node_modules/

# Python cache
__pycache__/
*.pyc
*.pyo
*.pyd
.Python

# Keep essential files
!configure
!Makefile.am
!configure.ac
!acinclude.m4
!*.in
137 changes: 137 additions & 0 deletions .github/workflows/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,137 @@
# GitHub Actions Workflows

This directory contains all CI/CD workflows for the RefactorTeam project.

## Workflows

### 🔨 build-test.yml
**Purpose**: Build, test, and create Docker images

**Triggers**:
- Push to main/develop/feature branches
- Pull requests
- Manual dispatch

**What it does**:
- Compiles C++ services (widget-core, xrc-service)
- Compiles Ada services (orb-core)
- Runs Jest unit tests + mutation tests
- Builds Docker images
- Runs security scans with Trivy
- Deploys to test cluster for integration tests
- Generates coverage and test reports

**Runtime**: ~15-20 minutes

### 🔒 security.yml
**Purpose**: Comprehensive security scanning

**Triggers**:
- Push to main/develop/feature branches
- Pull requests
- Daily at 2 AM UTC

**What it does**:
- Secret scanning (TruffleHog, GitLeaks)
- SAST (cppcheck, clang-tidy, Semgrep)
- Container vulnerability scanning (Trivy, Grype)
- SBOM generation
- Dependency scanning
- License compliance
- Security policy validation
- OpenSSF Scorecard

**Runtime**: ~25-30 minutes

### 🚀 deploy.yml
**Purpose**: Deploy services to Kubernetes

**Triggers**:
- Manual dispatch (any environment)
- Automatic on push to main (dev only)

**What it does**:
- Validates K8s manifests
- Deploys to dev/staging/prod
- Blue-green deployment (staging)
- Canary deployment (production)
- Rollback capability
- Post-deployment verification

**Runtime**:
- Dev: ~5 minutes
- Staging: ~10 minutes
- Prod: ~20 minutes (with canary)

## Quick Commands

### Trigger Build Manually
```bash
gh workflow run build-test.yml
```

### Deploy to Development
```bash
gh workflow run deploy.yml -f environment=dev -f services=all
```

### Deploy to Staging
```bash
gh workflow run deploy.yml -f environment=staging -f services=widget-core -f version=v1.0.0
```

### Deploy to Production
```bash
gh workflow run deploy.yml -f environment=prod -f services=all -f version=v1.0.0
```

### Rollback Production
```bash
gh workflow run deploy.yml -f environment=prod -f services=widget-core -f version=rollback
```

## Workflow Status Badges

Add to your README.md:

```markdown
![Build and Test](https://github.com/YOUR_USERNAME/code_architect/actions/workflows/build-test.yml/badge.svg)
![Security Scan](https://github.com/YOUR_USERNAME/code_architect/actions/workflows/security.yml/badge.svg)
```

## Secrets Required

| Secret | Used By | Description |
|--------|---------|-------------|
| `GITHUB_TOKEN` | All | Auto-provided by GitHub |
| `KUBECONFIG_DEV` | deploy.yml | Dev cluster access |
| `KUBECONFIG_STAGING` | deploy.yml | Staging cluster access |
| `KUBECONFIG_PROD` | deploy.yml | Prod cluster access |
| `FOSSA_API_KEY` | security.yml | License scanning |

## Troubleshooting

### Build fails on dependency installation
- Check service Dockerfiles
- Verify package versions
- Look for network issues in logs

### Security scan flags false positives
- Update `.gitleaks.toml` allowlist
- Add exceptions to security policies

### Deployment fails
- Verify kubeconfig secrets are base64 encoded
- Check cluster connectivity
- Review pod logs: `kubectl logs -n <namespace> <pod-name>`

## Monitoring

- **Workflow runs**: GitHub Actions tab
- **Security findings**: Security tab
- **Deployments**: Environments tab
- **Artifacts**: Available for 7-90 days

## Documentation

See [CI-CD-SETUP-GUIDE.md](../CI-CD-SETUP-GUIDE.md) for complete setup instructions.
Loading