Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WeTEE Network Milestone 2 Delivery #1119

Merged
merged 4 commits into from
Feb 26, 2024
Merged

Conversation

BurnWW
Copy link
Contributor

@BurnWW BurnWW commented Jan 27, 2024

Milestone Delivery Checklist

  • The milestone-delivery-template.md has been copied and updated.
  • This pull request is being made by the same account as the accepted application.
  • I have disclosed any and all sources of reused code in the submitted repositories and have done my due diligence to meet its license requirements.
  • In case of acceptance, an invoice must be submitted and the payment will be transferred to the Polkadot/fiat account provided in the application.
  • The delivery is according to the Guidelines for Milestone Deliverables.

Link to the application pull request: w3f/Grants-Program#2065

@dsm-w3f
Copy link
Contributor

dsm-w3f commented Feb 15, 2024

Hi, I'll evaluate this milestone. @keeganquigley could you please assign it to me?

@dsm-w3f
Copy link
Contributor

dsm-w3f commented Feb 15, 2024

Hi @BurnWW, I tried to install the software using these instructions but I'm having an error while running make install instruction.

I'm using an Intel 7th gen CPU and Ubuntu 20.04.

I ran make install and got this error:

make install
test -s /home/user/workspace/w3f/worker/bin/controller-gen && /home/user/workspace/w3f/worker/bin/controller-gen --version | grep -q v0.13.0 || \
GOBIN=/home/user/workspace/w3f/worker/bin go install sigs.k8s.io/controller-tools/cmd/[email protected]
can't load package: package sigs.k8s.io/controller-tools/cmd/[email protected]: can only use path@version syntax with 'go get'
make: *** [Makefile:169: /home/user/workspace/w3f/worker/bin/controller-gen] Error 1

Can you help with that?

I'm using the go version go1.13.8 linux/amd64.

@BurnWW
Copy link
Contributor Author

BurnWW commented Feb 16, 2024

Thank you @dsm-w3f , I have already fully understood the problem.
I see that your golang version is 1.13, which is the default golang version for Ubuntu 20.04, but this version is rather outdated. We currently recommend using the go 1.20 version, and you can install and switch to the new version of golang by following the command below.

sudo apt remove golang

# Install golang 1.20 ,ubuntu 20.04 default golang version is 1.13, is too low 
sudo apt install golang-1.20

# set golang env, also you can add it to .bashrc file(in home dir) or .zshrc file(in home dir)
export GOROOT=/usr/lib/go-1.20/
export PATH=$PATH:$GOROOT/bin

We have also checked recent updates to the code and made the following updates in the documentation:

    1. Updated the Docker image for chain towetee/wetee-node:dev.2024-02-16-20_40
    1. Documentation for installing and configuring the Golang environment.

After updating golang, please update the worker’s code and execute the following command.

git pull
go mod tidy
sudo chmod 744 /etc/rancher/k3s/k3s.yaml

@dsm-w3f
Copy link
Contributor

dsm-w3f commented Feb 16, 2024

@BurnWW thanks for the answer. I tried again, but is not working yet. This is the Go language version that I'm using currently. I installed it using snap.

go version
go version go1.21.6 linux/amd64

When I try to run without docker I got this error:

sh hack/dev.sh
mkdir: cannot create directory ‘/opt/wetee-worker’: File exists

/home/user/workspace/w3f/worker/bin/controller-gen rbac:roleName=manager-role crd webhook paths="./..." output:crd:artifacts:config=config/crd/bases
/home/user/workspace/w3f/worker/bin/controller-gen object:headerFile="hack/boilerplate.go.txt" paths="./..."
go fmt ./...
go vet ./...
rm -f  bin/manager
cd bin && export KUBECONFIG=/etc/kube/config &&  \
        ego-go build -o manager ../cmd/main.go && \
        ego sign manager && \
        ego run ./manager
