|
97 | 97 | go-version: ${{ matrix.go-version }} |
98 | 98 | - name: Checkout code |
99 | 99 | uses: actions/checkout@v4 |
| 100 | + with: |
| 101 | + submodules: 'true' |
100 | 102 | - name: Build shared library |
101 | 103 | working-directory: spannerlib/shared |
102 | 104 | run: go build -o spannerlib.so -buildmode=c-shared shared_lib.go |
@@ -124,10 +126,42 @@ jobs: |
124 | 126 | fi |
125 | 127 | working-directory: spannerlib/wrappers/spannerlib-dotnet/spannerlib-dotnet-native |
126 | 128 | shell: bash |
| 129 | + - name: Build gRPC server |
| 130 | + working-directory: spannerlib/grpc-server |
| 131 | + run: | |
| 132 | + go build -o grpc_server server.go |
| 133 | + chmod +x grpc_server |
| 134 | + - name: Copy gRPC server to .NET wrapper |
| 135 | + working-directory: spannerlib |
| 136 | + run: | |
| 137 | + mkdir -p wrappers/spannerlib-dotnet/spannerlib-dotnet-grpc-server/binaries/any |
| 138 | + if [ "$RUNNER_OS" == "Windows" ]; then |
| 139 | + cp grpc-server/grpc_server wrappers/spannerlib-dotnet/spannerlib-dotnet-grpc-server/binaries/any/grpc_server.exe |
| 140 | + else |
| 141 | + cp grpc-server/grpc_server wrappers/spannerlib-dotnet/spannerlib-dotnet-grpc-server/binaries/any/grpc_server |
| 142 | + fi |
| 143 | + shell: bash |
| 144 | + - name: Build .NET gRPC server package |
| 145 | + run: dotnet pack |
| 146 | + working-directory: spannerlib/wrappers/spannerlib-dotnet/spannerlib-dotnet-grpc-server |
| 147 | + shell: bash |
| 148 | + - name: Add .NET package source |
| 149 | + run: | |
| 150 | + if [ "$RUNNER_OS" == "Windows" ]; then |
| 151 | + dotnet nuget add source ${GITHUB_WORKSPACE}"\spannerlib\wrappers\spannerlib-dotnet\spannerlib-dotnet-grpc-server\bin\Release" --name local-grpc-server |
| 152 | + else |
| 153 | + dotnet nuget add source "$PWD"/bin/Release --name local-grpc-server |
| 154 | + fi |
| 155 | + working-directory: spannerlib/wrappers/spannerlib-dotnet/spannerlib-dotnet-grpc-server |
| 156 | + shell: bash |
127 | 157 | - name: Restore dependencies |
128 | 158 | run: dotnet restore |
129 | 159 | working-directory: spannerlib/wrappers/spannerlib-dotnet |
130 | 160 | shell: bash |
| 161 | + - name: Create proto symlinks |
| 162 | + run: ./create-symlinks.sh |
| 163 | + working-directory: spannerlib/wrappers/spannerlib-dotnet/spannerlib-dotnet-grpc-impl |
| 164 | + shell: bash |
131 | 165 | - name: Build |
132 | 166 | run: dotnet build --no-restore |
133 | 167 | working-directory: spannerlib/wrappers/spannerlib-dotnet |
|
0 commit comments