add parameters for server and filename
Gitea Actions Demo / Explore-Gitea-Actions (push) Successful in 6s

This commit is contained in:
2026-10-04 16:13:35 +02:00
parent a5493e6c11
commit bce0bc2989
+46 -38
View File
@@ -12,7 +12,11 @@ import (
"resty.dev/v3"
)
var server string
var (
server string
filename string
apiVersion string
)
var exportCmd = &cobra.Command{
Use: "export",
@@ -26,7 +30,7 @@ var exportCmd = &cobra.Command{
var login LoginResponse
client := resty.New()
PostJSON(client, "http://127.0.0.1:8550/api/login", &login)
PostJSON(client, fmt.Sprintf("%s/%s/%s", server, "api", "login"), &login)
type ExportData struct {
Sport []models.SportDTO `json:"sport"`
@@ -102,42 +106,42 @@ var exportCmd = &cobra.Command{
)
registry := map[string]any{
"http://127.0.0.1:8550/api/v1/tysc/sports": &sports,
"http://127.0.0.1:8550/api/v1/tysc/players": &players,
"http://127.0.0.1:8550/api/v1/tysc/teams": &teams,
"http://127.0.0.1:8550/api/v1/tysc/positions": &positions,
"http://127.0.0.1:8550/api/v1/tysc/roosters": &roosters,
"http://127.0.0.1:8550/api/v1/tysc/vendors": &vendors,
"http://127.0.0.1:8550/api/v1/tysc/cardsets": &cardsets,
"http://127.0.0.1:8550/api/v1/tysc/cards": &cards,
"http://127.0.0.1:8550/api/v1/comics/artists": &artists,
"http://127.0.0.1:8550/api/v1/comics/publishers": &publishers,
"http://127.0.0.1:8550/api/v1/comics/worktypes": &worktypes,
"http://127.0.0.1:8550/api/v1/comics/comics": &comics,
"http://127.0.0.1:8550/api/v1/comics/volumes": &volumes,
"http://127.0.0.1:8550/api/v1/comics/storyarcs": &storyarcs,
"http://127.0.0.1:8550/api/v1/comics/issues": &issues,
"http://127.0.0.1:8550/api/v1/comics/tradepaperbacks": &tradepaperbacks,
"http://127.0.0.1:8550/api/v1/comics/comicworks": &comicworks,
"http://127.0.0.1:8550/api/v1/comics/issueworks": &issueworks,
"http://127.0.0.1:8550/api/v1/bookshelf/articles": &articles,
"http://127.0.0.1:8550/api/v1/bookshelf/publishers": &bookshelf_publishers,
"http://127.0.0.1:8550/api/v1/bookshelf/books": &books,
"http://127.0.0.1:8550/api/v1/bookshelf/authors": &autors,
"http://127.0.0.1:8550/api/v1/bookshelf/articleauthors": &article_authors,
"http://127.0.0.1:8550/api/v1/bookshelf/bookauthors": &book_authors,
"http://127.0.0.1:8550/api/v1/media/articles": &mediaarticles,
"http://127.0.0.1:8550/api/v1/media/videos": &mediavideos,
"http://127.0.0.1:8550/api/v1/media/actors": &mediaactors,
"http://127.0.0.1:8550/api/v1/media/files": &mediafiles,
"http://127.0.0.1:8550/api/v1/media/lofis": &medialofis,
"http://127.0.0.1:8550/api/v1/user/profiles": &profiles,
"http://127.0.0.1:8550/api/v1/user/permissions": &permissions,
"http://127.0.0.1:8550/api/v1/user/assignments": &assignments,
"http://127.0.0.1:8550/api/v1/user/tokens": &tokens,
"tysc/sports": &sports,
"tysc/players": &players,
"tysc/teams": &teams,
"tysc/positions": &positions,
"tysc/roosters": &roosters,
"tysc/vendors": &vendors,
"tysc/cardsets": &cardsets,
"tysc/cards": &cards,
"comics/artists": &artists,
"comics/publishers": &publishers,
"comics/worktypes": &worktypes,
"comics/comics": &comics,
"comics/volumes": &volumes,
"comics/storyarcs": &storyarcs,
"comics/issues": &issues,
"comics/tradepaperbacks": &tradepaperbacks,
"comics/comicworks": &comicworks,
"comics/issueworks": &issueworks,
"bookshelf/articles": &articles,
"bookshelf/publishers": &bookshelf_publishers,
"bookshelf/books": &books,
"bookshelf/authors": &autors,
"bookshelf/articleauthors": &article_authors,
"bookshelf/bookauthors": &book_authors,
"media/articles": &mediaarticles,
"media/videos": &mediavideos,
"media/actors": &mediaactors,
"media/files": &mediafiles,
"media/lofis": &medialofis,
"user/profiles": &profiles,
"user/permissions": &permissions,
"user/assignments": &assignments,
"user/tokens": &tokens,
}
for url, value := range registry {
GetJSON(client, login.Token, url, value)
for path, value := range registry {
GetJSON(client, login.Token, fmt.Sprintf("%s/%s/%s", server, "api/v1", path), value)
}
export := ExportData{
Sport: sports,
@@ -180,7 +184,7 @@ var exportCmd = &cobra.Command{
slog.Info("JSON MarshalIndent failed", "Error:", err)
}
// Write bytes to file
err = os.WriteFile("data.json", jsonData, 0644)
err = os.WriteFile(filename, jsonData, 0644)
if err != nil {
slog.Info("Error writing file:", "Error", err)
}
@@ -219,4 +223,8 @@ func init() {
exportCmd.PersistentFlags().StringVarP(&server, "server", "s", "http://127.0.0.1:8550", "Define server to get Kontor items")
viper.BindPFlag("server", exportCmd.PersistentFlags().Lookup("server"))
exportCmd.PersistentFlags().StringVarP(&filename, "file", "f", "/home/tpeetz/.sync/media/data-gin.json", "Filename to store data")
viper.BindPFlag("file", exportCmd.PersistentFlags().Lookup("file"))
exportCmd.PersistentFlags().StringVarP(&apiVersion, "api", "a", "api/v1", "API Version")
viper.BindPFlag("api", exportCmd.PersistentFlags().Lookup("api"))
}