49 lines
856 B
Go
49 lines
856 B
Go
package commands
|
|
|
|
import (
|
|
"bytes"
|
|
"encoding/json"
|
|
"net/http"
|
|
|
|
"github.com/spf13/cobra"
|
|
)
|
|
|
|
func CreateKrakenProcessCmd() *cobra.Command {
|
|
cmd := &cobra.Command{
|
|
Use: "process",
|
|
Run: func(cmd *cobra.Command, args []string) {
|
|
client := http.Client{}
|
|
|
|
var buf bytes.Buffer
|
|
err := json.NewEncoder(&buf).
|
|
Encode(struct {
|
|
RepositoryUrls []string `json:"repositoryUrls"`
|
|
}{
|
|
RepositoryUrls: []string{"git@git.front.kjuulh.io:kjuulh/kraken.git"}})
|
|
if err != nil {
|
|
panic(err)
|
|
}
|
|
|
|
req, err := http.NewRequestWithContext(
|
|
cmd.Context(),
|
|
http.MethodPost,
|
|
"http://localhost:3000/commands/processRepos",
|
|
&buf,
|
|
)
|
|
if err != nil {
|
|
panic(err)
|
|
}
|
|
|
|
resp, err := client.Do(req)
|
|
if err != nil {
|
|
panic(err)
|
|
}
|
|
if resp.StatusCode >= 300 {
|
|
panic(resp.Status)
|
|
}
|
|
},
|
|
}
|
|
|
|
return cmd
|
|
}
|