Update .gitignore #62
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: CI | |
on: | |
push: | |
branches: | |
- develop | |
- main | |
pull_request: | |
branches: | |
- develop | |
- main | |
permissions: read-all | |
env: | |
NODE_ENV: development | |
SLACK_CHANNEL: ${{ secrets.SLACK_CHANNEL }} | |
SLACK_SIGNING_SECRET: ${{ secrets.SLACK_SIGNING_SECRET }} | |
SLACK_TOKEN: ${{ secrets.SLACK_TOKEN }} | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
timeout-minutes: 15 | |
strategy: | |
matrix: | |
node_version: [14.x, 16.x, 18.x] | |
steps: | |
- name: Check out | |
uses: actions/checkout@v3 | |
- name: Set up Node.js ${{ matrix.node_version }} | |
uses: actions/setup-node@v3 | |
id: node | |
with: | |
node-version: ${{ matrix.node_version }} | |
- name: Send Slack notification | |
uses: codedsolar/slack-action@v1 | |
if: ${{ github.event_name != 'pull_request' }} | |
id: slack | |
with: | |
status: in-progress | |
fields: | | |
{STATUS} | |
{REF} | |
Node.js: ${{ steps.node.outputs.node-version }} | |
- name: Install dependencies | |
run: yarn install --ignore-scripts | |
- name: Build | |
run: yarn build | |
env: | |
NODE_ENV: production | |
- name: Update Slack notification | |
uses: codedsolar/slack-action@v1 | |
if: ${{ github.event_name != 'pull_request' && always() }} | |
with: | |
status: ${{ job.status }} | |
timestamp: ${{ steps.slack.outputs.slack-timestamp }} | |
fields: | | |
{STATUS} | |
{REF} | |
Node.js: ${{ steps.node.outputs.node-version }} | |
lint: | |
runs-on: ubuntu-latest | |
timeout-minutes: 15 | |
strategy: | |
matrix: | |
node_version: [19.x] | |
steps: | |
- name: Check out | |
uses: actions/checkout@v3 | |
- name: Set up Node.js ${{ matrix.node_version }} | |
uses: actions/setup-node@v3 | |
id: node | |
with: | |
node-version: ${{ matrix.node_version }} | |
- name: Send Slack notification | |
uses: codedsolar/slack-action@v1 | |
if: ${{ github.event_name != 'pull_request' }} | |
id: slack | |
with: | |
status: in-progress | |
fields: | | |
{STATUS} | |
{REF} | |
Node.js: ${{ steps.node.outputs.node-version }} | |
ESLint issues: Checking... | |
Prettier issues: Checking... | |
- name: Install dependencies | |
run: yarn install --ignore-scripts | |
- name: Lint | |
id: lint | |
run: | | |
yarn ci:eslint || true | |
yarn ci:prettier || true | |
yarn lint || true | |
- name: Lint results | |
id: lint-results | |
run: | | |
export LINT_ISSUES=$((${{ steps.lint.outputs.eslint-issues || 0 }} + ${{ steps.lint.outputs.prettier-issues || 0 }})) | |
if [ "${LINT_ISSUES}" -eq 0 ]; then exit 0; else exit 1; fi | |
- name: Update Slack notification | |
uses: codedsolar/slack-action@v1 | |
if: ${{ github.event_name != 'pull_request' && always() }} | |
with: | |
status: ${{ job.status }} | |
timestamp: ${{ steps.slack.outputs.slack-timestamp }} | |
fields: | | |
{STATUS} | |
{REF} | |
Node.js: ${{ steps.node.outputs.node-version }} | |
ESLint issues: ${{ steps.lint.outputs.eslint-issues || 'Skipped' }} | |
Prettier issues: ${{ steps.lint.outputs.prettier-issues || 'Skipped' }} | |
test: | |
runs-on: ubuntu-latest | |
timeout-minutes: 15 | |
strategy: | |
matrix: | |
node_version: [14.x, 16.x, 18.x] | |
steps: | |
- name: Check out | |
uses: actions/checkout@v3 | |
- name: Set up Node.js ${{ matrix.node_version }} | |
uses: actions/setup-node@v3 | |
id: node | |
with: | |
node-version: ${{ matrix.node_version }} | |
- name: Send Slack notification | |
uses: codedsolar/slack-action@v1 | |
if: ${{ github.event_name != 'pull_request' }} | |
id: slack | |
with: | |
status: in-progress | |
fields: | | |
{STATUS} | |
{REF} | |
Node.js: ${{ steps.node.outputs.node-version }} | |
Total / Passed: Checking... | |
Coverage: Checking... | |
- name: Install dependencies | |
run: yarn install --ignore-scripts | |
- name: Test | |
id: test | |
run: yarn ci:test | |
- name: Update Slack notification | |
uses: codedsolar/slack-action@v1 | |
if: ${{ github.event_name != 'pull_request' && always() }} | |
with: | |
status: ${{ job.status }} | |
timestamp: ${{ steps.slack.outputs.slack-timestamp }} | |
fields: | | |
{STATUS} | |
{REF} | |
Node.js: ${{ steps.node.outputs.node-version }} | |
Total / Passed: ${{ steps.test.outputs.total || 0 }} / ${{ steps.test.outputs.passed || 0 }} | |
Coverage: ${{ steps.test.outputs.coverage || 'Skipped' }} | |
- name: Send Codecov report | |
if: ${{ !env.ACT }} | |
uses: codecov/codecov-action@v3 | |
with: | |
token: ${{ secrets.CODECOV_TOKEN }} | |
- name: Send Code Climate report | |
uses: paambaati/codeclimate-action@v3.2.0 | |
if: ${{ !env.ACT && github.event_name != 'pull_request' }} | |
env: | |
CC_TEST_REPORTER_ID: ${{ secrets.CC_TEST_REPORTER_ID }} |