diff options
Diffstat (limited to 'lib/apiv1/agent.go')
-rw-r--r-- | lib/apiv1/agent.go | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/lib/apiv1/agent.go b/lib/apiv1/agent.go new file mode 100644 index 0000000..7434545 --- /dev/null +++ b/lib/apiv1/agent.go @@ -0,0 +1,37 @@ +package apiv1 + +import ( + "net/http" + + "path/filepath" + + "github.com/gin-gonic/gin" +) + +type XDSAgentTarball struct { + OS string `json:"os"` + FileURL string `json:"fileUrl"` +} +type XDSAgentInfo struct { + Tarballs []XDSAgentTarball `json:"tarballs"` +} + +// getXdsAgentInfo : return various information about Xds Agent +func (s *APIService) getXdsAgentInfo(c *gin.Context) { + // TODO: retrieve link dynamically by reading assets/xds-agent-tarballs + tarballDir := "assets/xds-agent-tarballs" + response := XDSAgentInfo{ + Tarballs: []XDSAgentTarball{ + XDSAgentTarball{ + OS: "linux", + FileURL: filepath.Join(tarballDir, "xds-agent_linux-amd64-v0.0.1_3cdf92c.zip"), + }, + XDSAgentTarball{ + OS: "windows", + FileURL: filepath.Join(tarballDir, "xds-agent_windows-386-v0.0.1_3cdf92c.zip"), + }, + }, + } + + c.JSON(http.StatusOK, response) +} |