Harden vendor filename validation and reset to 15 mock vendors #34
This file contains hidden or 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: 🔄 Sync Vendors → Framer CMS | |
| on: | |
| push: | |
| branches: [main] | |
| paths: | |
| - "vendors/**" | |
| - "logos/**" | |
| workflow_dispatch: | |
| permissions: | |
| contents: read | |
| concurrency: | |
| group: sync-vendors-main | |
| cancel-in-progress: false | |
| jobs: | |
| sync: | |
| name: Sync to Framer CMS | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 30 | |
| env: | |
| FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: "true" | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v5 | |
| - name: Setup Node | |
| uses: actions/setup-node@v5 | |
| with: | |
| node-version: 22 | |
| - name: Install dependencies | |
| run: npm ci | |
| - name: Validate vendor data | |
| run: node scripts/validate-all.mjs | |
| - name: Sync vendors to Framer | |
| run: node scripts/sync-to-framer.mjs | |
| env: | |
| FRAMER_PROJECT_URL: ${{ secrets.FRAMER_PROJECT_URL }} | |
| FRAMER_API_KEY: ${{ secrets.FRAMER_API_KEY }} |