Refactor rule model #2375
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: MacawUI migration | |
on: [pull_request] | |
jobs: | |
current_state: | |
runs-on: ubuntu-latest | |
name: "Calculate current state" | |
outputs: | |
main_statistics: ${{ steps.store_import_stats.outputs.MAIN_STATISTICS }} | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
ref: "main" | |
- uses: actions/setup-node@v3 | |
with: | |
node-version-file: '.nvmrc' | |
- name: Install deps | |
run: | | |
npm ci | |
- name: Store import stats | |
id: store_import_stats | |
run: | | |
stats=$(npx depcruise --config .dependency-cruiser.js src --output-type json | jq ".summary.info") | |
echo "Statistics on main branch: ${stats}" | |
echo "MAIN_STATISTICS=${stats}" >> $GITHUB_OUTPUT | |
check_migation_status: | |
runs-on: ubuntu-latest | |
name: "Migration check" | |
needs: current_state | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/setup-node@v3 | |
with: | |
node-version-file: '.nvmrc' | |
- name: Install deps | |
run: | | |
npm ci | |
- name: "Calculate stats" | |
env: | |
latest: ${{ needs.current_state.outputs.main_statistics }} | |
run: | | |
current=$(npx depcruise --config .dependency-cruiser.js src --output-type json | jq ".summary.info") | |
difference=$(( $current - $latest )) | |
echo "Imports in main: ${latest}" | |
echo "Incomming imports: ${current}" | |
echo "Difference: ${difference}" | |
echo "IMPORT_DIFFERENCE=${difference}" >> $GITHUB_ENV | |
- name: "MacawUI regression reported" | |
if: ${{ env.IMPORT_DIFFERENCE > 0 }} | |
run: | | |
echo "Regression detected: +${{ env.IMPORT_DIFFERENCE }} imports" | |
exit 1 | |
- name: "MacawUI migration progress" | |
if: ${{ env.IMPORT_DIFFERENCE <= 0 }} | |
run: | | |
echo "Progress by: ${{ env.IMPORT_DIFFERENCE }} imports" | |
exit 0 |