put asset set files in sub-dir #24
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
# Helpful Doc Links | |
# Workflow syntax - https://help.github.com/en/actions/reference/workflow-syntax-for-github-actions | |
# Context and expression syntax - https://help.github.com/en/actions/reference/context-and-expression-syntax-for-github-actions | |
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: | |
# Number of commits to fetch. 0 indicates all history for all branches and tags - needed for `auto` | |
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 | |
runs-on: ubuntu-latest | |
steps: | |
- name: Use actions/checkout@v2 | |
uses: actions/checkout@v2 | |
with: | |
# Number of commits to fetch. 0 indicates all history for all branches and tags - needed for `auto` | |
# Default: 1 | |
fetch-depth: 0 | |
- name: Use Node.js | |
uses: actions/setup-node@v1 | |
with: | |
node-version: 18 | |
# - name: Get yarn cache directory path | |
# id: yarn-cache-dir-path | |
# run: echo "::set-output name=dir::$(yarn cache dir)" | |
- name: Handle Cache | |
uses: actions/cache@v2 | |
# https://github.com/actions/cache/blob/master/examples.md#node---lerna | |
id: cache # use this to check for `cache-hit` (`steps.cache.outputs.cache-hit != 'true'`) | |
with: | |
path: | | |
node_modules | |
**/node_modules | |
~/.cache/yarn | |
key: node-deps-${{ hashFiles('yarn.lock') }} | |
# restore-keys: node-deps- | |
- name: Install Deps | |
if: steps.cache.outputs.cache-hit != 'true' | |
run: | | |
yarn cache clean | |
yarn install --immutable | |
env: | |
CYPRESS_INSTALL_BINARY: 0 # skipping big Cypress binary download. may cause problems later & need to remove or handle other ways. trying to keep CI speedy | |
- name: Run Full Build | |
run: yarn build | |
- name: Run Knapsack Test | |
run: yarn ks:test |