go: errors parsing go.mod:
/home/user/workspace/w3f/worker/go.mod:5: unknown directive: toolchain
make: *** [Makefile:84: run] Error 1

When I tried to run with docker I got this other one

docker run --device /dev/sgx/enclave --device /dev/sgx/provision --network host -e KUBECONFIG=/etc/kube/config -v /etc/rancher/k3s:/etc/rancher/k3s wetee/worker:dev
Unable to find image 'wetee/worker:dev' locally
dev: Pulling from wetee/worker
edaedc954fb5: Pull complete 
cf6d27f4425f: Pull complete 
990a29630794: Pull complete 
25beea55acce: Pull complete 
eb032c327707: Pull complete 
6aa96f1a0359: Pull complete 
Digest: sha256:a537675ee61a86a382fdfdc9ed3a01e2cd22cdc31f9282cd6782ac1b3fbdc072
Status: Downloaded newer image for wetee/worker:dev
ERRO[0030] error waiting for container:                 
docker: Error response from daemon: error gathering device information while adding custom device "/dev/sgx/enclave": no such file or directory.

Can you assist with these problems?

@BurnWW
Copy link
Contributor Author

BurnWW commented Feb 17, 2024

Thank you @dsm-w3f , I have already fully understood the problem.
These are two problems that need to be inspected and addressed individually in this way.

/home/user/workspace/w3f/worker/go.mod:5: unknown directive: toolchain make: *** [Makefile:84: run] Error 1

This error occurs because the Golang version defined in our go.mod file is 1.20, and executing go mod tidy with Golang 1.21 will result in a reference to toolchain go1.21.6 being generated in the go.mod file. We have updated the go.mod file, and the default Golang version is now 1.21. Run git pull to get the latest code, which should resolve the issue.

docker: Error response from daemon: error gathering device information while adding custom device "/dev/sgx/enclave": no such file or directory.

This issue is caused by the incomplete installation of ego and SGX SDK on the host machine.
Since ego depends on a complete SGX SDK, the following command is guaranteed to fully install the SGX environment.

sudo apt install build-essential libssl-dev

sudo mkdir -p /etc/apt/keyrings
wget -qO- https://download.01.org/intel-sgx/sgx_repo/ubuntu/intel-sgx-deb.key | sudo tee /etc/apt/keyrings/intel-sgx-keyring.asc > /dev/null
echo "deb [signed-by=/etc/apt/keyrings/intel-sgx-keyring.asc arch=amd64] https://download.01.org/intel-sgx/sgx_repo/ubuntu $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/intel-sgx.list
sudo apt update

EGO_DEB=ego_1.4.1_amd64_ubuntu-$(lsb_release -rs).deb
wget https://github.com/edgelesssys/ego/releases/download/v1.4.1/$EGO_DEB
sudo apt install ./$EGO_DEB build-essential libssl-dev

After the installation is completed, executing cpuid -1 -l 0x7 | grep SGX will display the following information, indicating that the sgx environment has been successfully configured.

$ cpuid -1 -l 0x7 |grep SGX                 
SGX: Software Guard Extensions supported = true
SGX_LC: SGX launch config supported      = true

$ sudo ls /dev/sgx
enclave  provision

@dsm-w3f
Copy link
Contributor

dsm-w3f commented Feb 19, 2024

Hi @BurnWW thanks for the improvements. I tried again but look like that my CPU doesn't support one of the features needed to run the software. When I ran the command below I got a different answer than the expected.

cpuid -1 -l 0x7 | grep SGX
      SGX: Software Guard Extensions supported = true
      SGX_LC: SGX launch config supported      = false

I'll try to run it using some cloud service. Do you already tried this approach? Do you recommend some of them? It looks like that Microsoft has one that supports SGX.

@BurnWW
Copy link
Contributor Author

BurnWW commented Feb 20, 2024

