Skip to content

Fix duplicated source code in built libraries #265

Fix duplicated source code in built libraries

Fix duplicated source code in built libraries #265

name: Check health of libraries
on:
workflow_dispatch:
push:
paths:
- "Common/**"
- "Signalling/**"
- "SignallingWebServer/**"
- "Frontend/library/**"
- "Frontend/ui-library/**"
- "Frontend/implementations/typescript/**"
pull_request:
paths:
- "Common/**"
- "Signalling/**"
- "SignallingWebServer/**"
- "Frontend/library/**"
- "Frontend/ui-library/**"
- "Frontend/implementations/typescript/**"
env:
NODE_VERSION: 18.17.x
jobs:
build-using-local-deps:
if: github.repository == 'EpicGamesExt/PixelStreamingInfrastructure'
runs-on: ubuntu-latest
steps:
- name: Checkout source code
uses: actions/checkout@v3
- uses: actions/setup-node@v4
with:
node-version: "${{ env.NODE_VERSION }}"
registry-url: 'https://registry.npmjs.org'
- name: Clean build and lint checks on common library
working-directory: Common
run: npm install && npm run build && npm run lint
- name: Clean build and lint checks on signalling library
working-directory: Signalling
run: npm install && npm run build && npm run lint
- name: Clean build and lint checks on wilbur
working-directory: SignallingWebServer
run: npm install && npm run build && npm run lint
- name: Clean build, lint and unit tests on frontend library
working-directory: Frontend/library
run: npm install && npm run build && npm run lint && npm run test
- name: Clean build and lint checks on frontend ui library
working-directory: Frontend/ui-library
run: npm install && npm run build && npm run lint
- name: Clean build of frontend implementation
working-directory: Frontend/implementations/typescript
run: npm install && npm run build
build-signalling-only:
if: github.repository == 'EpicGamesExt/PixelStreamingInfrastructure'
runs-on: ubuntu-latest
steps:
- name: Checkout source code
uses: actions/checkout@v3
with:
sparse-checkout: 'Signalling'
sparse-checkout-cone-mode: false
- uses: actions/setup-node@v4
with:
node-version: "${{ env.NODE_VERSION }}"
registry-url: 'https://registry.npmjs.org'
- name: Build signalling using published packages only
working-directory: Signalling
run: npm install && npm run build && npm run lint
build-wilbur-only:
if: github.repository == 'EpicGamesExt/PixelStreamingInfrastructure'
runs-on: ubuntu-latest
steps:
- name: Checkout source code
uses: actions/checkout@v3
with:
sparse-checkout: 'SignallingWebServer'
sparse-checkout-cone-mode: false
- uses: actions/setup-node@v4
with:
node-version: "${{ env.NODE_VERSION }}"
registry-url: 'https://registry.npmjs.org'
- name: Build Wilbur using published packages only
working-directory: SignallingWebServer
run: npm install && npm run build && npm run lint
build-frontend-only:
if: github.repository == 'EpicGamesExt/PixelStreamingInfrastructure'
runs-on: ubuntu-latest
steps:
- name: Checkout source code
uses: actions/checkout@v3
with:
sparse-checkout: 'Frontend/library'
sparse-checkout-cone-mode: false
- uses: actions/setup-node@v4
with:
node-version: "${{ env.NODE_VERSION }}"
registry-url: 'https://registry.npmjs.org'
- name: Build Frontend/library using published packages only
working-directory: Frontend/library
run: npm install && npm run build && npm run lint && npm run test
build-frontend-ui-only:
if: github.repository == 'EpicGamesExt/PixelStreamingInfrastructure'
runs-on: ubuntu-latest
steps:
- name: Checkout source code
uses: actions/checkout@v3
with:
sparse-checkout: 'Frontend/ui-library'
sparse-checkout-cone-mode: false
- uses: actions/setup-node@v4
with:
node-version: "${{ env.NODE_VERSION }}"
registry-url: 'https://registry.npmjs.org'
- name: Build Frontend/ui-library using published packages only
working-directory: Frontend/ui-library
run: npm install && npm run build && npm run lint
build-implementation-typescript-only:
if: github.repository == 'EpicGamesExt/PixelStreamingInfrastructure'
runs-on: ubuntu-latest
steps:
- name: Checkout source code
uses: actions/checkout@v3
with:
sparse-checkout: 'Frontend/implementations/typescript'
sparse-checkout-cone-mode: false
- uses: actions/setup-node@v4
with:
node-version: "${{ env.NODE_VERSION }}"
registry-url: 'https://registry.npmjs.org'
- name: Build Frontend/implementations/typescript using published packages only
working-directory: Frontend/implementations/typescript
run: npm install && npm run build