This repository has been archived by the owner on Nov 15, 2023. It is now read-only.
Merge pull request #4 from knapsack-cloud/merge-upstream #4
This file contains 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: Main | |
on: | |
push: | |
branches: | |
- main | |
jobs: | |
deploy: | |
name: Deploy | |
if: github.ref == 'refs/heads/main' | |
needs: [build] | |
runs-on: ubuntu-latest | |
env: | |
HEROKU_EMAIL: ${{ secrets.HEROKU_EMAIL }} | |
HEROKU_API_KEY: ${{ secrets.HEROKU_API_KEY }} | |
HEROKU_GIT_URL: ${{ secrets.HEROKU_GIT_URL }} | |
steps: | |
- uses: actions/checkout@v2 | |
with: | |
fetch-depth: 0 | |
ref: main | |
- name: write auth | |
run: | | |
cat > ~/.netrc <<EOF | |
machine git.heroku.com | |
login $HEROKU_EMAIL | |
password $HEROKU_API_KEY | |
EOF | |
- name: git push to heroku for deploy | |
run: | | |
git remote add heroku $HEROKU_GIT_URL | |
git push heroku main | |
build: | |
name: Build & Release | |
runs-on: ubuntu-latest | |
steps: | |
- name: Use actions/checkout@v2 | |
uses: actions/checkout@v2 | |
with: | |
fetch-depth: 0 | |
- name: Use Node.js | |
uses: actions/setup-node@v1 | |
with: | |
node-version: 16 | |
- name: Handle Cache | |
uses: actions/cache@v2 | |
id: cache | |
with: | |
path: | | |
node_modules | |
**/node_modules | |
~/.cache/yarn | |
key: node-deps-${{ hashFiles('yarn.lock') }} | |
- name: Install Deps | |
if: steps.cache.outputs.cache-hit != 'true' | |
run: yarn install --cache-folder ~/.cache/yarn --prefer-offline --frozen-lockfile | |
- name: Run Full Build | |
run: yarn build | |
- name: Run Knapsack Test | |
run: yarn test | |
- name: Release | |
run: yarn auto shipit | |
env: | |
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
NPM_TOKEN: ${{ secrets.GITHUB_TOKEN }} |