Configuring GitHub Actions CI
Turboship comes with a GitHub Actions CI configuration file that runs the static, unit, and end-to-end tests every time you push code to the repository. This way, you can ensure that the code is always clean and error-free which is very hand when working with a team specially on those dependecy updates.
By default, it does NOT prevent you from sending bugs to production, but you can configure it to do so if you want.
The main workflow is defined in the .github/workflows/main.yml
file.
Enabling Stripe Payments for E2E tests
Given that to receive payments in the end-to-end tests you need to have a webhook that listens to the Stripe events, we need to add a few Stripe related secrets to the GitHub repository.
Name | Type | Description |
---|---|---|
STRIPE_SECRET_KEY | Secret | It can be the same stripe test key used for development. eg: sk_test_... |
DEFAULT_CTA_PRICE_ID | Environment Variable | The price ID used as default on the CTAs |
STRIPE_API_KEY | Secret | Restricted key used by the Stripe CLI. eg: rk_test_... |
All of these secrets can be found in the
Stripe dashboard. You will need a
new restricted key for STRIPE_API_KEY
with permission to the CLI.
Enabling Turbo Remote Caching
Since we use turborepo under the hood, we can take advantage of Turbo's remote caching feature to speed up the CI process. To take the full advantage of it, you need to add the following secrets to your GitHub repository:
Name | Type | Description |
---|---|---|
TURBO_TOKEN | Secret | Get yours from the tokens page. |
TURBO_TEAM | Environment Variable | Your vercel username. You can get it from account page. eg: vercel.com/USERNAME |