Skip to content

Commit d12b4d5

Browse files
add grpc example
Signed-off-by: Achille Roussel <[email protected]>
1 parent 8cda43f commit d12b4d5

File tree

11 files changed

+475
-4
lines changed

11 files changed

+475
-4
lines changed

Makefile

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,30 @@
1-
.PHONY: test lint wasirun
1+
.PHONY: proto test lint wasirun
22

33
GOPATH ?= $(shell $(GO) env GOPATH)
44
wasirun = $(GOPATH)/bin/wasirun
55

66
packages.dir = $(wildcard */)
77
packages.test = $(packages.dir:/=.test)
8-
9-
test: wasirun $(packages.test)
8+
test: proto wasirun $(packages.test)
109
@for pkg in $(packages.test); do \
1110
tmp=$$(mktemp); \
1211
$(wasirun) $$pkg > $$tmp; \
1312
if (($$?)); then cat $$tmp; exit 1; else printf "ok\tgithub.com/stealthrocket/net/$$pkg\n"; fi \
1413
done
1514

15+
# go install google.golang.org/protobuf/cmd/[email protected]
16+
# go install google.golang.org/grpc/cmd/[email protected]
17+
grpc.proto = $(wildcard grpc/*.proto)
18+
grpc.pb.go = $(grpc.proto:.proto=.pb.go)
19+
proto: $(grpc.pb.go)
20+
1621
wasirun: $(wasirun)
1722

1823
$(wasirun):
1924
$(GO) install github.com/stealthrocket/wasi-go/cmd/wasirun@latest
2025

2126
%.test: %/
2227
cd $< && GOARCH=wasm GOOS=wasip1 $(GO) test -c -o ../$(notdir $@)
28+
29+
%.pb.go: %.proto
30+
protoc --go_out=. --go_opt=paths=source_relative --go-grpc_out=. --go-grpc_opt=paths=source_relative $<

go.work

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ go 1.20
22

33
use (
44
.
5+
./grpc
56
./mysql
67
./postgres
78
./redis

go.work.sum

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,7 @@
1-
golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg=
1+
golang.org/x/mod v0.8.0/go.mod h1:iBbtSCu2XBx23ZKBPSOrRkjjQPZFPuis4dIYUhu/chs=
2+
golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
3+
golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
4+
golang.org/x/term v0.8.0/go.mod h1:xPskH00ivmX89bAKVGSKKtLOWNx2+17Eiy94tnKShWo=
5+
golang.org/x/text v0.9.0 h1:2sjJmO8cDvYveuX97RDLsxlyUxLl+GHoLxBiRdHllBE=
6+
golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8=
7+
golang.org/x/tools v0.6.0/go.mod h1:Xwgl3UAJ/d3gWutnCtw505GrjyAbvKui8lOU390QaIU=

grpc/go.mod

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
module github.com/stealthrocket/net/grpc
2+
3+
go 1.20
4+
5+
require (
6+
google.golang.org/grpc v1.55.0
7+
google.golang.org/protobuf v1.30.0
8+
)
9+
10+
require (
11+
github.com/golang/protobuf v1.5.3 // indirect
12+
golang.org/x/net v0.8.0 // indirect
13+
golang.org/x/sys v0.6.0 // indirect
14+
golang.org/x/text v0.8.0 // indirect
15+
google.golang.org/genproto v0.0.0-20230306155012-7f2fa6fef1f4 // indirect
16+
)

grpc/go.sum

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk=
2+
github.com/golang/protobuf v1.5.3 h1:KhyjKVUg7Usr/dYsdSqoFveMYd5ko72D+zANwlG1mmg=
3+
github.com/golang/protobuf v1.5.3/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY=
4+
github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
5+
github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38=
6+
golang.org/x/net v0.8.0 h1:Zrh2ngAOFYneWTAIAPethzeaQLuHwhuBkuV6ZiRnUaQ=
7+
golang.org/x/net v0.8.0/go.mod h1:QVkue5JL9kW//ek3r6jTKnTFis1tRmNAW2P1shuFdJc=
8+
golang.org/x/sys v0.6.0 h1:MVltZSvRTcU2ljQOhs94SXPftV6DCNnZViHeQps87pQ=
9+
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
10+
golang.org/x/text v0.8.0 h1:57P1ETyNKtuIjB4SRd15iJxuhj8Gc416Y78H3qgMh68=
11+
golang.org/x/text v0.8.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8=
12+
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
13+
google.golang.org/genproto v0.0.0-20230306155012-7f2fa6fef1f4 h1:DdoeryqhaXp1LtT/emMP1BRJPHHKFi5akj/nbx/zNTA=
14+
google.golang.org/genproto v0.0.0-20230306155012-7f2fa6fef1f4/go.mod h1:NWraEVixdDnqcqQ30jipen1STv2r/n24Wb7twVTGR4s=
15+
google.golang.org/grpc v1.55.0 h1:3Oj82/tFSCeUrRTg/5E/7d/W5A1tj6Ky1ABAuZuv5ag=
16+
google.golang.org/grpc v1.55.0/go.mod h1:iYEXKGkEBhg1PjZQvoYEVPTDkHo1/bjTnfwTeGONTY8=
17+
google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw=
18+
google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc=
19+
google.golang.org/protobuf v1.30.0 h1:kPPoIgf3TsEvrm0PFe15JQ+570QVxYzEvvHqChK+cng=
20+
google.golang.org/protobuf v1.30.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I=

grpc/grpc.go

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
// Package grpc provides an example of gRPC client and server running in a
2+
// program compiled to GOOS=wasip1
3+
//
4+
// When compiling to other targets than GOOS=wasip1, importing this package has
5+
// no effect.
6+
package grpc

grpc/grpc.pb.go

Lines changed: 211 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

grpc/grpc.proto

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
syntax = "proto3";
2+
3+
option go_package = "github.com/stealthrocket/net/grpc";
4+
5+
package grpc;
6+
7+
service HelloService {
8+
rpc SayHello (HelloRequest) returns (HelloReply) {}
9+
}
10+
11+
message HelloRequest {
12+
string name = 1;
13+
}
14+
15+
message HelloReply {
16+
string text = 1;
17+
}

0 commit comments

Comments
 (0)