CI/CD Pipeline¶
ERP Plus uses GitHub Actions, GitHub Branch Protection Rules, and Taiga as its integrated delivery workflow.
Purpose¶
The CI/CD pipeline guarantees:
- code quality
- automated testing
- security validation
- architectural compliance
- deployment readiness
- traceability between Taiga and GitHub
Core Principle¶
Every change must originate from a tracked work item.
Work items are managed in Taiga and implemented through GitHub.
The CI/CD pipeline acts as the validation layer between development and deployment.
Workflow Overview¶
Epic (optional)
↓
User Story (Taiga)
↓
Task (Taiga)
↓
Branch
↓
Commits
↓
Pull Request → develop
↓
CI Validation
↓
Review
↓
Merge into develop
↓
Ready for Test
↓
Pull Request → main
↓
Release Validation
↓
Merge into main
↓
Done
↓
Deploy
Relationship Between Taiga and GitHub¶
Planning Layer¶
Taiga manages:
- Epics
- User Stories
- Tasks
- Issues
- Sprints
GitHub manages:
- Source code
- Pull Requests
- CI/CD
- Releases
Branch Strategy¶
Internal contributors create branches linked to a Taiga User Story.
Example:
feature/TG-123-user-invitations
Documentation examples:
docs/TG-33-localizacion-onboarding
Community contributors may use:
feature/user-invitations
docs/update-installation-guide
Commit Traceability¶
All commits related to a Taiga User Story should reference its identifier.
Example:
feat(users): add invitation workflow TG-123
docs(workflow): update branch strategy TG-33
Pull Request Lifecycle¶
Pull Request to develop¶
Purpose:
- integration
- validation
- QA readiness
Flow:
Branch
↓
PR → develop
↓
CI
↓
Review
↓
Merge
After merge:
- User Story is moved manually to:
Ready for Test
inside Taiga.
Pull Request to main¶
Purpose:
- release
- production delivery
Flow:
develop
↓
PR → main
↓
Release Validation
↓
Merge
After merge:
- User Story is moved manually to:
Done
inside Taiga.
CI Validation Stages¶
Every Pull Request must pass:
Rubocop¶
Checks:
- style consistency
- linting rules
RSpec¶
Checks:
- unit tests
- integration tests
- feature tests
Brakeman¶
Checks:
- Rails security issues
- common vulnerabilities
Build Validation¶
Ensures:
- application boots correctly
- dependencies are valid
- deployment artifacts can be generated
Branch Behavior¶
develop¶
Purpose:
Integration Branch
Characteristics:
- accepts feature merges
- CI validation required
- no production deployments
main¶
Purpose:
Production Branch
Characteristics:
- release source
- protected branch
- production deployments originate here
Product Integration¶
CI/CD validates work that has already been planned and approved through the ERP Plus product workflow.
See:
→ Product & Delivery Management
Governance Rule¶
No production change may bypass:
Taiga
→ GitHub PR
→ CI
→ Review
→ main
Summary¶
The ERP Plus delivery pipeline is built around:
Taiga → GitHub → CI → Review → Release → Deploy
This provides:
- traceability
- predictable releases
- controlled system evolution
- auditability across the platform