name: GCC and EMSDK build on: push: branches: [main] paths-ignore: - "website/**" pull_request: branches: [main] paths-ignore: - "website/**" jobs: build: permissions: actions: read contents: write env: EM_VERSION: 3.1.45 EM_CACHE_FOLDER: "emsdk-cache2" runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 with: submodules: "recursive" fetch-depth: 0 - name: Setup cache id: cache-system-libraries uses: actions/cache@v3 with: path: ${{env.EM_CACHE_FOLDER}} key: ${{env.EM_VERSION}}-${{ runner.os }} - uses: actions/setup-node@v3 with: node-version: "20" cache: yarn registry-url: 'https://registry.npmjs.org' - uses: mymindstorm/setup-emsdk@v12 with: version: ${{env.EM_VERSION}} actions-cache-folder: ${{env.EM_CACHE_FOLDER}} # setup node again, in case emsdk messed it up - uses: actions/setup-node@v3 with: node-version: "20" cache: yarn registry-url: 'https://registry.npmjs.org' - run: yarn install --frozen-lockfile - name: regenerate bytecode files (if needed) run: make bytecode-gen-ci - run: make - run: make test - run: make vscode-pkg - run: make release if: github.ref == 'refs/heads/main' env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}