Compare commits

...

2 Commits

Author SHA1 Message Date
ba717cfdb6 Attempt to unmarshal response
All checks were successful
Create and publish a Docker image / build-and-push-image (push) Successful in 1m0s
2024-01-07 21:50:02 +01:00
e57d2d9d1d Attempt to match js ipfs 2024-01-07 21:46:25 +01:00

31
main.go
View File

@ -8,6 +8,7 @@ import (
"mime/multipart"
"net/http"
"net/textproto"
"net/url"
"os"
"path/filepath"
"strings"
@ -98,14 +99,15 @@ func main() {
body, writer := io.Pipe()
url := fmt.Sprintf("http://%v:%v/api/v0/add", ipfsHost, ipfsPort)
req, err := http.NewRequest(http.MethodPost, url, body)
targetUrl := fmt.Sprintf("http://%v:%v/api/v0/add", ipfsHost, ipfsPort)
req, err := http.NewRequest(http.MethodPost, targetUrl, body)
if err != nil {
githubactions.Fatalf("Unable to create request: %v", err.Error())
}
q := req.URL.Query()
q.Add("wrap-with-directory", "true")
q.Add("progress", "false")
req.URL.RawQuery = q.Encode()
mwriter := NewIpfsMultipartWriter(writer)
@ -121,12 +123,13 @@ func main() {
}
if info.IsDir() {
_, err = mwriter.CreateIpfsDirectoryPart(innerPath)
if err != nil {
return err
}
// _, err = mwriter.CreateIpfsDirectoryPart(innerPath)
// if err != nil {
// return err
// }
} else {
w, err := mwriter.CreateIpfsFilePart(innerPath)
relPath, _ := filepath.Rel(path, innerPath)
w, err := mwriter.CreateIpfsFilePart(url.QueryEscape(fmt.Sprintf("/%v", relPath)))
if err != nil {
return err
}
@ -164,11 +167,15 @@ func main() {
githubactions.Fatalf(err.Error())
}
githubactions.Infof("Response: %v", string(resBody))
d := json.NewDecoder(res.Body)
for {
var ipfsAddResponse []AddResponse
json.Unmarshal(resBody, &ipfsAddResponse)
if err != nil {
githubactions.Fatalf(err.Error())
if err := d.Decode(&ipfsAddResponse); err == io.EOF {
break
} else if err != nil {
githubactions.Warningf("Failed to unmarshal response: %v", fmt.Errorf("%w", err))
}
githubactions.Infof("Received response: %v", ipfsAddResponse)
}
githubactions.Infof("Response: %v", ipfsAddResponse)
}