felixmosh / turborepo-gh-artifacts

A TurboRepo local cache server which uploads artifact cache to GH artifacts.
MIT License
122 stars 7 forks source link
artifacts cache turborepo

TurboRepo Github Artifacts action

This action allows you to use Github artifacts as TurboRepo remote cache server.

How it works?

It's starts a local TurboRepo server (on port 9080) and uses Github artifacts as a caching storage.

Setup

  1. Add in your workflow.yml the following section before TurboRepo runs:

    - name: TurboRepo local server
     uses: felixmosh/turborepo-gh-artifacts@v2
     with:
       repo-token: ${{ secrets.GITHUB_TOKEN }}
  2. Make turbo repo work with the local server

    Enable turbo remote caching though environment variables.

    - name: Build
     run: yarn build
     env:
       TURBO_API: 'http://127.0.0.1:9080'
       TURBO_TOKEN: ${{ secrets.TURBO_TOKEN }}
       TURBO_TEAM: 'foo'

That's it 😋.

Action inputs

The action has 1 required inputs:

Pay ❤️, GITHUB_TOKEN must have actions: read permissions in order to be able to read repo's existing artifacts.

Working Example

Working example of the entire setup, based on npx create-turbo@latest.

Useful Links