1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
|
package resetstate
import (
"github.com/gophercloud/gophercloud"
"github.com/gophercloud/gophercloud/openstack/compute/v2/extensions"
)
// ServerState refers to the states usable in ResetState Action
type ServerState string
const (
// StateActive returns the state of the server as active
StateActive ServerState = "active"
// StateError returns the state of the server as error
StateError ServerState = "error"
)
// ResetState will reset the state of a server
func ResetState(client *gophercloud.ServiceClient, id string, state ServerState) (r ResetResult) {
stateMap := map[string]interface{}{"state": state}
resp, err := client.Post(extensions.ActionURL(client, id), map[string]interface{}{"os-resetState": stateMap}, nil, nil)
_, r.Header, r.Err = gophercloud.ParseResponse(resp, err)
return
}
|