@dsm-w3f I’m truly sorry that we haven’t fully researched the support of intel 7th cpu for the ego program, which has caused inconvenience to your verification process. After checking, we found out that SGX FLC is supported starting from intel 8th generation processors, and we have already corrected the documentation accordingly. I will go back to investigate the cloud service and provide you with the test results as soon as possible. Once again, please accept my apologies.

@BurnWW
Copy link
Contributor Author

BurnWW commented Feb 20, 2024

hello @dsm-w3f, I’ve conducted a comprehensive research on the Azure operating environment, and I found that Azure fully meets the requirements for software debugging and usage.
This is the official tutorial and documentation https://learn.microsoft.com/en-us/azure/confidential-computing/quick-create-portal

Free trial accounts do not have access to the VMs in this tutorial. Please upgrade to a Pay-As-You-Go subscription.

This is the configuration for the virtual machine I created.

Select DC2s_v2 size

WX20240220-183323@2x

This is the result of my test in azure DC2s_v2 virtual machine.

WX20240220-183754@2x

@BurnWW
Copy link
Contributor Author

BurnWW commented Feb 20, 2024

hello @dsm-w3f, Due to the inability to directly use https://polkadot.js.org/apps for debugging non-https blockchain nodes in a cloud-based debugging environment, I am providing a copy of the http version of Polkadot UI for convenient debugging at http://polkadot-ui.tc.asyou.me/.

@dsm-w3f
Copy link
Contributor

dsm-w3f commented Feb 21, 2024

Hi @BurnWW, thanks for the explanation. I set up a virtual machine in Azure with the same type of instance that you did. I was able to run the installation instructions. However, in the last step, when running without docker, I received this logs, which indicate that something is not ok. Could you assist with that? Is this in a state that I can proceed with the tests?

sh hack/dev.sh
mkdir: cannot create directory ‘/opt/wetee-worker’: File exists

Makefile:65: warning: overriding recipe for target 'fmt'
Makefile:57: warning: ignoring old recipe for target 'fmt'
Makefile:69: warning: overriding recipe for target 'vet'
Makefile:61: warning: ignoring old recipe for target 'vet'
test -s /home/azureuser/worker/bin/controller-gen && /home/azureuser/worker/bin/controller-gen --version | grep -q v0.13.0 || \
GOBIN=/home/azureuser/worker/bin go install sigs.k8s.io/controller-tools/cmd/[email protected]
/home/azureuser/worker/bin/controller-gen rbac:roleName=manager-role crd webhook paths="./..." output:crd:artifacts:config=config/crd/bases
/home/azureuser/worker/bin/controller-gen object:headerFile="hack/boilerplate.go.txt" paths="./..."
rm -f  bin/manager
cd bin && export KUBECONFIG=/etc/kube/config &&  \
        ego-go build -o manager ../cmd/main.go && \
        ego sign manager && \
        ego run ./manager
