123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 |
- name: examples 0.13
- on:
- workflow_dispatch:
- inputs:
- logLevel:
- description: 'Log level'
- required: true
- default: 'info'
- push:
- branches: [ main ]
- pull_request:
- branches: [ main ]
- jobs:
- build:
- runs-on: ubuntu-20.04
- steps:
- - uses: actions/checkout@v2
- - name: Install apt-get packages
- run: |
- sudo ACCEPT_EULA=Y apt-get update
- sudo ACCEPT_EULA=Y apt-get upgrade
- sudo apt-get install wget git curl software-properties-common build-essential
- - name: Install Rust target
- run: |
- rustup target add wasm32-wasi
- - name: Install WasmEdge
- run: |
- VERSION=0.13.5
- curl -sSf https://raw.githubusercontent.com/WasmEdge/WasmEdge/master/utils/install.sh | sudo bash -s -- -e all --version=$VERSION --tf-version=$VERSION --tf-deps-version=$VERSION --tf-tools-version=$VERSION --image-version=$VERSION -p /usr/local
- # Disable this example due to it relies on wasmedge_http_req, which is a cyclic dependence
- # - name: HTTP client example
- # run: |
- # cd examples/http_client/
- # cargo build --target wasm32-wasi --release
- # wasmedge target/wasm32-wasi/release/http_client.wasm
- - name: HTTP async client example
- run: |
- cd examples/nonblock_http_client/
- cargo build --target wasm32-wasi --release
- wasmedge target/wasm32-wasi/release/nonblock_http_client.wasm
- - name: HTTP server example
- run: |
- cd examples/http_server/
- cargo build --target wasm32-wasi --release
- nohup wasmedge target/wasm32-wasi/release/http_server.wasm &
- echo $! > wasmedge.pid
- wasmedge_pid=$(cat wasmedge.pid)
- sleep 5
- echo "fds:"
- ls /proc/$wasmedge_pid/fd
- resp=$(curl -X POST http://127.0.0.1:1234 -d "name=WasmEdge")
- echo "Server response is $resp"
- resp=$(curl -X POST http://127.0.0.1:1234 -d "name=WasmEdge")
- resp=$(curl -X POST http://127.0.0.1:1234 -d "name=WasmEdge")
- resp=$(curl -X POST http://127.0.0.1:1234 -d "name=WasmEdge")
- resp=$(curl -X POST http://127.0.0.1:1234 -d "name=WasmEdge")
- resp=$(curl -X POST http://127.0.0.1:1234 -d "name=WasmEdge")
- echo "after 6 request, fds:"
- ls /proc/$wasmedge_pid/fd
- kill -9 $wasmedge_pid
- rm wasmedge.pid
- - name: UDP Socket Example
- run: |
- cargo build --target wasm32-wasi --example=udp_socket --release
- wasmedge target/wasm32-wasi/release/examples/udp_socket.wasm
- - name: DNS Example
- run: |
- cargo build --target wasm32-wasi --example=get_addrinfo --release
- wasmedge target/wasm32-wasi/release/examples/get_addrinfo.wasm
- - name: ToSocketAddrs Example
- run: |
- cargo build --target wasm32-wasi --example=socket_addr --release
- wasmedge target/wasm32-wasi/release/examples/socket_addr.wasm
|