swarm_update.go 720 B

123456789101112131415161718192021
  1. package client // import "github.com/docker/docker/client"
  2. import (
  3. "context"
  4. "net/url"
  5. "strconv"
  6. "github.com/docker/docker/api/types/swarm"
  7. )
  8. // SwarmUpdate updates the swarm.
  9. func (cli *Client) SwarmUpdate(ctx context.Context, version swarm.Version, swarm swarm.Spec, flags swarm.UpdateFlags) error {
  10. query := url.Values{}
  11. query.Set("version", version.String())
  12. query.Set("rotateWorkerToken", strconv.FormatBool(flags.RotateWorkerToken))
  13. query.Set("rotateManagerToken", strconv.FormatBool(flags.RotateManagerToken))
  14. query.Set("rotateManagerUnlockKey", strconv.FormatBool(flags.RotateManagerUnlockKey))
  15. resp, err := cli.post(ctx, "/swarm/update", query, swarm, nil)
  16. ensureReaderClosed(resp)
  17. return err
  18. }