Skip to content

Merge pull request #133 from percolate/chore/fix-yml-syntax #10

Merge pull request #133 from percolate/chore/fix-yml-syntax

Merge pull request #133 from percolate/chore/fix-yml-syntax #10

name: Build and Deploy
on:
push:
branches:
- master
jobs:
core:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: '0'
submodules: 'recursive'
- uses: actions/setup-node@v3
with:
node-version: '14'
- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get install -y ca-certificates git openssh-client
yarn --pure-lockfile --cache-folder /tmp/.yarn_cache
- name: Cache node modules
uses: actions/cache@v3
with:
path: |
node_modules
/tmp/.yarn_cache
key: ${{ runner.os }}-node-${{ hashFiles('yarn.lock') }}
restore-keys: |
${{ runner.os }}-node-
- name: NPM login
run: echo "//registry.npmjs.org/:_authToken=${{ secrets.NPMJS_TOKEN }}" >> ~/.npmrc
- name: Verify .git directory
run: ls -la .git
- name: Build, verify, ts, lint, commit validate, test, and coverage
run: npx lerna run build && npx kona verify && npx kona ts && npx kona lint && npx kona commit validate && npx kona test --coverage && npx kona coverage
- name: Deploy
if: github.ref == 'refs/heads/master'
run: yarn lerna:publish --yes
- name: Store test results
uses: actions/upload-artifact@v3
with:
name: reports
path: tmp/reports
press:
needs: core
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- uses: actions/setup-node@v3
with:
node-version: '14'
- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get install -y ca-certificates git openssh-client
yarn --pure-lockfile --cache-folder /tmp/.yarn_cache
- name: NPM login
run: echo "//registry.npmjs.org/:_authToken=${{ secrets.NPMJS_TOKEN }}" >> ~/.npmrc
- name: Install Press
run: yarn global add @percolate/press
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
- name: Build and push Docker images
env:
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
run: |
docker build --build-arg NPMJS_TOKEN=${{ secrets.NPMJS_TOKEN }} --build-arg VERSION=$(press --version) --tag blend/press pkgs/press
press push blend/press --repo="percolate/blend/press" --semver=$(press --version)