backend: Updated routes #38
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: E2E Tests | |
on: | |
push: | |
# paths: | |
# - 'openvidu-components-angular/**' | |
# - 'openvidu-browser/**' | |
# pull_request: | |
# branches: | |
# - master | |
repository_dispatch: | |
types: [openvidu-components-angular] | |
workflow_dispatch: | |
env: | |
CHROME_VERSION: latest | |
jobs: | |
# prepare_openvidu_components_angular: | |
# if: false | |
# name: Setup | |
# runs-on: ubuntu-latest | |
# steps: | |
# - env: | |
# COMMIT_MESSAGE: ${{ github.event.client_payload.commit-message }} | |
# COMMIT_REF: ${{ github.event.client_payload.commit-ref }} | |
# run: echo Commit openvidu-components-angular | |
# - uses: actions/setup-node@v4 | |
# with: | |
# node-version: '20' | |
# - name: Build openvidu-components-angular | |
# run: | | |
# git clone --depth 1 https://github.com/OpenVidu/openvidu openvidu && \ | |
# cd openvidu/openvidu-components-angular && \ | |
# npm install && \ | |
# npm run lib:build && \ | |
# npm run lib:pack && \ | |
# mv dist/openvidu-components-angular/openvidu-components-angular-*.tgz ../../ | |
# cd ../../ && \ | |
# rm -rf openvidu | |
# - uses: actions/upload-artifact@v4 | |
# with: | |
# name: artifacts | |
# path: ${{ github.workspace }}/**.tgz | |
# if-no-files-found: error | |
routes_guards_tests: | |
name: Guards and Routes | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout OpenVidu Local Deployment | |
uses: actions/checkout@v4 | |
with: | |
repository: OpenVidu/openvidu-local-deployment | |
ref: development | |
path: openvidu-local-deployment | |
- name: Configure Local Deployment | |
shell: bash | |
run: | | |
cd openvidu-local-deployment/community | |
./configure_lan_private_ip_linux.sh | |
docker compose up -d | |
- name: Wait for OpenVidu Local Deployment to Start | |
shell: bash | |
run: | | |
MAX_WAIT_SECONDS=60 | |
SECONDS=0 | |
until curl -s -f -o /dev/null http://localhost:7880; do | |
if [ $SECONDS -gt $MAX_WAIT_SECONDS ]; then | |
echo "OpenVidu Local Deployment did not start in $MAX_WAIT_SECONDS seconds" | |
exit 1 | |
fi | |
echo "Waiting for openvidu-local-deployment to be ready ..." | |
sleep 5 | |
SECONDS=$((SECONDS+5)) | |
done | |
echo "OpenVidu Local Deployment started in $SECONDS seconds" | |
- uses: actions/checkout@v4 | |
with: | |
ref: next | |
path: openvidu-call | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: '20' | |
- name: Run Chrome | |
run: docker run --network=host -d -p 4444:4444 selenium/standalone-chrome:${{ env.CHROME_VERSION }} | |
- name: Prepare openvidu-call | |
run: | | |
cd openvidu-call | |
./prepare.sh | |
cd frontend | |
npm run sync:backend | |
cd ../backend | |
npm run build:prod | |
npm run start:prod & | |
- name: Run tests | |
env: | |
LAUNCH_MODE: CI | |
APP_URL: http://localhost:6080 | |
run: npm run e2e:run-routes --prefix openvidu-call/frontend | |
# auth_e2e_test: | |
# if: false | |
# needs: prepare_openvidu_components_angular | |
# name: Auth tests | |
# runs-on: ubuntu-latest | |
# steps: | |
# - uses: actions/checkout@v4 | |
# - uses: actions/setup-node@v4 | |
# with: | |
# node-version: '20' | |
# - uses: actions/download-artifact@v4 | |
# with: | |
# name: artifacts | |
# # - name: Run Browserless Chrome | |
# # run: docker run -d -p 3000:3000 --network host browserless/chrome:1.53-chrome-stable | |
# - name: Run Chrome | |
# run: docker run --network=host -d -p 4444:4444 selenium/standalone-chrome:127.0 | |
# - name: Run openvidu-local-deployment | |
# run: | | |
# git clone --depth 1 https://github.com/OpenVidu/openvidu-local-deployment | |
# cd openvidu-local-deployment/community | |
# ./configure_lan_private_ip_linux.sh | |
# docker compose up -d | |
# - name: Install dependencies and build openvidu-call | |
# run: | | |
# npm install openvidu-components-angular-*.tgz --prefix frontend && \ | |
# npm install --prefix backend && \ | |
# npm run build:prod --prefix backend && \ | |
# npm run build:prod --prefix frontend && \ | |
# mv frontend/dist/openvidu-call/ backend/dist/public/ | |
# - name: Wait for openvidu-local-deployment | |
# run: | | |
# until curl -s -f -o /dev/null http://localhost:7880; do | |
# echo "Waiting for openvidu-local-deployment to be ready..." | |
# sleep 5 | |
# done | |
# - name: Serve openvidu-call | |
# env: | |
# MEET_PRIVATE_ACCESS: true | |
# run: npm run start --prefix backend & | |
# - name: Run tests | |
# env: | |
# LAUNCH_MODE: CI | |
# run: npm run e2e:run-auth --prefix frontend | |
# home_e2e_test: | |
# if: false | |
# needs: prepare_openvidu_components_angular | |
# name: Home tests | |
# runs-on: ubuntu-latest | |
# steps: | |
# - uses: actions/checkout@v4 | |
# - uses: actions/setup-node@v4 | |
# with: | |
# node-version: '20' | |
# - uses: actions/download-artifact@v4 | |
# with: | |
# name: artifacts | |
# # - name: Run Browserless Chrome | |
# # run: docker run -d -p 3000:3000 --network host browserless/chrome:1.53-chrome-stable | |
# - name: Run Chrome | |
# run: docker run --network=host -d -p 4444:4444 selenium/standalone-chrome:127.0 | |
# - name: Run openvidu-local-deployment | |
# run: | | |
# git clone --depth 1 https://github.com/OpenVidu/openvidu-local-deployment | |
# cd openvidu-local-deployment/community | |
# ./configure_lan_private_ip_linux.sh | |
# docker compose up -d | |
# - name: Install dependencies and build openvidu-call | |
# run: | | |
# npm install openvidu-components-angular-*.tgz --prefix frontend && \ | |
# npm install --prefix backend && \ | |
# npm run build:prod --prefix backend && \ | |
# npm run build:prod --prefix frontend && \ | |
# mv frontend/dist/openvidu-call/ backend/dist/public/ | |
# - name: Wait for openvidu-local-deployment | |
# run: | | |
# until curl -s -f -o /dev/null http://localhost:7880; do | |
# echo "Waiting for openvidu-local-deployment to be ready..." | |
# sleep 5 | |
# done | |
# - name: Serve openvidu-call | |
# run: npm run start --prefix backend & | |
# - name: Run tests | |
# env: | |
# LAUNCH_MODE: CI | |
# MEET_PRIVATE_ACCESS: false | |
# run: npm run e2e:run-home --prefix frontend | |
# room_e2e_test: | |
# if: false | |
# needs: prepare_openvidu_components_angular | |
# name: Room tests | |
# runs-on: ubuntu-latest | |
# steps: | |
# - uses: actions/checkout@v4 | |
# - uses: actions/setup-node@v4 | |
# with: | |
# node-version: '20' | |
# - uses: actions/download-artifact@v4 | |
# with: | |
# name: artifacts | |
# # - name: Run Browserless Chrome | |
# # run: docker run -d -p 3000:3000 --network host browserless/chrome:1.53-chrome-stable | |
# - name: Run Chrome | |
# run: docker run --network=host -d -p 4444:4444 selenium/standalone-chrome:127.0 | |
# - name: Run openvidu-local-deployment | |
# run: | | |
# git clone --depth 1 https://github.com/OpenVidu/openvidu-local-deployment | |
# cd openvidu-local-deployment/community | |
# ./configure_lan_private_ip_linux.sh | |
# docker compose up -d | |
# - name: Install dependencies and build openvidu-call | |
# run: | | |
# npm install openvidu-components-angular-*.tgz --prefix frontend && \ | |
# npm install --prefix backend && \ | |
# npm run build:prod --prefix backend && \ | |
# npm run build:prod --prefix frontend && \ | |
# mv frontend/dist/openvidu-call/ backend/dist/public/ | |
# - name: Wait for openvidu-local-deployment | |
# run: | | |
# until curl -s -f -o /dev/null http://localhost:7880; do | |
# echo "Waiting for openvidu-local-deployment to be ready..." | |
# sleep 5 | |
# done | |
# - name: Serve openvidu-call | |
# run: npm run start --prefix backend & | |
# - name: Run tests | |
# env: | |
# LAUNCH_MODE: CI | |
# MEET_PRIVATE_ACCESS: false | |
# run: npm run e2e:run-room --prefix frontend | |
recording_e2e_test: | |
name: Recordings tests | |
runs-on: ubuntu-latest | |
steps: | |
- name: Install ffmpeg | |
run: | | |
sudo apt-get update | |
sudo apt-get install -y ffmpeg | |
- name: Checkout OpenVidu Local Deployment | |
uses: actions/checkout@v4 | |
with: | |
repository: OpenVidu/openvidu-local-deployment | |
ref: development | |
path: openvidu-local-deployment | |
- name: Configure Local Deployment | |
shell: bash | |
run: | | |
cd openvidu-local-deployment/community | |
./configure_lan_private_ip_linux.sh | |
docker compose up -d | |
- name: Wait for OpenVidu Local Deployment to Start | |
shell: bash | |
run: | | |
MAX_WAIT_SECONDS=60 | |
SECONDS=0 | |
until curl -s -f -o /dev/null http://localhost:7880; do | |
if [ $SECONDS -gt $MAX_WAIT_SECONDS ]; then | |
echo "OpenVidu Local Deployment did not start in $MAX_WAIT_SECONDS seconds" | |
exit 1 | |
fi | |
echo "Waiting for openvidu-local-deployment to be ready ..." | |
sleep 5 | |
SECONDS=$((SECONDS+5)) | |
done | |
echo "OpenVidu Local Deployment started in $SECONDS seconds" | |
- uses: actions/checkout@v4 | |
with: | |
ref: next | |
path: openvidu-call | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: '22.13.1' | |
- name: Run Chrome | |
run: | | |
mkdir -p /tmp/downloads | |
docker run --network=host \ | |
-v /tmp/downloads:/tmp/downloads \ | |
-d selenium/standalone-chrome:${{ env.CHROME_VERSION }} | |
# grant permissions to the /tmp/downloads folder | |
docker exec -u root \ | |
$(docker ps -q --filter ancestor=selenium/standalone-chrome:${{ env.CHROME_VERSION }}) \ | |
chmod 777 /tmp/downloads | |
- name: Prepare openvidu-call | |
run: | | |
cd openvidu-call | |
./prepare.sh | |
cd frontend | |
npm run sync:backend | |
cd ../backend | |
npm run build:prod | |
npm run start:prod & | |
- name: Run tests | |
env: | |
LAUNCH_MODE: CI | |
APP_URL: http://localhost:6080 | |
run: npm run e2e:run-recordings --prefix openvidu-call/frontend |