EGo v1.4.1 (8b99356398dd3bcb5f74e5194d20ce421f607404)
EGo v1.4.1 (8b99356398dd3bcb5f74e5194d20ce421f607404)
[erthost] loading enclave ...
[erthost] entering enclave ...
[ego] starting application ...
Loading: Load from env
LoadingRules: &{ [/etc/kube/config] map[.kube/config:.kube/.kubeconfig] false <nil> true <nil>}
2024-02-21T16:54:43Z    INFO    setup   starting manager
2024/02/21 16:54:43 connect to http://localhost:8880/ for GraphQL playground
MintKey =>  5FUBwrwgnxRmRShJJvLEihw7cJ33nuY6cYhGoxVyJx6HMX8o
2024/02/21 16:54:43 connect to http://0.0.0.0:8883 for InCluster server
2024-02-21T16:54:43Z    INFO    controller-runtime.metrics      Starting metrics server
2024-02-21T16:54:43Z    INFO    controller-runtime.metrics      Serving metrics server  {"bindAddress": ":8180", "secure": false}
2024-02-21T16:54:43Z    INFO    starting server {"kind": "health probe", "addr": "[::]:8181"}
2024-02-21T16:54:43Z    INFO    Starting EventSource    {"controller": "app", "controllerGroup": "secret.wetee.app", "controllerKind": "App", "source": "kind source: *v1.App"}
2024-02-21T16:54:43Z    INFO    Starting Controller     {"controller": "app", "controllerGroup": "secret.wetee.app", "controllerKind": "App"}
2024-02-21T16:54:43Z    INFO    Starting EventSource    {"controller": "task", "controllerGroup": "secret.wetee.app", "controllerKind": "Task", "source": "kind source: *v1.Task"}
2024-02-21T16:54:43Z    INFO    Starting Controller     {"controller": "task", "controllerGroup": "secret.wetee.app", "controllerKind": "Task"}
ClusterId =>  GetK8sClusterAccountsLatest => not ok
2024-02-21T16:54:43Z    INFO    Starting workers        {"controller": "task", "controllerGroup": "secret.wetee.app", "controllerKind": "Task", "worker count": 1}
2024-02-21T16:54:43Z    INFO    Starting workers        {"controller": "app", "controllerGroup": "secret.wetee.app", "controllerKind": "App", "worker count": 1}
ClusterId =>  GetK8sClusterAccountsLatest => not ok
ClusterId =>  GetK8sClusterAccountsLatest => not ok
ClusterId =>  GetK8sClusterAccountsLatest => not ok

I ran with docker and got a different error, see the logs below:

 docker run --device /dev/sgx/enclave --device /dev/sgx/provision --network host -e KUBECONFIG=/etc/kube/config -v /etc/rancher/k3s:/etc/rancher/k3s wetee/worker:dev
Unable to find image 'wetee/worker:dev' locally
dev: Pulling from wetee/worker
edaedc954fb5: Pull complete 
cf6d27f4425f: Pull complete 
990a29630794: Pull complete 
25beea55acce: Pull complete 
ec967e51deb3: Pull complete 
9af71a9600ef: Pull complete 
Digest: sha256:6148c00402e3429445a944f7c0636e4f37a514a218850c963227aac620877785
Status: Downloaded newer image for wetee/worker:dev
EGo v1.4.1 (8b99356398dd3bcb5f74e5194d20ce421f607404)
[erthost] loading enclave ...
[erthost] entering enclave ...
[ego] starting application ...
Loading: Load from env
LoadingRules: &{ [/etc/kube/config] map[.kube/config:.kube/.kubeconfig] false <nil> true <nil>}
MintKey =>  5FUBwrwgnxRmRShJJvLEihw7cJ33nuY6cYhGoxVyJx6HMX8o
2024-02-21T16:59:44Z    INFO    setup   starting manager
2024/02/21 16:59:44 connect to http://0.0.0.0:8883 for InCluster server
2024/02/21 16:59:44 connect to http://localhost:8880/ for GraphQL playground
ClusterId =>  GetK8sClusterAccountsLatest => not ok
2024-02-21T16:59:44Z    INFO    controller-runtime.metrics      Starting metrics server
2024-02-21T16:59:44Z    INFO    controller-runtime.metrics      Serving metrics server  {"bindAddress": ":8180", "secure": false}
2024-02-21T16:59:44Z    INFO    starting server {"kind": "health probe", "addr": "[::]:8181"}
2024-02-21T16:59:44Z    INFO    Starting EventSource    {"controller": "app", "controllerGroup": "secret.wetee.app", "controllerKind": "App", "source": "kind source: *v1.App"}
2024-02-21T16:59:44Z    INFO    Starting Controller     {"controller": "app", "controllerGroup": "secret.wetee.app", "controllerKind": "App"}
2024-02-21T16:59:44Z    INFO    Starting EventSource    {"controller": "task", "controllerGroup": "secret.wetee.app", "controllerKind": "Task", "source": "kind source: *v1.Task"}
2024-02-21T16:59:44Z    INFO    Starting Controller     {"controller": "task", "controllerGroup": "secret.wetee.app", "controllerKind": "Task"}
2024-02-21T16:59:44Z    ERROR   controller-runtime.source.EventHandler  failed to get informer from cache       {"error": "failed to get API group resources: unable to retrieve the complete list of server APIs: secret.wetee.app/v1: Get \"https://127.0.0.1:6443/apis/secret.wetee.app/v1\": tls: failed to verify certificate: x509: certificate signed by unknown authority"}
sigs.k8s.io/controller-runtime/pkg/internal/source.(*Kind).Start.func1.1
        /home/wetee/go/pkg/mod/sigs.k8s.io/[email protected]/pkg/internal/source/kind.go:68
k8s.io/apimachinery/pkg/util/wait.loopConditionUntilContext.func1
        /home/wetee/go/pkg/mod/k8s.io/[email protected]/pkg/util/wait/loop.go:49
k8s.io/apimachinery/pkg/util/wait.loopConditionUntilContext
        /home/wetee/go/pkg/mod/k8s.io/[email protected]/pkg/util/wait/loop.go:50
k8s.io/apimachinery/pkg/util/wait.PollUntilContextCancel
        /home/wetee/go/pkg/mod/k8s.io/[email protected]/pkg/util/wait/poll.go:33
sigs.k8s.io/controller-runtime/pkg/internal/source.(*Kind).Start.func1
        /home/wetee/go/pkg/mod/sigs.k8s.io/[email protected]/pkg/internal/source/kind.go:56
2024-02-21T16:59:44Z    ERROR   controller-runtime.source.EventHandler  failed to get informer from cache       {"error": "failed to get API group resources: unable to retrieve the complete list of server APIs: secret.wetee.app/v1: Get \"https://127.0.0.1:6443/apis/secret.wetee.app/v1\": tls: failed to verify certificate: x509: certificate signed by unknown authority"}
sigs.k8s.io/controller-runtime/pkg/internal/source.(*Kind).Start.func1.1
        /home/wetee/go/pkg/mod/sigs.k8s.io/[email protected]/pkg/internal/source/kind.go:68
k8s.io/apimachinery/pkg/util/wait.loopConditionUntilContext.func2
        /home/wetee/go/pkg/mod/k8s.io/[email protected]/pkg/util/wait/loop.go:73
k8s.io/apimachinery/pkg/util/wait.loopConditionUntilContext
        /home/wetee/go/pkg/mod/k8s.io/[email protected]/pkg/util/wait/loop.go:74
k8s.io/apimachinery/pkg/util/wait.PollUntilContextCancel
        /home/wetee/go/pkg/mod/k8s.io/[email protected]/pkg/util/wait/poll.go:33
sigs.k8s.io/controller-runtime/pkg/internal/source.(*Kind).Start.func1
        /home/wetee/go/pkg/mod/sigs.k8s.io/[email protected]/pkg/internal/source/kind.go:56
2024-02-21T16:59:44Z    ERROR   controller-runtime.source.EventHandler  failed to get informer from cache       {"error": "failed to get API group resources: unable to retrieve the complete list of server APIs: secret.wetee.app/v1: Get \"https://127.0.0.1:6443/apis/secret.wetee.app/v1\": tls: failed to verify certificate: x509: certificate signed by unknown authority"}
sigs.k8s.io/controller-runtime/pkg/internal/source.(*Kind).Start.func1.1
        /home/wetee/go/pkg/mod/sigs.k8s.io/[email protected]/pkg/internal/source/kind.go:68
k8s.io/apimachinery/pkg/util/wait.loopConditionUntilContext.func1
        /home/wetee/go/pkg/mod/k8s.io/[email protected]/pkg/util/wait/loop.go:49
k8s.io/apimachinery/pkg/util/wait.loopConditionUntilContext
        /home/wetee/go/pkg/mod/k8s.io/[email protected]/pkg/util/wait/loop.go:50
k8s.io/apimachinery/pkg/util/wait.PollUntilContextCancel
        /home/wetee/go/pkg/mod/k8s.io/[email protected]/pkg/util/wait/poll.go:33
sigs.k8s.io/controller-runtime/pkg/internal/source.(*Kind).Start.func1
        /home/wetee/go/pkg/mod/sigs.k8s.io/[email protected]/pkg/internal/source/kind.go:56
2024-02-21T16:59:44Z    ERROR   controller-runtime.source.EventHandler  failed to get informer from cache       {"error": "failed to get API group resources: unable to retrieve the complete list of server APIs: secret.wetee.app/v1: Get \"https://127.0.0.1:6443/apis/secret.wetee.app/v1\": tls: failed to verify certificate: x509: certificate signed by unknown authority"}
sigs.k8s.io/controller-runtime/pkg/internal/source.(*Kind).Start.func1.1
        /home/wetee/go/pkg/mod/sigs.k8s.io/[email protected]/pkg/internal/source/kind.go:68
k8s.io/apimachinery/pkg/util/wait.loopConditionUntilContext.func2
        /home/wetee/go/pkg/mod/k8s.io/[email protected]/pkg/util/wait/loop.go:73
k8s.io/apimachinery/pkg/util/wait.loopConditionUntilContext
        /home/wetee/go/pkg/mod/k8s.io/[email protected]/pkg/util/wait/loop.go:74
k8s.io/apimachinery/pkg/util/wait.PollUntilContextCancel
        /home/wetee/go/pkg/mod/k8s.io/[email protected]/pkg/util/wait/poll.go:33
sigs.k8s.io/controller-runtime/pkg/internal/source.(*Kind).Start.func1
        /home/wetee/go/pkg/mod/sigs.k8s.io/[email protected]/pkg/internal/source/kind.go:56
ClusterId =>  GetK8sClusterAccountsLatest => not ok

@BurnWW
Copy link
Contributor Author

BurnWW commented Feb 22, 2024

@dsm-w3f I see that you have already run the program, and there’s an error in the expression of this debug log:

ClusterId => GetK8sClusterAccountsLatest => not ok

I’ve replaced it with ClusterId => clusterId not found, mint not started, and the appearance of this new log message indicates that the program has indeed successfully started running.

About docker run logs

