319 lines
11 KiB
YAML
319 lines
11 KiB
YAML
# 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-meet
|
|
|
|
# - 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-meet
|
|
# run: |
|
|
# cd openvidu-meet
|
|
# ./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-meet/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-meet
|
|
# # 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-meet/ 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-meet
|
|
# # 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-meet
|
|
# # 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-meet/ 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-meet
|
|
# # 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-meet
|
|
# # 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-meet/ 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-meet
|
|
# # 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-meet
|
|
|
|
# - 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-meet
|
|
# run: |
|
|
# cd openvidu-meet
|
|
# ./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-meet/frontend
|