From ab944a83cc017947690dd9672cf396e801c8aacd Mon Sep 17 00:00:00 2001 From: chimurai <655241+chimurai@users.noreply.github.com> Date: Mon, 3 May 2021 09:23:32 +0200 Subject: [PATCH] ci(github-actions): ci.yml (#587) --- .github/workflows/ci.yml | 97 +++++++++++++++++++++++++++++++++ .github/workflows/coveralls.yml | 25 --------- .github/workflows/lint.yml | 17 ------ .github/workflows/test.yml | 22 -------- README.md | 2 +- package.json | 1 + 6 files changed, 99 insertions(+), 65 deletions(-) create mode 100644 .github/workflows/ci.yml delete mode 100644 .github/workflows/coveralls.yml delete mode 100644 .github/workflows/lint.yml delete mode 100644 .github/workflows/test.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 00000000..43166513 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,97 @@ +name: CI + +on: ['push', 'pull_request'] + +jobs: + lint: + name: Lint + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + - name: Use Node.js 16.x + uses: actions/setup-node@v2 + with: + node-version: 16.x + + - uses: actions/cache@v2 + id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`) + with: + path: '**/node_modules' + key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} + restore-keys: | + ${{ runner.os }}-yarn- + + - name: yarn install + if: steps.yarn-cache.outputs.cache-hit != 'true' # Over here! + run: yarn install --frozen-lockfile + + - name: yarn lint + run: yarn lint + + env: + CI: true + + test: + name: Test + runs-on: ubuntu-latest + + strategy: + matrix: + node-version: [12.x, 14.x, 16.x] + + steps: + - uses: actions/checkout@v2 + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v2 + with: + node-version: ${{ matrix.node-version }} + + - uses: actions/cache@v2 + id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`) + with: + path: '**/node_modules' + key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} + restore-keys: | + ${{ runner.os }}-yarn- + + - name: yarn install + if: steps.yarn-cache.outputs.cache-hit != 'true' # Over here! + run: yarn install --frozen-lockfile + + - name: yarn test + run: yarn test + + env: + CI: true + + coverage: + name: Coverage + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + - name: Use Node.js 16.x + uses: actions/setup-node@v2 + with: + node-version: 16.x + + - uses: actions/cache@v2 + id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`) + with: + path: '**/node_modules' + key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} + restore-keys: | + ${{ runner.os }}-yarn- + + - name: yarn install + if: steps.yarn-cache.outputs.cache-hit != 'true' # Over here! + run: yarn install --frozen-lockfile + + - name: yarn coverage + run: yarn coverage + + - name: Coveralls + uses: coverallsapp/github-action@master + with: + github-token: ${{ secrets.github_token }} diff --git a/.github/workflows/coveralls.yml b/.github/workflows/coveralls.yml deleted file mode 100644 index 8fcb0000..00000000 --- a/.github/workflows/coveralls.yml +++ /dev/null @@ -1,25 +0,0 @@ -on: ['push', 'pull_request'] - -name: Coveralls - -jobs: - build: - name: coveralls/build - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@master - - - name: Use Node.js 14.x - uses: actions/setup-node@master - with: - node-version: 14.x - - - name: yarn install, coverage - run: | - yarn install - yarn coverage - - - name: Coveralls - uses: coverallsapp/github-action@master - with: - github-token: ${{ secrets.github_token }} diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml deleted file mode 100644 index d91a4f32..00000000 --- a/.github/workflows/lint.yml +++ /dev/null @@ -1,17 +0,0 @@ -name: Lint - -on: ['push', 'pull_request'] - -jobs: - run-linters: - name: Run linters - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v2 - - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v2 - with: - node-version: ${{ matrix.node-version }} - - run: yarn install - - run: yarn lint diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml deleted file mode 100644 index 34004dc4..00000000 --- a/.github/workflows/test.yml +++ /dev/null @@ -1,22 +0,0 @@ -name: Test - -on: ['push', 'pull_request'] - -jobs: - build: - name: Test with Node.js ${{ matrix.node-version }} - - runs-on: ubuntu-latest - - strategy: - matrix: - node-version: [10.x, 12.x, 14.x] - - steps: - - uses: actions/checkout@v2 - - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v2 - with: - node-version: ${{ matrix.node-version }} - - run: yarn install - - run: yarn test diff --git a/README.md b/README.md index 95d96627..e214f656 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # http-proxy-middleware -[![GitHub Workflow Status (branch)](https://img.shields.io/github/workflow/status/chimurai/http-proxy-middleware/Test/master?style=flat-square)](https://github.com/chimurai/http-proxy-middleware/actions?query=branch%3Amaster) +[![GitHub Workflow Status (branch)](https://img.shields.io/github/workflow/status/chimurai/http-proxy-middleware/CI/master?style=flat-square)](https://github.com/chimurai/http-proxy-middleware/actions?query=branch%3Amaster) [![Coveralls](https://img.shields.io/coveralls/chimurai/http-proxy-middleware.svg?style=flat-square)](https://coveralls.io/r/chimurai/http-proxy-middleware) [![dependency Status](https://img.shields.io/david/chimurai/http-proxy-middleware.svg?style=flat-square)](https://david-dm.org/chimurai/http-proxy-middleware#info=dependencies) [![dependency Status](https://snyk.io/test/npm/http-proxy-middleware/badge.svg?style=flat-square)](https://snyk.io/test/npm/http-proxy-middleware) diff --git a/package.json b/package.json index 15495583..17a0769c 100644 --- a/package.json +++ b/package.json @@ -19,6 +19,7 @@ "build": "tsc", "pretest": "yarn build", "test": "jest", + "precoverage": "yarn build", "coverage": "jest --coverage --coverageReporters=lcov", "prepare": "yarn build && rm dist/tsconfig.tsbuildinfo" },