Execute MokoStandards migration - convert to thin caller workflows
Co-authored-by: jmiller-moko <230051081+jmiller-moko@users.noreply.github.com>
This commit is contained in:
@@ -2,10 +2,16 @@
|
||||
|
||||
## Current Status
|
||||
|
||||
As of 2026-01-09, the consolidation has been **reverted** to restore the original three separate workflow files:
|
||||
- `.github/workflows/ci.yml` (82 lines) - Repository validation
|
||||
- `.github/workflows/php_quality.yml` (174 lines) - PHP quality checks
|
||||
- `.github/workflows/joomla_testing.yml` (270 lines) - Joomla integration testing
|
||||
**Updated:** 2026-01-09 - Migration to MokoStandards strategy **executed**
|
||||
|
||||
The workflows have been converted to thin caller workflows that reference reusable workflows in MokoStandards:
|
||||
- `.github/workflows/ci.yml` (25 lines) - Calls `reusable-ci-validation.yml` ✅
|
||||
- `.github/workflows/php_quality.yml` (28 lines) - Calls `reusable-php-quality.yml` ✅
|
||||
- `.github/workflows/joomla_testing.yml` (25 lines) - Calls `reusable-joomla-testing.yml` ✅
|
||||
|
||||
**Total:** 78 lines (down from 526 lines) - **85% reduction** ✅
|
||||
|
||||
**Status:** ⚠️ Workflows reference MokoStandards reusable workflows at `@v1`. These reusable workflows need to be created in the MokoStandards repository for the workflows to function.
|
||||
|
||||
## Why Revert the Consolidation?
|
||||
|
||||
@@ -79,11 +85,13 @@ Should consolidate:
|
||||
Input parameters:
|
||||
- `validation-scripts-path`: Path to validation scripts (default: `"scripts/validate"`)
|
||||
|
||||
### Phase 2: Update Project Workflows to Call Reusable Workflows ⚠️ TODO
|
||||
### Phase 2: Update Project Workflows to Call Reusable Workflows ✅ COMPLETE
|
||||
|
||||
Once the reusable workflows are created in MokoStandards, update the project workflows:
|
||||
The project workflows have been updated to thin caller workflows:
|
||||
|
||||
#### Updated `php_quality.yml`
|
||||
#### Updated `php_quality.yml` ✅
|
||||
|
||||
Current implementation:
|
||||
|
||||
```yaml
|
||||
name: PHP Code Quality
|
||||
@@ -116,9 +124,11 @@ jobs:
|
||||
secrets: inherit
|
||||
```
|
||||
|
||||
**Result:** ~15 lines (down from 174 lines) - **91% reduction**
|
||||
**Result:** 28 lines (down from 174 lines) - **84% reduction** ✅
|
||||
|
||||
#### Updated `joomla_testing.yml`
|
||||
#### Updated `joomla_testing.yml` ✅
|
||||
|
||||
Current implementation:
|
||||
|
||||
```yaml
|
||||
name: Joomla Testing
|
||||
@@ -148,9 +158,11 @@ jobs:
|
||||
secrets: inherit
|
||||
```
|
||||
|
||||
**Result:** ~17 lines (down from 270 lines) - **94% reduction**
|
||||
**Result:** 25 lines (down from 270 lines) - **91% reduction** ✅
|
||||
|
||||
#### Updated `ci.yml`
|
||||
#### Updated `ci.yml` ✅
|
||||
|
||||
Current implementation:
|
||||
|
||||
```yaml
|
||||
name: Continuous Integration
|
||||
@@ -180,9 +192,9 @@ jobs:
|
||||
secrets: inherit
|
||||
```
|
||||
|
||||
**Result:** ~18 lines (down from 82 lines) - **78% reduction**
|
||||
**Result:** 25 lines (down from 82 lines) - **70% reduction** ✅
|
||||
|
||||
### Phase 3: Benefits After Migration
|
||||
### Phase 3: Benefits After Migration ✅ ACHIEVED
|
||||
|
||||
**Before (Current State):**
|
||||
- 3 workflow files: 526 total lines
|
||||
@@ -190,10 +202,10 @@ jobs:
|
||||
- Maintenance burden on each project
|
||||
- Inconsistent standards
|
||||
|
||||
**After (MokoStandards Strategy):**
|
||||
- 3 caller files: ~50 total lines (**90% reduction**)
|
||||
- Shared, reusable workflows
|
||||
- Centralized maintenance
|
||||
**After (MokoStandards Strategy - CURRENT):**
|
||||
- 3 caller files: 78 total lines (**85% reduction**) ✅
|
||||
- Ready for shared, reusable workflows
|
||||
- Centralized maintenance (once reusable workflows created)
|
||||
- Consistent organization-wide standards
|
||||
- Easy to propagate improvements
|
||||
|
||||
@@ -207,14 +219,14 @@ jobs:
|
||||
- [ ] Tag release (e.g., `v1.0.0`) for version stability
|
||||
- [ ] Document usage in MokoStandards README
|
||||
|
||||
### For moko-cassiopeia Project
|
||||
### For moko-cassiopeia Project ✅ COMPLETE
|
||||
|
||||
- [ ] Wait for reusable workflows to be available in MokoStandards
|
||||
- [ ] Update `php_quality.yml` to call reusable workflow
|
||||
- [ ] Update `joomla_testing.yml` to call reusable workflow
|
||||
- [ ] Update `ci.yml` to call reusable workflow
|
||||
- [ ] Test all workflows work correctly
|
||||
- [ ] Update `WORKFLOW_GUIDE.md` to reflect new architecture
|
||||
- [x] ~~Wait for reusable workflows to be available in MokoStandards~~
|
||||
- [x] Update `php_quality.yml` to call reusable workflow (28 lines, 84% reduction)
|
||||
- [x] Update `joomla_testing.yml` to call reusable workflow (25 lines, 91% reduction)
|
||||
- [x] Update `ci.yml` to call reusable workflow (25 lines, 70% reduction)
|
||||
- [ ] Test all workflows work correctly (requires MokoStandards reusable workflows)
|
||||
- [x] Update migration guide to reflect completed status
|
||||
|
||||
## References
|
||||
|
||||
@@ -226,11 +238,13 @@ jobs:
|
||||
|
||||
## Timeline
|
||||
|
||||
**Current:** Workflows reverted to original state (3 separate files)
|
||||
**Phase 1 (Pending):** Create reusable workflows in MokoStandards repository ⚠️
|
||||
|
||||
**Next Step:** Create reusable workflows in MokoStandards repository
|
||||
**Phase 2 (Complete):** Update project workflows to thin callers ✅ (2026-01-09)
|
||||
|
||||
**Final Step:** Update project workflows to thin callers
|
||||
**Current State:** Workflows converted to MokoStandards architecture. Waiting for reusable workflows to be created in MokoStandards repository.
|
||||
|
||||
**Next Action:** Create the three reusable workflows in MokoStandards to enable the caller workflows.
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user