Bump the npm group across 1 directory with 10 updates #12
Workflow file for this run
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: CI | |
on: | |
push: | |
branches: [main] | |
pull_request: | |
branches: [main] | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
node-version: [18.x, 20.x] | |
name: Build & Lint | |
steps: | |
- name: Checkout Code | |
uses: actions/checkout@v4 | |
- name: Build | |
uses: ./.github/actions/build | |
with: | |
node-version: ${{ matrix.node-version }} | |
- name: Security audit | |
run: npm audit --audit-level moderate | |
- name: Audit signatures | |
run: npm audit signatures | |
- name: Lint | |
run: npm run lint | |
test: | |
runs-on: ubuntu-latest | |
name: Test | |
strategy: | |
matrix: | |
node-version: [18.x, 20.x] | |
steps: | |
- name: Checkout Code | |
uses: actions/checkout@v4 | |
- name: Build | |
uses: ./.github/actions/build | |
with: | |
node-version: ${{ matrix.node-version }} | |
- name: Install dependencies | |
run: | | |
sudo apt update | |
sudo apt install -y ffmpeg | |
- name: Prepare test environment | |
run: | | |
# Configure IP address to pretend to be the Telekom streaming server | |
# and use it as the source for IPv4 multicast | |
sudo ip address add 87.141.215.251 dev eth0 | |
sudo ip route add 232.0.0.0/8 dev eth0 src 87.141.215.251 | |
- name: Start test stream | |
run: | | |
ffmpeg -re -f lavfi -i testsrc \ | |
-f rtp_mpegts -metadata service_provider="Entertain" -metadata service_name="Das Erste HD" \ | |
rtp://232.0.20.35:10000?localaddr=87.141.215.251 & | |
ffprobe -hide_banner rtp://232.0.20.35:10000?sources=87.141.215.251 | |
- name: Start IPTV-ReStream | |
run: | | |
wget -P ./data https://db.iptv.blog/multicastadressliste.json | |
DEBUG="iptv-restream:*" npm start & | |
sleep 5 | |
- name: Test multicast stream | |
run: | | |
timeout --signal SIGINT 5 \ | |
curl -v http://localhost:3000/live/[email protected]:10000 --output /tmp/stream || true | |
ffprobe -hide_banner /tmp/stream |