示例#1
0
// List lists apps on a Deis controller.
func List(c *client.Client, results int) ([]api.App, int, error) {
	body, count, err := c.LimitedRequest("/v1/apps/", results)

	if err != nil {
		return []api.App{}, -1, err
	}

	var apps []api.App
	if err = json.Unmarshal([]byte(body), &apps); err != nil {
		return []api.App{}, -1, err
	}

	return apps, count, nil
}
示例#2
0
// List keys on a controller.
func List(c *client.Client, results int) ([]api.Key, int, error) {
	body, count, err := c.LimitedRequest("/v1/keys/", results)

	if err != nil {
		return []api.Key{}, -1, err
	}

	var keys []api.Key
	if err = json.Unmarshal([]byte(body), &keys); err != nil {
		return []api.Key{}, -1, err
	}

	return keys, count, nil
}
示例#3
0
// List certs registered with the controller.
func List(c *client.Client, results int) ([]api.Cert, int, error) {
	body, count, err := c.LimitedRequest("/v1/certs/", results)

	if err != nil {
		return []api.Cert{}, -1, err
	}

	var res []api.Cert
	if err = json.Unmarshal([]byte(body), &res); err != nil {
		return []api.Cert{}, -1, err
	}

	return res, count, nil
}
示例#4
0
// List users registered with the controller.
func List(c *client.Client, results int) ([]api.User, int, error) {
	body, count, err := c.LimitedRequest("/v1/users/", results)

	if err != nil {
		return []api.User{}, -1, err
	}

	var users []api.User
	if err = json.Unmarshal([]byte(body), &users); err != nil {
		return []api.User{}, -1, err
	}

	return users, count, nil
}
示例#5
0
// List an app's processes.
func List(c *client.Client, appID string, results int) ([]api.Process, int, error) {
	u := fmt.Sprintf("/v1/apps/%s/containers/", appID)
	body, count, err := c.LimitedRequest(u, results)

	if err != nil {
		return []api.Process{}, -1, err
	}

	var procs []api.Process
	if err = json.Unmarshal([]byte(body), &procs); err != nil {
		return []api.Process{}, -1, err
	}

	return procs, count, nil
}
示例#6
0
// List lists an app's builds.
func List(c *client.Client, appID string, results int) ([]api.Build, int, error) {
	u := fmt.Sprintf("/v1/apps/%s/builds/", appID)
	body, count, err := c.LimitedRequest(u, results)

	if err != nil {
		return []api.Build{}, -1, err
	}

	var builds []api.Build
	if err = json.Unmarshal([]byte(body), &builds); err != nil {
		return []api.Build{}, -1, err
	}

	return builds, count, nil
}
示例#7
0
// List domains registered with an app.
func List(c *client.Client, appID string, results int) ([]api.Domain, int, error) {
	u := fmt.Sprintf("/v1/apps/%s/domains/", appID)
	body, count, err := c.LimitedRequest(u, results)

	if err != nil {
		return []api.Domain{}, -1, err
	}

	var domains []api.Domain
	if err = json.Unmarshal([]byte(body), &domains); err != nil {
		return []api.Domain{}, -1, err
	}

	return domains, count, nil
}
示例#8
0
// List lists an app's releases.
func List(c *client.Client, appID string, results int) ([]api.Release, int, error) {
	u := fmt.Sprintf("/v1/apps/%s/releases/", appID)

	body, count, err := c.LimitedRequest(u, results)

	if err != nil {
		return []api.Release{}, -1, err
	}

	var releases []api.Release
	if err = json.Unmarshal([]byte(body), &releases); err != nil {
		return []api.Release{}, -1, err
	}

	return releases, count, nil
}
示例#9
0
// ListAdmins lists administrators.
func ListAdmins(c *client.Client, results int) ([]string, int, error) {
	body, count, err := c.LimitedRequest("/v1/admin/perms/", results)

	if err != nil {
		return []string{}, -1, err
	}

	var users []api.PermsRequest
	if err = json.Unmarshal([]byte(body), &users); err != nil {
		return []string{}, -1, err
	}

	usersList := []string{}

	for _, user := range users {
		usersList = append(usersList, user.Username)
	}

	return usersList, count, nil
}