Initial project import
This commit is contained in:
commit
23f2d29e32
11957 files changed
+1754577
No files matched your search
+104
@@ -0,0 +1,104 @@
|
||||
name: Websockets CI
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
paths-ignore:
|
||||
- '**.md'
|
||||
- '**.yml'
|
||||
- '!**/websockets_ci.yml'
|
||||
- 'cmd/tools/**'
|
||||
- '!cmd/tools/builders/**.v'
|
||||
pull_request:
|
||||
paths-ignore:
|
||||
- '**.md'
|
||||
- '**.yml'
|
||||
- '!**/websockets_ci.yml'
|
||||
- 'cmd/tools/**'
|
||||
- '!cmd/tools/builders/**.v'
|
||||
|
||||
concurrency:
|
||||
group: websockets-${{ github.workflow }}-${{ github.ref == 'refs/heads/master' && github.sha || github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
websocket_tests:
|
||||
runs-on: ubuntu-24.04
|
||||
timeout-minutes: 121
|
||||
env:
|
||||
VFLAGS: -cc tcc -no-retry-compilation
|
||||
steps:
|
||||
- uses: actions/checkout@v7
|
||||
- uses: ./.github/actions/cache-apt-packages-action
|
||||
- name: Build v
|
||||
run: |
|
||||
echo "$VFLAGS"
|
||||
sudo ln -s "$PWD/thirdparty/tcc/tcc.exe" /usr/local/bin/tcc ## TODO: remove
|
||||
make -j4 && ./v symlink
|
||||
./v -g -o v cmd/v
|
||||
- name: Install dependencies
|
||||
run: v retry -- sudo apt install --quiet -y libssl-dev
|
||||
- name: v doctor
|
||||
run: ./v doctor
|
||||
- name: Run websockets tests
|
||||
run: ./v -g test vlib/net/websocket/
|
||||
|
||||
## Autobahn integrations tests
|
||||
- name: Run autobahn services
|
||||
run: docker compose -f ${{github.workspace}}/vlib/net/websocket/tests/autobahn/docker-compose.yml up -d
|
||||
|
||||
- name: Wait for the service to start
|
||||
run: sleep 10s
|
||||
|
||||
- name: Build client test
|
||||
run: docker exec autobahn_client "/src/v" "/src/vlib/net/websocket/tests/autobahn/autobahn_client.v"
|
||||
- name: Run client test
|
||||
run: docker exec autobahn_client "/src/vlib/net/websocket/tests/autobahn/autobahn_client"
|
||||
|
||||
- name: Build client wss test
|
||||
run: docker exec autobahn_client "/src/v" "/src/vlib/net/websocket/tests/autobahn/autobahn_client_wss.v"
|
||||
|
||||
- name: Run client wss test
|
||||
run: docker exec autobahn_client "/src/vlib/net/websocket/tests/autobahn/autobahn_client_wss"
|
||||
- name: Run server test
|
||||
run: docker exec autobahn_server "wstest" "-m" "fuzzingclient" "-s" "/config/fuzzingclient.json"
|
||||
|
||||
- name: Copy reports
|
||||
run: docker cp autobahn_server:/reports ${{github.workspace}}/reports
|
||||
- name: Copy reports wss
|
||||
run: docker cp autobahn_server_wss:/reports ${{github.workspace}}/reports_wss
|
||||
- name: Test success
|
||||
run: docker exec autobahn_server "python" "/check_results.py"
|
||||
- name: Test success WSS
|
||||
run: docker exec autobahn_server_wss "python" "/check_results.py"
|
||||
|
||||
- name: Publish all reports
|
||||
uses: actions/upload-artifact@v7
|
||||
with:
|
||||
name: full report
|
||||
path: ${{github.workspace}}/reports
|
||||
|
||||
- name: Publish report client
|
||||
uses: actions/upload-artifact@v7
|
||||
with:
|
||||
name: client
|
||||
path: ${{github.workspace}}/reports/clients/index.html
|
||||
|
||||
- name: Publish report server
|
||||
uses: actions/upload-artifact@v7
|
||||
with:
|
||||
name: server
|
||||
path: ${{github.workspace}}/reports/servers/index.html
|
||||
|
||||
- name: Publish all reports WSS
|
||||
uses: actions/upload-artifact@v7
|
||||
with:
|
||||
name: full report wss
|
||||
path: ${{github.workspace}}/reports_wss
|
||||
|
||||
- name: Publish report client wss
|
||||
uses: actions/upload-artifact@v7
|
||||
with:
|
||||
name: client wss
|
||||
path: ${{github.workspace}}/reports_wss/clients/index.html
|
||||
Reference in new issue
Block a user