Browse code

api/types/swarm: Version: implement stringer interface

makes the code a bit more DRY.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

Sebastiaan van Stijn authored on 2022/05/11 05:35:09
Showing 7 changed files
... ...
@@ -1,12 +1,20 @@
1 1
 package swarm // import "github.com/docker/docker/api/types/swarm"
2 2
 
3
-import "time"
3
+import (
4
+	"strconv"
5
+	"time"
6
+)
4 7
 
5 8
 // Version represents the internal object version.
6 9
 type Version struct {
7 10
 	Index uint64 `json:",omitempty"`
8 11
 }
9 12
 
13
+// String implements fmt.Stringer interface.
14
+func (v Version) String() string {
15
+	return strconv.FormatUint(v.Index, 10)
16
+}
17
+
10 18
 // Meta is a base object inherited by most of the other once.
11 19
 type Meta struct {
12 20
 	Version   Version   `json:",omitempty"`
... ...
@@ -3,7 +3,6 @@ package client // import "github.com/docker/docker/client"
3 3
 import (
4 4
 	"context"
5 5
 	"net/url"
6
-	"strconv"
7 6
 
8 7
 	"github.com/docker/docker/api/types/swarm"
9 8
 )
... ...
@@ -14,7 +13,7 @@ func (cli *Client) ConfigUpdate(ctx context.Context, id string, version swarm.Ve
14 14
 		return err
15 15
 	}
16 16
 	query := url.Values{}
17
-	query.Set("version", strconv.FormatUint(version.Index, 10))
17
+	query.Set("version", version.String())
18 18
 	resp, err := cli.post(ctx, "/configs/"+id+"/update", query, config, nil)
19 19
 	ensureReaderClosed(resp)
20 20
 	return err
... ...
@@ -3,7 +3,6 @@ package client // import "github.com/docker/docker/client"
3 3
 import (
4 4
 	"context"
5 5
 	"net/url"
6
-	"strconv"
7 6
 
8 7
 	"github.com/docker/docker/api/types/swarm"
9 8
 )
... ...
@@ -11,7 +10,7 @@ import (
11 11
 // NodeUpdate updates a Node.
12 12
 func (cli *Client) NodeUpdate(ctx context.Context, nodeID string, version swarm.Version, node swarm.NodeSpec) error {
13 13
 	query := url.Values{}
14
-	query.Set("version", strconv.FormatUint(version.Index, 10))
14
+	query.Set("version", version.String())
15 15
 	resp, err := cli.post(ctx, "/nodes/"+nodeID+"/update", query, node, nil)
16 16
 	ensureReaderClosed(resp)
17 17
 	return err
... ...
@@ -3,7 +3,6 @@ package client // import "github.com/docker/docker/client"
3 3
 import (
4 4
 	"context"
5 5
 	"net/url"
6
-	"strconv"
7 6
 
8 7
 	"github.com/docker/docker/api/types/swarm"
9 8
 )
... ...
@@ -14,7 +13,7 @@ func (cli *Client) SecretUpdate(ctx context.Context, id string, version swarm.Ve
14 14
 		return err
15 15
 	}
16 16
 	query := url.Values{}
17
-	query.Set("version", strconv.FormatUint(version.Index, 10))
17
+	query.Set("version", version.String())
18 18
 	resp, err := cli.post(ctx, "/secrets/"+id+"/update", query, secret, nil)
19 19
 	ensureReaderClosed(resp)
20 20
 	return err
... ...
@@ -4,7 +4,6 @@ import (
4 4
 	"context"
5 5
 	"encoding/json"
6 6
 	"net/url"
7
-	"strconv"
8 7
 
9 8
 	"github.com/docker/docker/api/types"
10 9
 	"github.com/docker/docker/api/types/swarm"
... ...
@@ -35,7 +34,7 @@ func (cli *Client) ServiceUpdate(ctx context.Context, serviceID string, version
35 35
 		query.Set("rollback", options.Rollback)
36 36
 	}
37 37
 
38
-	query.Set("version", strconv.FormatUint(version.Index, 10))
38
+	query.Set("version", version.String())
39 39
 
40 40
 	if err := validateServiceSpec(service); err != nil {
41 41
 		return response, err
... ...
@@ -2,7 +2,6 @@ package client // import "github.com/docker/docker/client"
2 2
 
3 3
 import (
4 4
 	"context"
5
-	"fmt"
6 5
 	"net/url"
7 6
 	"strconv"
8 7
 
... ...
@@ -12,10 +11,10 @@ import (
12 12
 // SwarmUpdate updates the swarm.
13 13
 func (cli *Client) SwarmUpdate(ctx context.Context, version swarm.Version, swarm swarm.Spec, flags swarm.UpdateFlags) error {
14 14
 	query := url.Values{}
15
-	query.Set("version", strconv.FormatUint(version.Index, 10))
16
-	query.Set("rotateWorkerToken", fmt.Sprintf("%v", flags.RotateWorkerToken))
17
-	query.Set("rotateManagerToken", fmt.Sprintf("%v", flags.RotateManagerToken))
18
-	query.Set("rotateManagerUnlockKey", fmt.Sprintf("%v", flags.RotateManagerUnlockKey))
15
+	query.Set("version", version.String())
16
+	query.Set("rotateWorkerToken", strconv.FormatBool(flags.RotateWorkerToken))
17
+	query.Set("rotateManagerToken", strconv.FormatBool(flags.RotateManagerToken))
18
+	query.Set("rotateManagerUnlockKey", strconv.FormatBool(flags.RotateManagerUnlockKey))
19 19
 	resp, err := cli.post(ctx, "/swarm/update", query, swarm, nil)
20 20
 	ensureReaderClosed(resp)
21 21
 	return err
... ...
@@ -3,7 +3,6 @@ package client // import "github.com/docker/docker/client"
3 3
 import (
4 4
 	"context"
5 5
 	"net/url"
6
-	"strconv"
7 6
 
8 7
 	"github.com/docker/docker/api/types/swarm"
9 8
 	"github.com/docker/docker/api/types/volume"
... ...
@@ -17,7 +16,7 @@ func (cli *Client) VolumeUpdate(ctx context.Context, volumeID string, version sw
17 17
 	}
18 18
 
19 19
 	query := url.Values{}
20
-	query.Set("version", strconv.FormatUint(version.Index, 10))
20
+	query.Set("version", version.String())
21 21
 
22 22
 	resp, err := cli.put(ctx, "/volumes/"+volumeID, query, options, nil)
23 23
 	ensureReaderClosed(resp)