controller-runtime.source.EventHandler failed to get informer from cache {"error": "failed to get API group resources: unable to retrieve the complete list of server APIs: secret.wetee.app/v1: Get "https://127.0.0.1:6443/apis/secret.wetee.app/v1\": tls: failed to verify certificate: x509: certificate signed by unknown authority"}

We haven’t encountered this error before. Would it be convenient to open a Matrix channel so that we can quickly understand and resolve the issue? If possible, please join the channel below.

https://matrix.to/#/!yRyTqmQdvbcHCtMIHa:matrix.org?via=matrix.org

@BurnWW
Copy link
Contributor Author

BurnWW commented Feb 22, 2024

hello @dsm-w3f, I reproduced this issue by reinstalling the environment.

controller-runtime.source.EventHandler failed to get informer from cache {"error": "failed to get API group resources: unable to retrieve the complete list of server APIs: secret.wetee.app/v1: Get "https://127.0.0.1:6443/apis/secret.wetee.app/v1\": tls: failed to verify certificate: x509: certificate signed by unknown authority"}

I have update new docker image, The solution can be achieved by following these steps.

docker pull wetee/worker:dev
docker run --device /dev/sgx/enclave --device /dev/sgx/provision \
     --network host \
     -e KUBECONFIG=/etc/kube/config \
     -v /etc/rancher/k3s:/etc/rancher/k3s \
     wetee/worker:dev

@dsm-w3f
Copy link
Contributor

dsm-w3f commented Feb 23, 2024

@BurnWW thanks for explanations and fixes. I was able to run the system and a first round of evaluation is available in this PR. Please provide the proper answers and fixes. Let me know when I can continue this evaluation.

@BurnWW
Copy link
Contributor Author

BurnWW commented Feb 24, 2024

@dsm-w3f thank you for your opinion.

azureuser@weteevm:~/examples/my-ego-app$ ego-go build main.go
go: errors parsing go.mod:
/home/azureuser/examples/my-ego-app/go.mod:3: invalid go version '1.22.0': must match format 1.23

The problem has been well resolved and will no longer result in execution errors due to golang version issues.

I followed this guide to test. The test didn't have any problem. One doubt, is it expected to finalize the task a few blocks after its creation?

Here we will provide a better testing method; currently,i have push new docker image wetee/grust-app-dalay ,The program will execute for 20 seconds, which is ample time for thorough testing and observation.

git clone https://github.com/integritee-network/worker && cd worker
go test ./...

There is not a particularly strong connection between the two projects, which is due to the fact that the test document was not thoroughly reviewed, leading to elementary errors.
Currently, we are referring to the security logic of integritee-network/worker(rust) to enhance the security of our golang program and the stability of the miners, which led to us mistakenly copying an incorrect link from the browser address bar in our test documentation. Although we do not use the same programming language(There is no overlap or intersection of any lines of code.) as integritee-network, nor do we have identical functionalities, the security logic and protective measures between substrate and Enclave are consistent. We sincerely apologize for making such a basic mistake.

The examples work, but the ego-http-server needs instructions to build the hello.go.
The examples could have a better explanation about them on the Readme.md.
Can you explain where are the C, C++ and Python examples?

In this case, nginx is an example written in C language, and I will provide examples of both C++ programs and Python programs.

@BurnWW
Copy link
Contributor Author

BurnWW commented Feb 24, 2024

@dsm-w3f Thank you very much, this is a significant oversight.
Due to the excessive similarity between examples in C++ and Python, compared with Nginx (written in C), we have not included them in the code. We have now examined all the instances and incorporated examples in Rust and C++.

c https://github.com/wetee-dao/examples/tree/main/gramine-c
c++ https://github.com/wetee-dao/examples/tree/main/gramine-c%2B%2B
python https://github.com/wetee-dao/examples/tree/main/gramine-python

All the issues have now been resolved, and testing can continue. If any further problems arise, we will respond immediately.

@dsm-w3f
Copy link
Contributor

dsm-w3f commented Feb 26, 2024

@BurnWW thank you for the improvements and fixes. I checked again and the milestone is accepted from my site. Just a small issue with the docker that could be fixed but don't prevent the acceptance of the milestone. See details in the evaluation PR. Thanks for the collaboration, great job!

@keeganquigley the PR with the evaluation is open and updated.

@keeganquigley
Copy link
Contributor

Thanks for the quick fixes @BurnWW your evaluation was accepted and I hereby pass this milestone. Nice work!

@keeganquigley keeganquigley merged commit a3c1fba into w3f:master Feb 26, 2024
3 checks passed
Copy link

🪙 Please fill out the invoice form in order to initiate the payment process. Thank you!

@BurnWW
Copy link
Contributor Author

BurnWW commented Feb 27, 2024

@dsm-w3f hello, I have investigated the cause of the warning in detail.

(libos_arch_prctl.c:81:libos_syscall_arch_prctl) [P1:T1:my-gramine-app] warning: Not supported flag (0x3001) passed to arch_prctl

A more specific warning has been found through adjustment.
(libos_parser.c:1647:warn_unsupported_syscall) [P1:T1:ls] warning: Unsupported system call rseq

this warning is generated by gramine, and it exists in all gramine official cases. I will continue to pay attention to and follow up this warning

@RouvenP
Copy link

RouvenP commented Mar 15, 2024

hi @BurnWW we sent the payment today

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants