@@ -3,6 +3,7 @@ package cmd
33import (
44 "bytes"
55 "context"
6+ "crypto/tls"
67 "encoding/json"
78 "fmt"
89 "time"
@@ -22,6 +23,7 @@ import (
2223
2324 aclient "github.com/akash-network/provider/client"
2425 gwgrpc "github.com/akash-network/provider/gateway/grpc"
26+ gwrest "github.com/akash-network/provider/gateway/rest"
2527)
2628
2729var errSubmitManifestFailed = errors .New ("submit manifest to some providers has been failed" )
@@ -111,25 +113,43 @@ func doSendManifest(cmd *cobra.Command, sdlpath string) error {
111113 return fmt .Errorf ("query client provider: %w" , err )
112114 }
113115
114- c , err := gwgrpc . NewClient ( ctx , prov .GetProvider ().HostURI , cert , cl )
116+ hostURIgRPC , err := grpcURI ( prov .GetProvider ().HostURI )
115117 if err != nil {
116- return fmt .Errorf ("new grpc conn : %w" , err )
118+ return fmt .Errorf ("grpc uri : %w" , err )
117119 }
118120
119- defer c .Close ()
120-
121121 res := result {
122122 Provider : provAddr ,
123123 Status : "PASS" ,
124124 }
125125
126- if _ , err = c .SendManifest (ctx , & leasev1.SendManifestRequest {
127- LeaseId : lid ,
128- Manifest : mani ,
129- }); err != nil {
130- res .Error = err .Error ()
131- res .Status = "FAIL"
132- submitFailed = true
126+ c , err := gwgrpc .NewClient (ctx , hostURIgRPC , cert , cl )
127+ if err == nil {
128+ defer c .Close ()
129+
130+ if _ , err = c .SendManifest (ctx , & leasev1.SendManifestRequest {
131+ LeaseId : lid ,
132+ Manifest : mani ,
133+ }); err != nil {
134+ res .Error = err .Error ()
135+ res .Status = "FAIL"
136+ submitFailed = true
137+ }
138+ } else {
139+ gclient , err := gwrest .NewClient (cl , provAddr , []tls.Certificate {cert })
140+ if err != nil {
141+ return fmt .Errorf ("gwrest new client: %w" , err )
142+ }
143+
144+ err = gclient .SubmitManifest (cmd .Context (), dseq , mani )
145+ if err != nil {
146+ res .Error = err .Error ()
147+ if e , valid := err .(gwrest.ClientResponseError ); valid {
148+ res .ErrorMessage = e .Message
149+ }
150+ res .Status = "FAIL"
151+ submitFailed = true
152+ }
133153 }
134154
135155 results [i ] = res
0 commit comments