166 lines
3.7 KiB
YAML
166 lines
3.7 KiB
YAML
# https://help.github.com/en/categories/automating-your-workflow-with-github-actions
|
|
|
|
name: "Continuous Integration"
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- master
|
|
- develop
|
|
pull_request:
|
|
|
|
jobs:
|
|
|
|
continuous-integration-front:
|
|
name: "Continuous Integration Front"
|
|
|
|
runs-on: "ubuntu-latest"
|
|
|
|
steps:
|
|
- name: "Checkout"
|
|
uses: "actions/checkout@v2.0.0"
|
|
|
|
- name: "Setup NodeJS"
|
|
uses: actions/setup-node@v1
|
|
with:
|
|
node-version: '14.x'
|
|
|
|
- name: Install Protoc
|
|
uses: arduino/setup-protoc@v1
|
|
with:
|
|
version: '3.x'
|
|
|
|
- name: "Install dependencies"
|
|
run: yarn install
|
|
working-directory: "front"
|
|
|
|
- name: "Install messages dependencies"
|
|
run: yarn install
|
|
working-directory: "messages"
|
|
|
|
- name: "Build proto messages"
|
|
run: yarn run proto && yarn run copy-to-front
|
|
working-directory: "messages"
|
|
|
|
- name: "Create index.html"
|
|
run: ./templater.sh
|
|
working-directory: "front"
|
|
|
|
- name: "Build"
|
|
run: yarn run build
|
|
env:
|
|
PUSHER_URL: "//localhost:8080"
|
|
working-directory: "front"
|
|
|
|
- name: "Svelte check"
|
|
run: yarn run svelte-check
|
|
working-directory: "front"
|
|
|
|
- name: "Lint"
|
|
run: yarn run lint
|
|
working-directory: "front"
|
|
|
|
- name: "Jasmine"
|
|
run: yarn test
|
|
working-directory: "front"
|
|
|
|
# We will enable prettier checks on front in a few month, when most PRs without prettier have been merged
|
|
# - name: "Prettier"
|
|
# run: yarn run pretty-check
|
|
# working-directory: "front"
|
|
|
|
continuous-integration-pusher:
|
|
name: "Continuous Integration Pusher"
|
|
|
|
runs-on: "ubuntu-latest"
|
|
|
|
steps:
|
|
- name: "Checkout"
|
|
uses: "actions/checkout@v2.0.0"
|
|
|
|
- name: "Setup NodeJS"
|
|
uses: actions/setup-node@v1
|
|
with:
|
|
node-version: '12.x'
|
|
|
|
- name: Install Protoc
|
|
uses: arduino/setup-protoc@v1
|
|
with:
|
|
version: '3.x'
|
|
|
|
- name: "Install dependencies"
|
|
run: yarn install
|
|
working-directory: "pusher"
|
|
|
|
- name: "Install messages dependencies"
|
|
run: yarn install
|
|
working-directory: "messages"
|
|
|
|
- name: "Build proto messages"
|
|
run: yarn run proto && yarn run copy-to-pusher
|
|
working-directory: "messages"
|
|
|
|
- name: "Build"
|
|
run: yarn run tsc
|
|
working-directory: "pusher"
|
|
|
|
- name: "Lint"
|
|
run: yarn run lint
|
|
working-directory: "pusher"
|
|
|
|
- name: "Jasmine"
|
|
run: yarn test
|
|
working-directory: "pusher"
|
|
|
|
- name: "Prettier"
|
|
run: yarn run pretty-check
|
|
working-directory: "pusher"
|
|
|
|
continuous-integration-back:
|
|
name: "Continuous Integration Back"
|
|
|
|
runs-on: "ubuntu-latest"
|
|
|
|
steps:
|
|
- name: "Checkout"
|
|
uses: "actions/checkout@v2.0.0"
|
|
|
|
- name: "Setup NodeJS"
|
|
uses: actions/setup-node@v1
|
|
with:
|
|
node-version: '12.x'
|
|
|
|
- name: Install Protoc
|
|
uses: arduino/setup-protoc@v1
|
|
with:
|
|
version: '3.x'
|
|
|
|
- name: "Install dependencies"
|
|
run: yarn install
|
|
working-directory: "back"
|
|
|
|
- name: "Install messages dependencies"
|
|
run: yarn install
|
|
working-directory: "messages"
|
|
|
|
- name: "Build proto messages"
|
|
run: yarn run proto && yarn run copy-to-back
|
|
working-directory: "messages"
|
|
|
|
- name: "Build"
|
|
run: yarn run tsc
|
|
working-directory: "back"
|
|
|
|
- name: "Lint"
|
|
run: yarn run lint
|
|
working-directory: "back"
|
|
|
|
- name: "Jasmine"
|
|
run: yarn test
|
|
working-directory: "back"
|
|
|
|
- name: "Prettier"
|
|
run: yarn run pretty-check
|
|
working-directory: "back"
|
|
|