forked from containerd/runwasi
-
Notifications
You must be signed in to change notification settings - Fork 3
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Signed-off-by: vincent <[email protected]>
- Loading branch information
1 parent
8916c2f
commit 6a229c3
Showing
1 changed file
with
95 additions
and
0 deletions.
There are no files selected for viewing
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,95 @@ | ||
name: docker-demo | ||
|
||
concurrency: | ||
group: ${{ github.workflow }}-${{ github.head_ref || github.ref }} | ||
cancel-in-progress: true | ||
|
||
on: | ||
workflow_dispatch: | ||
inputs: | ||
logLevel: | ||
description: 'Log level' | ||
required: true | ||
default: 'info' | ||
push: | ||
branches: | ||
- "main" | ||
schedule: | ||
- cron: "0 0 */1 * *" | ||
|
||
jobs: | ||
run-all-examples: | ||
|
||
runs-on: ubuntu-latest | ||
|
||
steps: | ||
|
||
- uses: actions/checkout@v3 | ||
with: | ||
submodules: recursive | ||
|
||
- name: Manually update GitHub's containerd | ||
run: | | ||
wget https://github.com/containerd/containerd/releases/download/v1.7.5/containerd-1.7.5-linux-amd64.tar.gz | ||
sudo tar Czxvf /usr containerd-1.7.5-linux-amd64.tar.gz | ||
sudo systemctl restart containerd | ||
- name: Set up Docker | ||
uses: crazy-max/ghaction-setup-docker@v2 | ||
with: | ||
daemon-config: | | ||
{ | ||
"debug": true, | ||
"features": { | ||
"containerd-snapshotter": true | ||
} | ||
} | ||
- name: Install and run MySQL | ||
run: | | ||
sudo apt-get update | ||
sudo apt-get -y install mysql-server libmysqlclient-dev curl | ||
sudo service mysql start | ||
mysql -e "PURGE BINARY LOGS BEFORE now();" -uroot -proot | ||
- name: Install default wasmedge shim from ctr opt control mechanism | ||
run: | | ||
sudo ctr content fetch ghcr.io/second-state/runwasi-wasmedge:latest | ||
sudo ctr install ghcr.io/second-state/runwasi-wasmedge:latest -l -r | ||
- name: Run basic test case | ||
run: docker run --rm --runtime=io.containerd.wasmedge.v1 --platform wasi/wasm ghcr.io/second-state/runwasi-demo:wasi-demo-app echo 'hello' | ||
|
||
- name: Run hyper client example | ||
run: docker run --rm --runtime=io.containerd.wasmedge.v1 --platform wasi/wasm ghcr.io/second-state/runwasi-demo:wasmedge_hyper_client | ||
|
||
- name: Run hyper server example | ||
run: | | ||
docker run --name server -p 8080:8080 -d --rm --runtime=io.containerd.wasmedge.v1 \ | ||
--platform wasi/wasm ghcr.io/second-state/runwasi-demo:wasmedge_hyper_server | ||
sleep 3 | ||
curl http://localhost:8080/echo -X POST -d "WasmEdge" | ||
docker stop server | ||
- name: Run reqwest demo example | ||
run: docker run --rm --runtime=io.containerd.wasmedge.v1 --platform wasi/wasm ghcr.io/second-state/runwasi-demo:wasmedge_reqwest_demo | ||
|
||
- name: Run rootfs mounts example | ||
run: | | ||
docker run --rm --runtime=io.containerd.wasmedge.v1 --platform wasi/wasm \ | ||
-v $PWD/demo/rootfs-mounts:/mnt \ | ||
ghcr.io/second-state/runwasi-demo:wasmedge-rootfs-mounts-demo | ||
- name: Install WASI-NN PyTorch plugin | ||
run: | | ||
sudo ctr content fetch ghcr.io/second-state/runwasi-wasmedge-plugin:lib.wasi_nn-pytorch | ||
sudo ctr install ghcr.io/second-state/runwasi-wasmedge-plugin:lib.wasi_nn-pytorch -l -r | ||
- name: Run WASI-NN PyTorch example | ||
run: | | ||
docker run --rm --runtime=io.containerd.wasmedge.v1 --platform wasi/wasm \ | ||
-v /opt/containerd/lib:/opt/containerd/lib \ | ||
-v $PWD/demo/wasinn/pytorch-mobilenet-image:/resource \ | ||
--env WASMEDGE_PLUGIN_PATH=/opt/containerd/lib \ | ||
ghcr.io/second-state/runwasi-demo:wasmedge-wasinn-example-mobilenet-image \ | ||
resource/mobilenet.pt /resource/input.jpg |