fix(ci): fix ci lint fmt err
This commit is contained in:
parent
9f74143103
commit
29ae8b5de8
1 changed files with 30 additions and 30 deletions
|
|
@ -1,52 +1,52 @@
|
|||
package api
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"net/http"
|
||||
"encoding/json"
|
||||
"net/http"
|
||||
|
||||
"github.com/sipeed/picoclaw/pkg/updater"
|
||||
"github.com/sipeed/picoclaw/pkg/updater"
|
||||
)
|
||||
|
||||
// registerUpdateRoutes registers the self-update endpoint.
|
||||
func (h *Handler) registerUpdateRoutes(mux *http.ServeMux) {
|
||||
mux.HandleFunc("/api/update", h.handleUpdate)
|
||||
mux.HandleFunc("/api/update", h.handleUpdate)
|
||||
}
|
||||
|
||||
type updateRequest struct {
|
||||
URL string `json:"url,omitempty"`
|
||||
Binary string `json:"binary,omitempty"`
|
||||
URL string `json:"url,omitempty"`
|
||||
Binary string `json:"binary,omitempty"`
|
||||
}
|
||||
|
||||
type updateResponse struct {
|
||||
Status string `json:"status"`
|
||||
Message string `json:"message,omitempty"`
|
||||
Status string `json:"status"`
|
||||
Message string `json:"message,omitempty"`
|
||||
}
|
||||
|
||||
func (h *Handler) handleUpdate(w http.ResponseWriter, r *http.Request) {
|
||||
if r.Method != http.MethodPost {
|
||||
w.WriteHeader(http.StatusMethodNotAllowed)
|
||||
_ = json.NewEncoder(w).Encode(updateResponse{Status: "error", Message: "method not allowed"})
|
||||
return
|
||||
}
|
||||
if r.Method != http.MethodPost {
|
||||
w.WriteHeader(http.StatusMethodNotAllowed)
|
||||
_ = json.NewEncoder(w).Encode(updateResponse{Status: "error", Message: "method not allowed"})
|
||||
return
|
||||
}
|
||||
|
||||
dec := json.NewDecoder(http.MaxBytesReader(w, r.Body, 1<<20))
|
||||
var req updateRequest
|
||||
if err := dec.Decode(&req); err != nil {
|
||||
w.WriteHeader(http.StatusBadRequest)
|
||||
_ = json.NewEncoder(w).Encode(updateResponse{Status: "error", Message: "invalid request body"})
|
||||
return
|
||||
}
|
||||
dec := json.NewDecoder(http.MaxBytesReader(w, r.Body, 1<<20))
|
||||
var req updateRequest
|
||||
if err := dec.Decode(&req); err != nil {
|
||||
w.WriteHeader(http.StatusBadRequest)
|
||||
_ = json.NewEncoder(w).Encode(updateResponse{Status: "error", Message: "invalid request body"})
|
||||
return
|
||||
}
|
||||
|
||||
binary := req.Binary
|
||||
if binary == "" {
|
||||
binary = "picoclaw-launcher"
|
||||
}
|
||||
binary := req.Binary
|
||||
if binary == "" {
|
||||
binary = "picoclaw-launcher"
|
||||
}
|
||||
|
||||
if err := updater.UpdateSelfFromRelease(req.URL, "", "", binary); err != nil {
|
||||
w.WriteHeader(http.StatusInternalServerError)
|
||||
_ = json.NewEncoder(w).Encode(updateResponse{Status: "error", Message: err.Error()})
|
||||
return
|
||||
}
|
||||
if err := updater.UpdateSelfFromRelease(req.URL, "", "", binary); err != nil {
|
||||
w.WriteHeader(http.StatusInternalServerError)
|
||||
_ = json.NewEncoder(w).Encode(updateResponse{Status: "error", Message: err.Error()})
|
||||
return
|
||||
}
|
||||
|
||||
_ = json.NewEncoder(w).Encode(updateResponse{Status: "ok", Message: "update applied; restart to use new version"})
|
||||
_ = json.NewEncoder(w).Encode(updateResponse{Status: "ok", Message: "update applied; restart to use new version"})
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue