Skip to content

Link queue wrapper to log the link queue occupancy #1578

Link queue wrapper to log the link queue occupancy

Link queue wrapper to log the link queue occupancy #1578

Workflow file for this run

name: "CI"
on: [push, pull_request]
jobs:
test:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest]
node-version:
- 18.x
- 20.x
steps:
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- name: Ensure line endings are consistent
run: git config --global core.autocrlf input
- name: Check out repository
uses: actions/checkout@v3
- name: Load cache
uses: actions/cache@v3
with:
path: |
**/node_modules
key: ${{ runner.os }}-test-modules-v1-${{ hashFiles('**/yarn.lock') }}
- name: Install dependencies
run: yarn install --frozen-lockfile
- name: Build project
run: yarn run build
- name: Run tests
run: export NODE_OPTIONS="--max_old_space_size=4096" && yarn run test-ci
- name: Run browser tests
run: yarn run test-browser
- name: Submit coverage results
uses: coverallsapp/github-action@master
with:
github-token: ${{ secrets.github_token }}
flag-name: run-${{ matrix.node-version }}
parallel: true
coveralls:
needs: test
runs-on: ubuntu-latest
steps:
- name: Consolidate test coverage from different jobs
uses: coverallsapp/github-action@master
with:
github-token: ${{ secrets.github_token }}
parallel-finished: true
lint:
runs-on: ubuntu-latest
steps:
- name: Use Node.js
uses: actions/setup-node@v3
with:
node-version: '18.x'
- name: Check out repository
uses: actions/checkout@v3
- name: Load cache
uses: actions/cache@v3
with:
path: '**/node_modules'
key: ${{ runner.os }}-lint-modules-v1-${{ hashFiles('**/yarn.lock') }}
- name: Install dependencies
run: yarn install --frozen-lockfile
- name: Run linter
run: yarn run lint
docker:
needs:
- test
- lint
runs-on: ubuntu-latest
steps:
- name: Use Node.js
uses: actions/setup-node@v3
with:
node-version: '18.x'
- name: Check out repository
uses: actions/checkout@v3
- name: Load cache
uses: actions/cache@v3
with:
path: '**/node_modules'
key: ${{ runner.os }}-docker-modules-v1-${{ hashFiles('**/yarn.lock') }}
- name: Install dependencies
run: yarn install --frozen-lockfile
- name: Install Lerna Docker
run: sh -c "`curl -fsSl https://raw.githubusercontent.com/rubensworks/lerna-docker/master/install.sh`"
- name: Build Docker images
run: ~/.lerna-docker/bin/lerna-docker comunica build
- name: Deploy Docker images
if: startsWith(github.ref, 'refs/heads/master') || startsWith(github.ref, 'refs/tags/')
run: ~/.lerna-docker/bin/lerna-docker comunica push
env:
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
docs:
runs-on: ubuntu-latest
steps:
- name: Use Node.js
uses: actions/setup-node@v3
with:
node-version: '18.x'
- name: Check out repository
uses: actions/checkout@v3
- name: Load cache
uses: actions/cache@v3
with:
path: '**/node_modules'
key: ${{ runner.os }}-docs-modules-v1-${{ hashFiles('**/yarn.lock') }}
- name: Install dependencies
run: yarn install --frozen-lockfile
- name: Build docs
run: yarn run doc
- name: Deploy TSDoc to GitHub Pages
if: startsWith(github.ref, 'refs/heads/master')
uses: JamesIves/github-pages-deploy-action@v4.4.1
with:
branch: gh-pages
folder: documentation
clean: true
webclients:
needs:
- test
- lint
runs-on: ubuntu-latest
steps:
- name: Use Node.js
uses: actions/setup-node@v3
with:
node-version: '18.x'
- name: Check out repository
uses: actions/checkout@v3
- name: Load cache
uses: actions/cache@v3
with:
path: '**/node_modules'
key: ${{ runner.os }}-webclients-modules-v1-${{ hashFiles('**/yarn.lock') }}
- name: Install dependencies
run: yarn install --frozen-lockfile
- name: Build web clients
run: ./web-clients/build-web-clients.sh
- name: Deploy web clients
if: startsWith(github.ref, 'refs/heads/master')
run: ./web-clients/deploy-web-clients.sh
env:
GH_TOKEN: ${{ secrets.PAT }}