diff --git a/.github/workflows/build-restriction.yml b/.github/workflows/build-restriction.yml new file mode 100644 index 00000000..c9a3f6be --- /dev/null +++ b/.github/workflows/build-restriction.yml @@ -0,0 +1,46 @@ +name: Embedded app build size + +on: + push: + branches: [ master ] + pull_request: + branches: [ master ] + +permissions: + contents: read + +jobs: + build: + runs-on: ubuntu-latest + # defaults: + # run: + # working-directory: ./app + steps: + - uses: actions/checkout@v4 + - uses: pnpm/action-setup@v2 + with: + version: 8 + + - name: Setup Node.js + uses: actions/setup-node@v4 + with: + node-version: 'latest' + cache: 'pnpm' + cache-dependency-path: './app/pnpm-lock.yaml' + + - name: Install dependencies + run: cd app && pnpm install + - name: List files + run: ls + + + - name: Check index.html size + run: | + SIZE=$(stat --format=%s ../esp32/data/index.html) + MAXSIZE=204800 + if [ $SIZE -gt $MAXSIZE ]; then + echo "index.html is larger than 200KB ($SIZE bytes)" + exit 1 + else + echo "index.html size is within limit ($SIZE bytes)" + fi \ No newline at end of file