From d2ada6488cf12462b4b2d94f3fec23afa8f5f29e Mon Sep 17 00:00:00 2001 From: Olivier Gambier Date: Wed, 4 Nov 2015 17:28:31 -0800 Subject: [PATCH] Lint Signed-off-by: Olivier Gambier --- .travis.yml | 2 +- commands/commands.go | 4 +- commands/config.go | 36 +++++----- commands/config_test.go | 14 ++-- commands/create.go | 10 +-- commands/ls.go | 2 +- commands/ls_test.go | 72 +++++++++---------- drivers/openstack/client.go | 2 +- drivers/rackspace/client.go | 2 +- libmachine/auth/auth.go | 2 +- libmachine/cert/bootstrap.go | 2 +- libmachine/cert/cert.go | 12 ++-- libmachine/cert/cert_path_info.go | 2 +- libmachine/drivers/plugin/register_driver.go | 2 +- libmachine/drivers/rpc/client_driver.go | 2 +- libmachine/drivers/rpc/server_driver.go | 2 +- libmachine/engine/engine.go | 6 +- libmachine/host/host.go | 16 ++--- libmachine/host/host_v0.go | 8 +-- libmachine/host/host_v2.go | 4 +- libmachine/host/migrate.go | 16 ++--- libmachine/host/migrate_v0_v1.go | 24 +++---- libmachine/host/migrate_v0_v1_test.go | 24 +++---- libmachine/host/migrate_v1_v2.go | 18 ++--- libmachine/host/migrate_v2_v3.go | 2 +- libmachine/hosttest/default_test_host.go | 8 +-- libmachine/persist/filestore.go | 10 +-- libmachine/provision/arch.go | 6 +- libmachine/provision/boot2docker.go | 12 ++-- libmachine/provision/centos.go | 2 +- libmachine/provision/centos_test.go | 2 +- libmachine/provision/configure_swarm.go | 10 +-- libmachine/provision/coreos.go | 4 +- libmachine/provision/debian.go | 4 +- libmachine/provision/engine_config_context.go | 4 +- libmachine/provision/fedora.go | 2 +- libmachine/provision/fedora_test.go | 2 +- libmachine/provision/generic.go | 12 ++-- libmachine/provision/os_release.go | 12 ++-- libmachine/provision/os_release_test.go | 46 ++++++------ libmachine/provision/provisioner.go | 6 +- libmachine/provision/rancheros.go | 4 +- libmachine/provision/redhat.go | 6 +- libmachine/provision/redhat_test.go | 2 +- libmachine/provision/suse.go | 8 +-- libmachine/provision/ubuntu.go | 4 +- libmachine/provision/utils.go | 2 +- libmachine/provision/utils_test.go | 6 +- libmachine/ssh/client.go | 10 +-- libmachine/swarm/swarm.go | 2 +- libmachine/version/version.go | 4 +- mk/main.mk | 2 +- mk/validate.mk | 2 +- 53 files changed, 240 insertions(+), 240 deletions(-) diff --git a/.travis.yml b/.travis.yml index f7e80b0a90..1b819a972d 100644 --- a/.travis.yml +++ b/.travis.yml @@ -2,4 +2,4 @@ sudo: required dist: trusty language: bash services: docker -script: USE_CONTAINER=true make dco fmt vet test-short test-long coverage-send +script: USE_CONTAINER=true make dco fmt lint vet test-short test-long coverage-send diff --git a/commands/commands.go b/commands/commands.go index 39f4c27e13..861853f783 100644 --- a/commands/commands.go +++ b/commands/commands.go @@ -475,7 +475,7 @@ func runActionWithContext(actionName string, c CommandLine) error { // codegangsta/cli will not set the cert paths if the storage-path is set to // something different so we cannot use the paths in the global options. le // sigh. -func getCertPathInfoFromContext(c CommandLine) cert.CertPathInfo { +func getCertPathInfoFromContext(c CommandLine) cert.PathInfo { caCertPath := c.GlobalString("tls-ca-cert") caKeyPath := c.GlobalString("tls-ca-key") clientCertPath := c.GlobalString("tls-client-cert") @@ -497,7 +497,7 @@ func getCertPathInfoFromContext(c CommandLine) cert.CertPathInfo { clientKeyPath = filepath.Join(mcndirs.GetMachineCertDir(), "key.pem") } - return cert.CertPathInfo{ + return cert.PathInfo{ CaCertPath: caCertPath, CaPrivateKeyPath: caKeyPath, ClientCertPath: clientCertPath, diff --git a/commands/config.go b/commands/config.go index fe4e245bfe..59ddd13972 100644 --- a/commands/config.go +++ b/commands/config.go @@ -16,14 +16,14 @@ import ( // ErrCertInvalid for when the cert is computed to be invalid. type ErrCertInvalid struct { wrappedErr error - hostUrl string + hostURL string } func (e ErrCertInvalid) Error() string { return fmt.Sprintf(`There was an error validating certificates for host %q: %s You can attempt to regenerate them using 'docker-machine regenerate-certs name'. Be advised that this will trigger a Docker daemon restart which will stop running containers. -`, e.hostUrl, e.wrappedErr) +`, e.hostURL, e.wrappedErr) } func cmdConfig(c CommandLine) error { @@ -53,50 +53,50 @@ func cmdConfig(c CommandLine) error { return nil } -func runConnectionBoilerplate(h *host.Host, c CommandLine) (string, *auth.AuthOptions, error) { +func runConnectionBoilerplate(h *host.Host, c CommandLine) (string, *auth.Options, error) { hostState, err := h.Driver.GetState() if err != nil { // TODO: This is a common operation and should have a commonly // defined error. - return "", &auth.AuthOptions{}, fmt.Errorf("Error trying to get host state: %s", err) + return "", &auth.Options{}, fmt.Errorf("Error trying to get host state: %s", err) } if hostState != state.Running { - return "", &auth.AuthOptions{}, fmt.Errorf("%s is not running. Please start it in order to use the connection settings", h.Name) + return "", &auth.Options{}, fmt.Errorf("%s is not running. Please start it in order to use the connection settings", h.Name) } dockerHost, err := h.Driver.GetURL() if err != nil { - return "", &auth.AuthOptions{}, fmt.Errorf("Error getting driver URL: %s", err) + return "", &auth.Options{}, fmt.Errorf("Error getting driver URL: %s", err) } if c.Bool("swarm") { var err error dockerHost, err = parseSwarm(dockerHost, h) if err != nil { - return "", &auth.AuthOptions{}, fmt.Errorf("Error parsing swarm: %s", err) + return "", &auth.Options{}, fmt.Errorf("Error parsing swarm: %s", err) } } u, err := url.Parse(dockerHost) if err != nil { - return "", &auth.AuthOptions{}, fmt.Errorf("Error parsing URL: %s", err) + return "", &auth.Options{}, fmt.Errorf("Error parsing URL: %s", err) } authOptions := h.HostOptions.AuthOptions if err := checkCert(u.Host, authOptions); err != nil { - return "", &auth.AuthOptions{}, fmt.Errorf("Error checking and/or regenerating the certs: %s", err) + return "", &auth.Options{}, fmt.Errorf("Error checking and/or regenerating the certs: %s", err) } return dockerHost, authOptions, nil } -func checkCert(hostUrl string, authOptions *auth.AuthOptions) error { - valid, err := cert.ValidateCertificate(hostUrl, authOptions) +func checkCert(hostURL string, authOptions *auth.Options) error { + valid, err := cert.ValidateCertificate(hostURL, authOptions) if !valid || err != nil { return ErrCertInvalid{ wrappedErr: err, - hostUrl: hostUrl, + hostURL: hostURL, } } @@ -104,7 +104,7 @@ func checkCert(hostUrl string, authOptions *auth.AuthOptions) error { } // TODO: This could use a unit test. -func parseSwarm(hostUrl string, h *host.Host) (string, error) { +func parseSwarm(hostURL string, h *host.Host) (string, error) { swarmOptions := h.HostOptions.SwarmOptions if !swarmOptions.Master { @@ -119,15 +119,15 @@ func parseSwarm(hostUrl string, h *host.Host) (string, error) { swarmPort := parts[1] // get IP of machine to replace in case swarm host is 0.0.0.0 - mUrl, err := url.Parse(hostUrl) + mURL, err := url.Parse(hostURL) if err != nil { return "", fmt.Errorf("There was an error parsing the url: %s", err) } - mParts := strings.Split(mUrl.Host, ":") - machineIp := mParts[0] + mParts := strings.Split(mURL.Host, ":") + machineIP := mParts[0] - hostUrl = fmt.Sprintf("tcp://%s:%s", machineIp, swarmPort) + hostURL = fmt.Sprintf("tcp://%s:%s", machineIP, swarmPort) - return hostUrl, nil + return hostURL, nil } diff --git a/commands/config_test.go b/commands/config_test.go index ae1389dbf8..f00e1751c1 100644 --- a/commands/config_test.go +++ b/commands/config_test.go @@ -26,7 +26,7 @@ func (fcg FakeCertGenerator) GenerateCert(hosts []string, certFile, keyFile, caF return nil } -func (fcg FakeCertGenerator) ValidateCertificate(addr string, authOptions *auth.AuthOptions) (bool, error) { +func (fcg FakeCertGenerator) ValidateCertificate(addr string, authOptions *auth.Options) (bool, error) { return fcg.fakeValidateCertificate.IsValid, fcg.fakeValidateCertificate.Err } @@ -34,21 +34,21 @@ func TestCheckCert(t *testing.T) { errCertsExpired := errors.New("Certs have expired") cases := []struct { - hostUrl string - authOptions *auth.AuthOptions + hostURL string + authOptions *auth.Options valid bool checkErr error expectedErr error }{ - {"192.168.99.100:2376", &auth.AuthOptions{}, true, nil, nil}, - {"192.168.99.100:2376", &auth.AuthOptions{}, false, nil, ErrCertInvalid{wrappedErr: nil, hostUrl: "192.168.99.100:2376"}}, - {"192.168.99.100:2376", &auth.AuthOptions{}, false, errCertsExpired, ErrCertInvalid{wrappedErr: errCertsExpired, hostUrl: "192.168.99.100:2376"}}, + {"192.168.99.100:2376", &auth.Options{}, true, nil, nil}, + {"192.168.99.100:2376", &auth.Options{}, false, nil, ErrCertInvalid{wrappedErr: nil, hostURL: "192.168.99.100:2376"}}, + {"192.168.99.100:2376", &auth.Options{}, false, errCertsExpired, ErrCertInvalid{wrappedErr: errCertsExpired, hostURL: "192.168.99.100:2376"}}, } for _, c := range cases { fcg := FakeCertGenerator{fakeValidateCertificate: &FakeValidateCertificate{c.valid, c.checkErr}} cert.SetCertGenerator(fcg) - err := checkCert(c.hostUrl, c.authOptions) + err := checkCert(c.hostURL, c.authOptions) assert.Equal(t, c.expectedErr, err) } } diff --git a/commands/create.go b/commands/create.go index 1560edc48d..c958d47dd5 100644 --- a/commands/create.go +++ b/commands/create.go @@ -168,8 +168,8 @@ func cmdCreateInner(c CommandLine) error { return fmt.Errorf("Error getting new host: %s", err) } - h.HostOptions = &host.HostOptions{ - AuthOptions: &auth.AuthOptions{ + h.HostOptions = &host.Options{ + AuthOptions: &auth.Options{ CertDir: mcndirs.GetMachineCertDir(), CaCertPath: certInfo.CaCertPath, CaPrivateKeyPath: certInfo.CaPrivateKeyPath, @@ -179,17 +179,17 @@ func cmdCreateInner(c CommandLine) error { ServerKeyPath: filepath.Join(mcndirs.GetMachineDir(), name, "server-key.pem"), StorePath: filepath.Join(mcndirs.GetMachineDir(), name), }, - EngineOptions: &engine.EngineOptions{ + EngineOptions: &engine.Options{ ArbitraryFlags: c.StringSlice("engine-opt"), Env: c.StringSlice("engine-env"), InsecureRegistry: c.StringSlice("engine-insecure-registry"), Labels: c.StringSlice("engine-label"), RegistryMirror: c.StringSlice("engine-registry-mirror"), StorageDriver: c.String("engine-storage-driver"), - TlsVerify: true, + TLSVerify: true, InstallURL: c.String("engine-install-url"), }, - SwarmOptions: &swarm.SwarmOptions{ + SwarmOptions: &swarm.Options{ IsSwarm: c.Bool("swarm"), Image: c.String("swarm-image"), Master: c.Bool("swarm-master"), diff --git a/commands/ls.go b/commands/ls.go index 349bb15975..a7a5cca924 100644 --- a/commands/ls.go +++ b/commands/ls.go @@ -36,7 +36,7 @@ type HostListItem struct { DriverName string State state.State URL string - SwarmOptions *swarm.SwarmOptions + SwarmOptions *swarm.Options } func cmdLs(c CommandLine) error { diff --git a/commands/ls_test.go b/commands/ls_test.go index 8f17f4f046..336dfd05f8 100644 --- a/commands/ls_test.go +++ b/commands/ls_test.go @@ -73,7 +73,7 @@ func TestFilterHostsReturnsSameGivenNoFilters(t *testing.T) { { Name: "testhost", DriverName: "fakedriver", - HostOptions: &host.HostOptions{}, + HostOptions: &host.Options{}, }, } actual := filterHosts(hosts, opts) @@ -96,7 +96,7 @@ func TestFilterHostsReturnsEmptyGivenNonMatchingFilters(t *testing.T) { { Name: "testhost", DriverName: "fakedriver", - HostOptions: &host.HostOptions{}, + HostOptions: &host.Options{}, }, } assert.Empty(t, filterHosts(hosts, opts)) @@ -109,22 +109,22 @@ func TestFilterHostsBySwarmName(t *testing.T) { master := &host.Host{ Name: "master", - HostOptions: &host.HostOptions{ - SwarmOptions: &swarm.SwarmOptions{Master: true, Discovery: "foo"}, + HostOptions: &host.Options{ + SwarmOptions: &swarm.Options{Master: true, Discovery: "foo"}, }, } node1 := &host.Host{ Name: "node1", - HostOptions: &host.HostOptions{ - SwarmOptions: &swarm.SwarmOptions{Master: false, Discovery: "foo"}, + HostOptions: &host.Options{ + SwarmOptions: &swarm.Options{Master: false, Discovery: "foo"}, }, } othermaster := &host.Host{ Name: "othermaster", - HostOptions: &host.HostOptions{ - SwarmOptions: &swarm.SwarmOptions{Master: true, Discovery: "bar"}, + HostOptions: &host.Options{ + SwarmOptions: &swarm.Options{Master: true, Discovery: "bar"}, }, } hosts := []*host.Host{master, node1, othermaster} @@ -141,19 +141,19 @@ func TestFilterHostsByDriverName(t *testing.T) { &host.Host{ Name: "node1", DriverName: "fakedriver", - HostOptions: &host.HostOptions{}, + HostOptions: &host.Options{}, } node2 := &host.Host{ Name: "node2", DriverName: "virtualbox", - HostOptions: &host.HostOptions{}, + HostOptions: &host.Options{}, } node3 := &host.Host{ Name: "node3", DriverName: "fakedriver", - HostOptions: &host.HostOptions{}, + HostOptions: &host.Options{}, } hosts := []*host.Host{node1, node2, node3} expected := []*host.Host{node1, node3} @@ -169,21 +169,21 @@ func TestFilterHostsByState(t *testing.T) { &host.Host{ Name: "node1", DriverName: "fakedriver", - HostOptions: &host.HostOptions{}, + HostOptions: &host.Options{}, Driver: &fakedriver.Driver{MockState: state.Paused}, } node2 := &host.Host{ Name: "node2", DriverName: "virtualbox", - HostOptions: &host.HostOptions{}, + HostOptions: &host.Options{}, Driver: &fakedriver.Driver{MockState: state.Stopped}, } node3 := &host.Host{ Name: "node3", DriverName: "fakedriver", - HostOptions: &host.HostOptions{}, + HostOptions: &host.Options{}, Driver: &fakedriver.Driver{MockState: state.Running}, } hosts := []*host.Host{node1, node2, node3} @@ -200,28 +200,28 @@ func TestFilterHostsByName(t *testing.T) { &host.Host{ Name: "fire", DriverName: "fakedriver", - HostOptions: &host.HostOptions{}, + HostOptions: &host.Options{}, Driver: &fakedriver.Driver{MockState: state.Paused, MockName: "fire"}, } node2 := &host.Host{ Name: "ice", DriverName: "adriver", - HostOptions: &host.HostOptions{}, + HostOptions: &host.Options{}, Driver: &fakedriver.Driver{MockState: state.Paused, MockName: "ice"}, } node3 := &host.Host{ Name: "air", DriverName: "nodriver", - HostOptions: &host.HostOptions{}, + HostOptions: &host.Options{}, Driver: &fakedriver.Driver{MockState: state.Paused, MockName: "air"}, } node4 := &host.Host{ Name: "water", DriverName: "falsedriver", - HostOptions: &host.HostOptions{}, + HostOptions: &host.Options{}, Driver: &fakedriver.Driver{MockState: state.Paused, MockName: "water"}, } hosts := []*host.Host{node1, node2, node3, node4} @@ -239,19 +239,19 @@ func TestFilterHostsMultiFlags(t *testing.T) { &host.Host{ Name: "node1", DriverName: "fakedriver", - HostOptions: &host.HostOptions{}, + HostOptions: &host.Options{}, } node2 := &host.Host{ Name: "node2", DriverName: "virtualbox", - HostOptions: &host.HostOptions{}, + HostOptions: &host.Options{}, } node3 := &host.Host{ Name: "node3", DriverName: "softlayer", - HostOptions: &host.HostOptions{}, + HostOptions: &host.Options{}, } hosts := []*host.Host{node1, node2, node3} expected := []*host.Host{node1, node2} @@ -268,21 +268,21 @@ func TestFilterHostsDifferentFlagsProduceAND(t *testing.T) { &host.Host{ Name: "node1", DriverName: "fakedriver", - HostOptions: &host.HostOptions{}, + HostOptions: &host.Options{}, Driver: &fakedriver.Driver{MockState: state.Paused}, } node2 := &host.Host{ Name: "node2", DriverName: "virtualbox", - HostOptions: &host.HostOptions{}, + HostOptions: &host.Options{}, Driver: &fakedriver.Driver{MockState: state.Stopped}, } node3 := &host.Host{ Name: "node3", DriverName: "fakedriver", - HostOptions: &host.HostOptions{}, + HostOptions: &host.Options{}, Driver: &fakedriver.Driver{MockState: state.Running}, } hosts := []*host.Host{node1, node2, node3} @@ -317,8 +317,8 @@ func TestGetHostListItems(t *testing.T) { Driver: &fakedriver.Driver{ MockState: state.Running, }, - HostOptions: &host.HostOptions{ - SwarmOptions: &swarm.SwarmOptions{ + HostOptions: &host.Options{ + SwarmOptions: &swarm.Options{ Master: false, Address: "", Discovery: "", @@ -331,8 +331,8 @@ func TestGetHostListItems(t *testing.T) { Driver: &fakedriver.Driver{ MockState: state.Stopped, }, - HostOptions: &host.HostOptions{ - SwarmOptions: &swarm.SwarmOptions{ + HostOptions: &host.Options{ + SwarmOptions: &swarm.Options{ Master: false, Address: "", Discovery: "", @@ -345,8 +345,8 @@ func TestGetHostListItems(t *testing.T) { Driver: &fakedriver.Driver{ MockState: state.Running, }, - HostOptions: &host.HostOptions{ - SwarmOptions: &swarm.SwarmOptions{ + HostOptions: &host.Options{ + SwarmOptions: &swarm.Options{ Master: false, Address: "", Discovery: "", @@ -400,8 +400,8 @@ func TestGetHostListItemsEnvDockerHostUnset(t *testing.T) { MockState: state.Running, MockURL: "tcp://120.0.0.1:2376", }, - HostOptions: &host.HostOptions{ - SwarmOptions: &swarm.SwarmOptions{ + HostOptions: &host.Options{ + SwarmOptions: &swarm.Options{ Master: false, Address: "", Discovery: "", @@ -414,8 +414,8 @@ func TestGetHostListItemsEnvDockerHostUnset(t *testing.T) { Driver: &fakedriver.Driver{ MockState: state.Stopped, }, - HostOptions: &host.HostOptions{ - SwarmOptions: &swarm.SwarmOptions{ + HostOptions: &host.Options{ + SwarmOptions: &swarm.Options{ Master: false, Address: "", Discovery: "", @@ -428,8 +428,8 @@ func TestGetHostListItemsEnvDockerHostUnset(t *testing.T) { Driver: &fakedriver.Driver{ MockState: state.Saved, }, - HostOptions: &host.HostOptions{ - SwarmOptions: &swarm.SwarmOptions{ + HostOptions: &host.Options{ + SwarmOptions: &swarm.Options{ Master: false, Address: "", Discovery: "", diff --git a/drivers/openstack/client.go b/drivers/openstack/client.go index 1cd1393190..7d0e78ab8c 100644 --- a/drivers/openstack/client.go +++ b/drivers/openstack/client.go @@ -505,7 +505,7 @@ func (c *GenericClient) Authenticate(d *Driver) error { return err } - provider.UserAgent.Prepend(fmt.Sprintf("docker-machine/v%d", version.ApiVersion)) + provider.UserAgent.Prepend(fmt.Sprintf("docker-machine/v%d", version.APIVersion)) if d.Insecure { // Configure custom TLS settings. diff --git a/drivers/rackspace/client.go b/drivers/rackspace/client.go index 0f6c2f7006..acce545320 100644 --- a/drivers/rackspace/client.go +++ b/drivers/rackspace/client.go @@ -41,7 +41,7 @@ func (c *Client) Authenticate(d *openstack.Driver) error { return err } - provider.UserAgent.Prepend(fmt.Sprintf("docker-machine/v%d", version.ApiVersion)) + provider.UserAgent.Prepend(fmt.Sprintf("docker-machine/v%d", version.APIVersion)) err = rackspace.Authenticate(provider, opts) if err != nil { diff --git a/libmachine/auth/auth.go b/libmachine/auth/auth.go index 0bc45294aa..b375e9eee3 100644 --- a/libmachine/auth/auth.go +++ b/libmachine/auth/auth.go @@ -1,6 +1,6 @@ package auth -type AuthOptions struct { +type Options struct { CertDir string CaCertPath string CaPrivateKeyPath string diff --git a/libmachine/cert/bootstrap.go b/libmachine/cert/bootstrap.go index ece60cdd7f..5d11ca43b1 100644 --- a/libmachine/cert/bootstrap.go +++ b/libmachine/cert/bootstrap.go @@ -10,7 +10,7 @@ import ( "github.com/docker/machine/libmachine/mcnutils" ) -func BootstrapCertificates(authOptions *auth.AuthOptions) error { +func BootstrapCertificates(authOptions *auth.Options) error { certDir := authOptions.CertDir caCertPath := authOptions.CaCertPath caPrivateKeyPath := authOptions.CaPrivateKeyPath diff --git a/libmachine/cert/cert.go b/libmachine/cert/cert.go index f3457d4398..624cd3396a 100644 --- a/libmachine/cert/cert.go +++ b/libmachine/cert/cert.go @@ -21,15 +21,15 @@ import ( var defaultGenerator = NewX509CertGenerator() -type CertGenerator interface { +type Generator interface { GenerateCACertificate(certFile, keyFile, org string, bits int) error GenerateCert(hosts []string, certFile, keyFile, caFile, caKeyFile, org string, bits int) error - ValidateCertificate(addr string, authOptions *auth.AuthOptions) (bool, error) + ValidateCertificate(addr string, authOptions *auth.Options) (bool, error) } type X509CertGenerator struct{} -func NewX509CertGenerator() CertGenerator { +func NewX509CertGenerator() Generator { return &X509CertGenerator{} } @@ -41,11 +41,11 @@ func GenerateCert(hosts []string, certFile, keyFile, caFile, caKeyFile, org stri return defaultGenerator.GenerateCert(hosts, certFile, keyFile, caFile, caKeyFile, org, bits) } -func ValidateCertificate(addr string, authOptions *auth.AuthOptions) (bool, error) { +func ValidateCertificate(addr string, authOptions *auth.Options) (bool, error) { return defaultGenerator.ValidateCertificate(addr, authOptions) } -func SetCertGenerator(cg CertGenerator) { +func SetCertGenerator(cg Generator) { defaultGenerator = cg } @@ -205,7 +205,7 @@ func (xcg *X509CertGenerator) GenerateCert(hosts []string, certFile, keyFile, ca } // ValidateCertificate validate the certificate installed on the vm. -func (xcg *X509CertGenerator) ValidateCertificate(addr string, authOptions *auth.AuthOptions) (bool, error) { +func (xcg *X509CertGenerator) ValidateCertificate(addr string, authOptions *auth.Options) (bool, error) { caCertPath := authOptions.CaCertPath serverCertPath := authOptions.ServerCertPath serverKeyPath := authOptions.ServerKeyPath diff --git a/libmachine/cert/cert_path_info.go b/libmachine/cert/cert_path_info.go index d5abc5d71c..30fd64cb69 100644 --- a/libmachine/cert/cert_path_info.go +++ b/libmachine/cert/cert_path_info.go @@ -1,6 +1,6 @@ package cert -type CertPathInfo struct { +type PathInfo struct { CaCertPath string CaPrivateKeyPath string ClientCertPath string diff --git a/libmachine/drivers/plugin/register_driver.go b/libmachine/drivers/plugin/register_driver.go index 48fcb23216..91fda1f7b3 100644 --- a/libmachine/drivers/plugin/register_driver.go +++ b/libmachine/drivers/plugin/register_driver.go @@ -25,7 +25,7 @@ func RegisterDriver(d drivers.Driver) { Plugin binaries are not intended to be invoked directly. Please use this plugin through the main 'docker-machine' binary. (API version: %d) -`, version.ApiVersion) +`, version.APIVersion) os.Exit(1) } diff --git a/libmachine/drivers/rpc/client_driver.go b/libmachine/drivers/rpc/client_driver.go index dab06d81e1..f7a019570d 100644 --- a/libmachine/drivers/rpc/client_driver.go +++ b/libmachine/drivers/rpc/client_driver.go @@ -99,7 +99,7 @@ func NewRpcClientDriver(rawDriverData []byte, driverName string) (*RpcClientDriv return nil, err } - if serverVersion != version.ApiVersion { + if serverVersion != version.APIVersion { return nil, fmt.Errorf("Driver binary uses an incompatible API version (%d)", serverVersion) } log.Debug("Using API Version ", serverVersion) diff --git a/libmachine/drivers/rpc/server_driver.go b/libmachine/drivers/rpc/server_driver.go index ea1c70cef2..f396344eb0 100644 --- a/libmachine/drivers/rpc/server_driver.go +++ b/libmachine/drivers/rpc/server_driver.go @@ -84,7 +84,7 @@ func (r *RpcServerDriver) Close(_, _ *struct{}) error { } func (r *RpcServerDriver) GetVersion(_ *struct{}, reply *int) error { - *reply = version.ApiVersion + *reply = version.APIVersion return nil } diff --git a/libmachine/engine/engine.go b/libmachine/engine/engine.go index 5a6c6f34d8..6ce2106b44 100644 --- a/libmachine/engine/engine.go +++ b/libmachine/engine/engine.go @@ -1,8 +1,8 @@ package engine -type EngineOptions struct { +type Options struct { ArbitraryFlags []string - Dns []string + DNS []string `json:"Dns"` GraphDir string Env []string Ipv6 bool @@ -11,7 +11,7 @@ type EngineOptions struct { LogLevel string StorageDriver string SelinuxEnabled bool - TlsVerify bool + TLSVerify bool `json:"TlsVerify"` RegistryMirror []string InstallURL string } diff --git a/libmachine/host/host.go b/libmachine/host/host.go index 89091d5918..b33959232c 100644 --- a/libmachine/host/host.go +++ b/libmachine/host/host.go @@ -28,24 +28,24 @@ type Host struct { ConfigVersion int Driver drivers.Driver DriverName string - HostOptions *HostOptions + HostOptions *Options Name string RawDriver []byte } -type HostOptions struct { +type Options struct { Driver string Memory int Disk int - EngineOptions *engine.EngineOptions - SwarmOptions *swarm.SwarmOptions - AuthOptions *auth.AuthOptions + EngineOptions *engine.Options + SwarmOptions *swarm.Options + AuthOptions *auth.Options } -type HostMetadata struct { +type Metadata struct { ConfigVersion int DriverName string - HostOptions HostOptions + HostOptions Options } func ValidateHostName(name string) bool { @@ -160,7 +160,7 @@ func (h *Host) ConfigureAuth() error { // and modularity of the provisioners should be). // // Call provision to re-provision the certs properly. - if err := provisioner.Provision(swarm.SwarmOptions{}, *h.HostOptions.AuthOptions, *h.HostOptions.EngineOptions); err != nil { + if err := provisioner.Provision(swarm.Options{}, *h.HostOptions.AuthOptions, *h.HostOptions.EngineOptions); err != nil { return err } diff --git a/libmachine/host/host_v0.go b/libmachine/host/host_v0.go index 4fa503bbd1..a36db5fea0 100644 --- a/libmachine/host/host_v0.go +++ b/libmachine/host/host_v0.go @@ -2,12 +2,12 @@ package host import "github.com/docker/machine/libmachine/drivers" -type HostV0 struct { +type V0 struct { Name string `json:"-"` Driver drivers.Driver DriverName string ConfigVersion int - HostOptions *HostOptions + HostOptions *Options StorePath string CaCertPath string @@ -21,8 +21,8 @@ type HostV0 struct { ClientKeyPath string } -type HostMetadataV0 struct { - HostOptions HostOptions +type MetadataV0 struct { + HostOptions Options DriverName string ConfigVersion int diff --git a/libmachine/host/host_v2.go b/libmachine/host/host_v2.go index cacd7f2357..8157e5f914 100644 --- a/libmachine/host/host_v2.go +++ b/libmachine/host/host_v2.go @@ -2,10 +2,10 @@ package host import "github.com/docker/machine/libmachine/drivers" -type HostV2 struct { +type V2 struct { ConfigVersion int Driver drivers.Driver DriverName string - HostOptions *HostOptions + HostOptions *Options Name string } diff --git a/libmachine/host/migrate.go b/libmachine/host/migrate.go index a5edb9e2c5..ab0c69fe25 100644 --- a/libmachine/host/migrate.go +++ b/libmachine/host/migrate.go @@ -21,14 +21,14 @@ func (r *RawDataDriver) MarshalJSON() ([]byte, error) { return r.data, nil } -func getMigratedHostMetadata(data []byte) (*HostMetadata, error) { +func getMigratedHostMetadata(data []byte) (*Metadata, error) { // HostMetadata is for a "first pass" so we can then load the driver var ( - hostMetadata *HostMetadataV0 + hostMetadata *MetadataV0 ) if err := json.Unmarshal(data, &hostMetadata); err != nil { - return &HostMetadata{}, err + return &Metadata{}, err } migratedHostMetadata := MigrateHostMetadataV0ToHostMetadataV1(hostMetadata) @@ -40,8 +40,8 @@ func MigrateHost(h *Host, data []byte) (*Host, bool, error) { var ( migrationNeeded = false migrationPerformed = false - hostV1 *HostV1 - hostV2 *HostV2 + hostV1 *V1 + hostV2 *V2 ) migratedHostMetadata, err := getMigratedHostMetadata(data) @@ -90,7 +90,7 @@ func MigrateHost(h *Host, data []byte) (*Host, bool, error) { log.Debugf("Migrating to config v%d", h.ConfigVersion) switch h.ConfigVersion { case 0: - hostV0 := &HostV0{ + hostV0 := &V0{ Driver: driver, } if err := json.Unmarshal(data, &hostV0); err != nil { @@ -99,7 +99,7 @@ func MigrateHost(h *Host, data []byte) (*Host, bool, error) { hostV1 = MigrateHostV0ToHostV1(hostV0) case 1: if hostV1 == nil { - hostV1 = &HostV1{ + hostV1 = &V1{ Driver: driver, } if err := json.Unmarshal(data, &hostV1); err != nil { @@ -109,7 +109,7 @@ func MigrateHost(h *Host, data []byte) (*Host, bool, error) { hostV2 = MigrateHostV1ToHostV2(hostV1) case 2: if hostV2 == nil { - hostV2 = &HostV2{ + hostV2 = &V2{ Driver: driver, } if err := json.Unmarshal(data, &hostV2); err != nil { diff --git a/libmachine/host/migrate_v0_v1.go b/libmachine/host/migrate_v0_v1.go index 9b5b2aab2f..6460d38e65 100644 --- a/libmachine/host/migrate_v0_v1.go +++ b/libmachine/host/migrate_v0_v1.go @@ -13,20 +13,20 @@ import ( // have been introduced. They preserve backwards compat at the expense // of some duplicated information. -// validates host config and modifies if needed +// MigrateHostV0ToHostV1 validates host config and modifies if needed // this is used for configuration updates -func MigrateHostV0ToHostV1(hostV0 *HostV0) *HostV1 { - hostV1 := &HostV1{ +func MigrateHostV0ToHostV1(hostV0 *V0) *V1 { + hostV1 := &V1{ Driver: hostV0.Driver, DriverName: hostV0.DriverName, } - hostV1.HostOptions = &HostOptionsV1{} - hostV1.HostOptions.EngineOptions = &engine.EngineOptions{ - TlsVerify: true, + hostV1.HostOptions = &OptionsV1{} + hostV1.HostOptions.EngineOptions = &engine.Options{ + TLSVerify: true, InstallURL: "https://get.docker.com", } - hostV1.HostOptions.SwarmOptions = &swarm.SwarmOptions{ + hostV1.HostOptions.SwarmOptions = &swarm.Options{ Address: "", Discovery: hostV0.SwarmDiscovery, Host: hostV0.SwarmHost, @@ -48,13 +48,13 @@ func MigrateHostV0ToHostV1(hostV0 *HostV0) *HostV1 { return hostV1 } -// fills nested host metadata and modifies if needed +// MigrateHostMetadataV0ToHostMetadataV1 fills nested host metadata and modifies if needed // this is used for configuration updates -func MigrateHostMetadataV0ToHostMetadataV1(m *HostMetadataV0) *HostMetadata { - hostMetadata := &HostMetadata{} +func MigrateHostMetadataV0ToHostMetadataV1(m *MetadataV0) *Metadata { + hostMetadata := &Metadata{} hostMetadata.DriverName = m.DriverName - hostMetadata.HostOptions.EngineOptions = &engine.EngineOptions{} - hostMetadata.HostOptions.AuthOptions = &auth.AuthOptions{ + hostMetadata.HostOptions.EngineOptions = &engine.Options{} + hostMetadata.HostOptions.AuthOptions = &auth.Options{ StorePath: m.StorePath, CaCertPath: m.CaCertPath, CaCertRemotePath: "", diff --git a/libmachine/host/migrate_v0_v1_test.go b/libmachine/host/migrate_v0_v1_test.go index f6d5d5620b..689c74b63d 100644 --- a/libmachine/host/migrate_v0_v1_test.go +++ b/libmachine/host/migrate_v0_v1_test.go @@ -12,7 +12,7 @@ import ( func TestMigrateHostV0ToV1(t *testing.T) { mcndirs.BaseDir = "/tmp/migration" - originalHost := &HostV0{ + originalHost := &V0{ HostOptions: nil, SwarmDiscovery: "token://foobar", SwarmHost: "1.2.3.4:2376", @@ -24,8 +24,8 @@ func TestMigrateHostV0ToV1(t *testing.T) { ServerCertPath: "/tmp/migration/certs/server.pem", ServerKeyPath: "/tmp/migration/certs/server-key.pem", } - hostOptions := &HostOptionsV1{ - SwarmOptions: &swarm.SwarmOptions{ + hostOptions := &OptionsV1{ + SwarmOptions: &swarm.Options{ Master: true, Discovery: "token://foobar", Host: "1.2.3.4:2376", @@ -38,13 +38,13 @@ func TestMigrateHostV0ToV1(t *testing.T) { ServerCertPath: "/tmp/migration/certs/server.pem", ServerKeyPath: "/tmp/migration/certs/server-key.pem", }, - EngineOptions: &engine.EngineOptions{ + EngineOptions: &engine.Options{ InstallURL: "https://get.docker.com", - TlsVerify: true, + TLSVerify: true, }, } - expectedHost := &HostV1{ + expectedHost := &V1{ HostOptions: hostOptions, } @@ -58,8 +58,8 @@ func TestMigrateHostV0ToV1(t *testing.T) { } func TestMigrateHostMetadataV0ToV1(t *testing.T) { - metadata := &HostMetadataV0{ - HostOptions: HostOptions{ + metadata := &MetadataV0{ + HostOptions: Options{ EngineOptions: nil, AuthOptions: nil, }, @@ -67,15 +67,15 @@ func TestMigrateHostMetadataV0ToV1(t *testing.T) { CaCertPath: "/tmp/store/certs/ca.pem", ServerCertPath: "/tmp/store/certs/server.pem", } - expectedAuthOptions := &auth.AuthOptions{ + expectedAuthOptions := &auth.Options{ StorePath: "/tmp/store", CaCertPath: "/tmp/store/certs/ca.pem", ServerCertPath: "/tmp/store/certs/server.pem", } - expectedMetadata := &HostMetadata{ - HostOptions: HostOptions{ - EngineOptions: &engine.EngineOptions{}, + expectedMetadata := &Metadata{ + HostOptions: Options{ + EngineOptions: &engine.Options{}, AuthOptions: expectedAuthOptions, }, } diff --git a/libmachine/host/migrate_v1_v2.go b/libmachine/host/migrate_v1_v2.go index f6eb2e4b20..6931993d13 100644 --- a/libmachine/host/migrate_v1_v2.go +++ b/libmachine/host/migrate_v1_v2.go @@ -22,43 +22,43 @@ type AuthOptionsV1 struct { ClientCertPath string } -type HostOptionsV1 struct { +type OptionsV1 struct { Driver string Memory int Disk int - EngineOptions *engine.EngineOptions - SwarmOptions *swarm.SwarmOptions + EngineOptions *engine.Options + SwarmOptions *swarm.Options AuthOptions *AuthOptionsV1 } -type HostV1 struct { +type V1 struct { ConfigVersion int Driver drivers.Driver DriverName string - HostOptions *HostOptionsV1 + HostOptions *OptionsV1 Name string `json:"-"` StorePath string } -func MigrateHostV1ToHostV2(hostV1 *HostV1) *HostV2 { +func MigrateHostV1ToHostV2(hostV1 *V1) *V2 { // Changed: Put StorePath directly in AuthOptions (for provisioning), // and AuthOptions.PrivateKeyPath => AuthOptions.CaPrivateKeyPath // Also, CertDir has been added. globalStorePath := filepath.Dir(filepath.Dir(hostV1.StorePath)) - h := &HostV2{ + h := &V2{ ConfigVersion: hostV1.ConfigVersion, Driver: hostV1.Driver, Name: hostV1.Driver.GetMachineName(), DriverName: hostV1.DriverName, - HostOptions: &HostOptions{ + HostOptions: &Options{ Driver: hostV1.HostOptions.Driver, Memory: hostV1.HostOptions.Memory, Disk: hostV1.HostOptions.Disk, EngineOptions: hostV1.HostOptions.EngineOptions, SwarmOptions: hostV1.HostOptions.SwarmOptions, - AuthOptions: &auth.AuthOptions{ + AuthOptions: &auth.Options{ CertDir: filepath.Join(globalStorePath, "certs"), CaCertPath: hostV1.HostOptions.AuthOptions.CaCertPath, CaPrivateKeyPath: hostV1.HostOptions.AuthOptions.PrivateKeyPath, diff --git a/libmachine/host/migrate_v2_v3.go b/libmachine/host/migrate_v2_v3.go index 4786025830..12bcbe5f06 100644 --- a/libmachine/host/migrate_v2_v3.go +++ b/libmachine/host/migrate_v2_v3.go @@ -11,7 +11,7 @@ type RawHost struct { Driver *json.RawMessage } -func MigrateHostV2ToHostV3(hostV2 *HostV2, data []byte, storePath string) *Host { +func MigrateHostV2ToHostV3(hostV2 *V2, data []byte, storePath string) *Host { // Migrate to include RawDriver so that driver plugin will work // smoothly. rawHost := &RawHost{} diff --git a/libmachine/hosttest/default_test_host.go b/libmachine/hosttest/default_test_host.go index 0ddc7c4317..32f2403109 100644 --- a/libmachine/hosttest/default_test_host.go +++ b/libmachine/hosttest/default_test_host.go @@ -51,10 +51,10 @@ func GetTestDriverFlags() *DriverOptionsMock { } func GetDefaultTestHost() (*host.Host, error) { - hostOptions := &host.HostOptions{ - EngineOptions: &engine.EngineOptions{}, - SwarmOptions: &swarm.SwarmOptions{}, - AuthOptions: &auth.AuthOptions{ + hostOptions := &host.Options{ + EngineOptions: &engine.Options{}, + SwarmOptions: &swarm.Options{}, + AuthOptions: &auth.Options{ CaCertPath: HostTestCaCert, CaPrivateKeyPath: HostTestPrivateKey, }, diff --git a/libmachine/persist/filestore.go b/libmachine/persist/filestore.go index fefcfc741a..ee4b662b8d 100644 --- a/libmachine/persist/filestore.go +++ b/libmachine/persist/filestore.go @@ -154,8 +154,8 @@ func (s Filestore) Load(name string) (*host.Host, error) { func (s Filestore) NewHost(driver drivers.Driver) (*host.Host, error) { certDir := filepath.Join(s.Path, "certs") - hostOptions := &host.HostOptions{ - AuthOptions: &auth.AuthOptions{ + hostOptions := &host.Options{ + AuthOptions: &auth.Options{ CertDir: certDir, CaCertPath: filepath.Join(certDir, "ca.pem"), CaPrivateKeyPath: filepath.Join(certDir, "ca-key.pem"), @@ -164,12 +164,12 @@ func (s Filestore) NewHost(driver drivers.Driver) (*host.Host, error) { ServerCertPath: filepath.Join(s.getMachinesDir(), "server.pem"), ServerKeyPath: filepath.Join(s.getMachinesDir(), "server-key.pem"), }, - EngineOptions: &engine.EngineOptions{ + EngineOptions: &engine.Options{ InstallURL: "https://get.docker.com", StorageDriver: "aufs", - TlsVerify: true, + TLSVerify: true, }, - SwarmOptions: &swarm.SwarmOptions{ + SwarmOptions: &swarm.Options{ Host: "tcp://0.0.0.0:3376", Image: "swarm:latest", Strategy: "spread", diff --git a/libmachine/provision/arch.go b/libmachine/provision/arch.go index 87e2e8dce5..38f984d28a 100644 --- a/libmachine/provision/arch.go +++ b/libmachine/provision/arch.go @@ -26,7 +26,7 @@ func NewArchProvisioner(d drivers.Driver) Provisioner { GenericProvisioner{ DockerOptionsDir: "/etc/docker", DaemonOptionsFile: "/etc/systemd/system/docker.service", - OsReleaseId: "arch", + OsReleaseID: "arch", Packages: []string{}, Driver: d, }, @@ -38,7 +38,7 @@ type ArchProvisioner struct { } func (provisioner *ArchProvisioner) CompatibleWithHost() bool { - return provisioner.OsReleaseInfo.Id == provisioner.OsReleaseId || provisioner.OsReleaseInfo.IdLike == provisioner.OsReleaseId + return provisioner.OsReleaseInfo.ID == provisioner.OsReleaseID || provisioner.OsReleaseInfo.IDLike == provisioner.OsReleaseID } func (provisioner *ArchProvisioner) Service(name string, action serviceaction.ServiceAction) error { @@ -104,7 +104,7 @@ func (provisioner *ArchProvisioner) dockerDaemonResponding() bool { return true } -func (provisioner *ArchProvisioner) Provision(swarmOptions swarm.SwarmOptions, authOptions auth.AuthOptions, engineOptions engine.EngineOptions) error { +func (provisioner *ArchProvisioner) Provision(swarmOptions swarm.Options, authOptions auth.Options, engineOptions engine.Options) error { provisioner.SwarmOptions = swarmOptions provisioner.AuthOptions = authOptions provisioner.EngineOptions = engineOptions diff --git a/libmachine/provision/boot2docker.go b/libmachine/provision/boot2docker.go index 7f64fd4c7f..5c41857ff1 100644 --- a/libmachine/provision/boot2docker.go +++ b/libmachine/provision/boot2docker.go @@ -36,9 +36,9 @@ func NewBoot2DockerProvisioner(d drivers.Driver) Provisioner { type Boot2DockerProvisioner struct { OsReleaseInfo *OsRelease Driver drivers.Driver - AuthOptions auth.AuthOptions - EngineOptions engine.EngineOptions - SwarmOptions swarm.SwarmOptions + AuthOptions auth.Options + EngineOptions engine.Options + SwarmOptions swarm.Options } func (provisioner *Boot2DockerProvisioner) Service(name string, action serviceaction.ServiceAction) error { @@ -134,7 +134,7 @@ func (provisioner *Boot2DockerProvisioner) GetDockerOptionsDir() string { return "/var/lib/boot2docker" } -func (provisioner *Boot2DockerProvisioner) GetAuthOptions() auth.AuthOptions { +func (provisioner *Boot2DockerProvisioner) GetAuthOptions() auth.Options { return provisioner.AuthOptions } @@ -185,7 +185,7 @@ SERVERCERT={{.AuthOptions.ServerCertRemotePath}} } func (provisioner *Boot2DockerProvisioner) CompatibleWithHost() bool { - return provisioner.OsReleaseInfo.Id == "boot2docker" + return provisioner.OsReleaseInfo.ID == "boot2docker" } func (provisioner *Boot2DockerProvisioner) SetOsReleaseInfo(info *OsRelease) { @@ -221,7 +221,7 @@ You also might want to clear any VirtualBox host only interfaces you are not usi } } -func (provisioner *Boot2DockerProvisioner) Provision(swarmOptions swarm.SwarmOptions, authOptions auth.AuthOptions, engineOptions engine.EngineOptions) error { +func (provisioner *Boot2DockerProvisioner) Provision(swarmOptions swarm.Options, authOptions auth.Options, engineOptions engine.Options) error { const ( dockerPort = 2376 ) diff --git a/libmachine/provision/centos.go b/libmachine/provision/centos.go index dff8aa4106..a96439ae7f 100644 --- a/libmachine/provision/centos.go +++ b/libmachine/provision/centos.go @@ -14,7 +14,7 @@ func NewCentosProvisioner(d drivers.Driver) Provisioner { g := GenericProvisioner{ DockerOptionsDir: "/etc/docker", DaemonOptionsFile: "/etc/systemd/system/docker.service", - OsReleaseId: "centos", + OsReleaseID: "centos", Packages: []string{}, Driver: d, } diff --git a/libmachine/provision/centos_test.go b/libmachine/provision/centos_test.go index df6bfc9653..13194467bd 100644 --- a/libmachine/provision/centos_test.go +++ b/libmachine/provision/centos_test.go @@ -7,7 +7,7 @@ import ( func TestCentosGenerateYumRepoList(t *testing.T) { info := &OsRelease{ - Id: "centos", + ID: "centos", } p := NewCentosProvisioner(nil) p.SetOsReleaseInfo(info) diff --git a/libmachine/provision/configure_swarm.go b/libmachine/provision/configure_swarm.go index 12c03f8ce4..551d5797a0 100644 --- a/libmachine/provision/configure_swarm.go +++ b/libmachine/provision/configure_swarm.go @@ -17,10 +17,10 @@ type SwarmCommandContext struct { Env []string DockerDir string DockerPort int - Ip string + IP string Port string - AuthOptions auth.AuthOptions - SwarmOptions swarm.SwarmOptions + AuthOptions auth.Options + SwarmOptions swarm.Options SwarmImage string } @@ -47,7 +47,7 @@ func runSwarmCommandFromTemplate(p Provisioner, cmdTmpl string, swarmCmdContext return nil } -func configureSwarm(p Provisioner, swarmOptions swarm.SwarmOptions, authOptions auth.AuthOptions) error { +func configureSwarm(p Provisioner, swarmOptions swarm.Options, authOptions auth.Options) error { if !swarmOptions.IsSwarm { return nil } @@ -74,7 +74,7 @@ func configureSwarm(p Provisioner, swarmOptions swarm.SwarmOptions, authOptions Env: swarmOptions.Env, DockerDir: dockerDir, DockerPort: 2376, - Ip: ip, + IP: ip, Port: port, AuthOptions: authOptions, SwarmOptions: swarmOptions, diff --git a/libmachine/provision/coreos.go b/libmachine/provision/coreos.go index ab6465cf80..ea39fe8a5d 100644 --- a/libmachine/provision/coreos.go +++ b/libmachine/provision/coreos.go @@ -34,7 +34,7 @@ func NewCoreOSProvisioner(d drivers.Driver) Provisioner { GenericProvisioner{ DockerOptionsDir: "/etc/docker", DaemonOptionsFile: "/etc/systemd/system/docker.service", - OsReleaseId: "coreos", + OsReleaseID: "coreos", Driver: d, }, } @@ -128,7 +128,7 @@ func (provisioner *CoreOSProvisioner) Package(name string, action pkgaction.Pack return nil } -func (provisioner *CoreOSProvisioner) Provision(swarmOptions swarm.SwarmOptions, authOptions auth.AuthOptions, engineOptions engine.EngineOptions) error { +func (provisioner *CoreOSProvisioner) Provision(swarmOptions swarm.Options, authOptions auth.Options, engineOptions engine.Options) error { provisioner.SwarmOptions = swarmOptions provisioner.AuthOptions = authOptions provisioner.EngineOptions = engineOptions diff --git a/libmachine/provision/debian.go b/libmachine/provision/debian.go index a50dbfbfd5..9214239fd6 100644 --- a/libmachine/provision/debian.go +++ b/libmachine/provision/debian.go @@ -26,7 +26,7 @@ func NewDebianProvisioner(d drivers.Driver) Provisioner { GenericProvisioner{ DockerOptionsDir: "/etc/docker", DaemonOptionsFile: "/etc/systemd/system/docker.service", - OsReleaseId: "debian", + OsReleaseID: "debian", Packages: []string{ "curl", }, @@ -121,7 +121,7 @@ func (provisioner *DebianProvisioner) dockerDaemonResponding() bool { return true } -func (provisioner *DebianProvisioner) Provision(swarmOptions swarm.SwarmOptions, authOptions auth.AuthOptions, engineOptions engine.EngineOptions) error { +func (provisioner *DebianProvisioner) Provision(swarmOptions swarm.Options, authOptions auth.Options, engineOptions engine.Options) error { provisioner.SwarmOptions = swarmOptions provisioner.AuthOptions = authOptions provisioner.EngineOptions = engineOptions diff --git a/libmachine/provision/engine_config_context.go b/libmachine/provision/engine_config_context.go index 5d57bf4aa0..7a7e9a8082 100644 --- a/libmachine/provision/engine_config_context.go +++ b/libmachine/provision/engine_config_context.go @@ -7,7 +7,7 @@ import ( type EngineConfigContext struct { DockerPort int - AuthOptions auth.AuthOptions - EngineOptions engine.EngineOptions + AuthOptions auth.Options + EngineOptions engine.Options DockerOptionsDir string } diff --git a/libmachine/provision/fedora.go b/libmachine/provision/fedora.go index 4b688087ea..546dec0b5c 100644 --- a/libmachine/provision/fedora.go +++ b/libmachine/provision/fedora.go @@ -14,7 +14,7 @@ func NewFedoraProvisioner(d drivers.Driver) Provisioner { g := GenericProvisioner{ DockerOptionsDir: "/etc/docker", DaemonOptionsFile: "/etc/systemd/system/docker.service", - OsReleaseId: "fedora", + OsReleaseID: "fedora", Packages: []string{}, Driver: d, } diff --git a/libmachine/provision/fedora_test.go b/libmachine/provision/fedora_test.go index 8bc0180393..15ddd302da 100644 --- a/libmachine/provision/fedora_test.go +++ b/libmachine/provision/fedora_test.go @@ -7,7 +7,7 @@ import ( func TestFedoraGenerateYumRepoList(t *testing.T) { info := &OsRelease{ - Id: "fedora", + ID: "fedora", } p := NewCentosProvisioner(nil) p.SetOsReleaseInfo(info) diff --git a/libmachine/provision/generic.go b/libmachine/provision/generic.go index 4a7938947d..db6238c492 100644 --- a/libmachine/provision/generic.go +++ b/libmachine/provision/generic.go @@ -12,15 +12,15 @@ import ( ) type GenericProvisioner struct { - OsReleaseId string + OsReleaseID string DockerOptionsDir string DaemonOptionsFile string Packages []string OsReleaseInfo *OsRelease Driver drivers.Driver - AuthOptions auth.AuthOptions - EngineOptions engine.EngineOptions - SwarmOptions swarm.SwarmOptions + AuthOptions auth.Options + EngineOptions engine.Options + SwarmOptions swarm.Options } func (provisioner *GenericProvisioner) Hostname() (string, error) { @@ -57,10 +57,10 @@ func (provisioner *GenericProvisioner) SSHCommand(args string) (string, error) { } func (provisioner *GenericProvisioner) CompatibleWithHost() bool { - return provisioner.OsReleaseInfo.Id == provisioner.OsReleaseId + return provisioner.OsReleaseInfo.ID == provisioner.OsReleaseID } -func (provisioner *GenericProvisioner) GetAuthOptions() auth.AuthOptions { +func (provisioner *GenericProvisioner) GetAuthOptions() auth.Options { return provisioner.AuthOptions } diff --git a/libmachine/provision/os_release.go b/libmachine/provision/os_release.go index 4c47c40fd0..363495f56f 100644 --- a/libmachine/provision/os_release.go +++ b/libmachine/provision/os_release.go @@ -20,13 +20,13 @@ type OsRelease struct { AnsiColor string `osr:"ANSI_COLOR"` Name string `osr:"NAME"` Version string `osr:"VERSION"` - Id string `osr:"ID"` - IdLike string `osr:"ID_LIKE"` + ID string `osr:"ID"` + IDLike string `osr:"ID_LIKE"` PrettyName string `osr:"PRETTY_NAME"` - VersionId string `osr:"VERSION_ID"` - HomeUrl string `osr:"HOME_URL"` - SupportUrl string `osr:"SUPPORT_URL"` - BugReportUrl string `osr:"BUG_REPORT_URL"` + VersionID string `osr:"VERSION_ID"` + HomeURL string `osr:"HOME_URL"` + SupportURL string `osr:"SUPPORT_URL"` + BugReportURL string `osr:"BUG_REPORT_URL"` } func stripQuotes(val string) string { diff --git a/libmachine/provision/os_release_test.go b/libmachine/provision/os_release_test.go index e3a90874ca..eb4d35093e 100644 --- a/libmachine/provision/os_release_test.go +++ b/libmachine/provision/os_release_test.go @@ -59,13 +59,13 @@ BUG_REPORT_URL="https://bugs.centos.org/" AnsiColor: "", Name: "Ubuntu", Version: "14.04, Trusty Tahr", - Id: "ubuntu", - IdLike: "debian", + ID: "ubuntu", + IDLike: "debian", PrettyName: "Ubuntu 14.04 LTS", - VersionId: "14.04", - HomeUrl: "http://www.ubuntu.com/", - SupportUrl: "http://help.ubuntu.com/", - BugReportUrl: "http://bugs.launchpad.net/ubuntu/", + VersionID: "14.04", + HomeURL: "http://www.ubuntu.com/", + SupportURL: "http://help.ubuntu.com/", + BugReportURL: "http://bugs.launchpad.net/ubuntu/", } if !reflect.DeepEqual(*osr, expectedOsr) { @@ -81,13 +81,13 @@ BUG_REPORT_URL="https://bugs.centos.org/" AnsiColor: "1;32", Name: "Gentoo", Version: "", - Id: "gentoo", - IdLike: "", + ID: "gentoo", + IDLike: "", PrettyName: "Gentoo/Linux", - VersionId: "", - HomeUrl: "http://www.gentoo.org/", - SupportUrl: "http://www.gentoo.org/main/en/support.xml", - BugReportUrl: "https://bugs.gentoo.org/", + VersionID: "", + HomeURL: "http://www.gentoo.org/", + SupportURL: "http://www.gentoo.org/main/en/support.xml", + BugReportURL: "https://bugs.gentoo.org/", } if !reflect.DeepEqual(*osr, expectedOsr) { @@ -103,13 +103,13 @@ BUG_REPORT_URL="https://bugs.centos.org/" AnsiColor: "", Name: "Ubuntu", Version: "14.04, Trusty Tahr", - Id: "ubuntu", - IdLike: "debian", + ID: "ubuntu", + IDLike: "debian", PrettyName: "", - VersionId: "14.04", - HomeUrl: "http://www.ubuntu.com/", - SupportUrl: "http://help.ubuntu.com/", - BugReportUrl: "http://bugs.launchpad.net/ubuntu/", + VersionID: "14.04", + HomeURL: "http://www.ubuntu.com/", + SupportURL: "http://help.ubuntu.com/", + BugReportURL: "http://bugs.launchpad.net/ubuntu/", } if !reflect.DeepEqual(*osr, expectedOsr) { @@ -124,13 +124,13 @@ BUG_REPORT_URL="https://bugs.centos.org/" expectedOsr = OsRelease{ Name: "CentOS Linux", Version: "7 (Core)", - Id: "centos", - IdLike: "rhel fedora", + ID: "centos", + IDLike: "rhel fedora", PrettyName: "CentOS Linux 7 (Core)", AnsiColor: "0;31", - VersionId: "7", - HomeUrl: "https://www.centos.org/", - BugReportUrl: "https://bugs.centos.org/", + VersionID: "7", + HomeURL: "https://www.centos.org/", + BugReportURL: "https://bugs.centos.org/", } if !reflect.DeepEqual(*osr, expectedOsr) { diff --git a/libmachine/provision/provisioner.go b/libmachine/provision/provisioner.go index 667a26e705..542ea2aad9 100644 --- a/libmachine/provision/provisioner.go +++ b/libmachine/provision/provisioner.go @@ -23,7 +23,7 @@ type Provisioner interface { GetDockerOptionsDir() string // Return the auth options used to configure remote connection for the daemon. - GetAuthOptions() auth.AuthOptions + GetAuthOptions() auth.Options // Run a package action e.g. install Package(name string, action pkgaction.PackageAction) error @@ -43,7 +43,7 @@ type Provisioner interface { // 3. Configure the daemon to accept connections over TLS. // 4. Copy the needed certificates to the server and local config dir. // 5. Configure / activate swarm if applicable. - Provision(swarmOptions swarm.SwarmOptions, authOptions auth.AuthOptions, engineOptions engine.EngineOptions) error + Provision(swarmOptions swarm.Options, authOptions auth.Options, engineOptions engine.Options) error // Perform action on a named service e.g. stop Service(name string, action serviceaction.ServiceAction) error @@ -87,7 +87,7 @@ func DetectProvisioner(d drivers.Driver) (Provisioner, error) { provisioner.SetOsReleaseInfo(osReleaseInfo) if provisioner.CompatibleWithHost() { - log.Debugf("found compatible host: %s", osReleaseInfo.Id) + log.Debugf("found compatible host: %s", osReleaseInfo.ID) return provisioner, nil } } diff --git a/libmachine/provision/rancheros.go b/libmachine/provision/rancheros.go index 1abaf2459c..c58812468c 100644 --- a/libmachine/provision/rancheros.go +++ b/libmachine/provision/rancheros.go @@ -41,7 +41,7 @@ func NewRancherProvisioner(d drivers.Driver) Provisioner { GenericProvisioner{ DockerOptionsDir: "/var/lib/rancher/conf", DaemonOptionsFile: "/var/lib/rancher/conf/docker", - OsReleaseId: "rancheros", + OsReleaseID: "rancheros", Driver: d, }, } @@ -87,7 +87,7 @@ func (provisioner *RancherProvisioner) Package(name string, action pkgaction.Pac return nil } -func (provisioner *RancherProvisioner) Provision(swarmOptions swarm.SwarmOptions, authOptions auth.AuthOptions, engineOptions engine.EngineOptions) error { +func (provisioner *RancherProvisioner) Provision(swarmOptions swarm.Options, authOptions auth.Options, engineOptions engine.Options) error { provisioner.SwarmOptions = swarmOptions provisioner.AuthOptions = authOptions provisioner.EngineOptions = engineOptions diff --git a/libmachine/provision/redhat.go b/libmachine/provision/redhat.go index 24a9da6cb2..85dccbb167 100644 --- a/libmachine/provision/redhat.go +++ b/libmachine/provision/redhat.go @@ -53,7 +53,7 @@ func NewRedHatProvisioner(d drivers.Driver) Provisioner { GenericProvisioner: GenericProvisioner{ DockerOptionsDir: "/etc/docker", DaemonOptionsFile: "/etc/systemd/system/docker.service", - OsReleaseId: "rhel", + OsReleaseID: "rhel", Packages: []string{ "curl", }, @@ -196,7 +196,7 @@ func (provisioner *RedHatProvisioner) dockerDaemonResponding() bool { return true } -func (provisioner *RedHatProvisioner) Provision(swarmOptions swarm.SwarmOptions, authOptions auth.AuthOptions, engineOptions engine.EngineOptions) error { +func (provisioner *RedHatProvisioner) Provision(swarmOptions swarm.Options, authOptions auth.Options, engineOptions engine.Options) error { provisioner.SwarmOptions = swarmOptions provisioner.AuthOptions = authOptions provisioner.EngineOptions = engineOptions @@ -289,7 +289,7 @@ func generateYumRepoList(provisioner Provisioner) (*bytes.Buffer, error) { return nil, err } - switch releaseInfo.Id { + switch releaseInfo.ID { case "rhel", "centos": // rhel and centos both use the "centos" repo packageListInfo.OsRelease = "centos" diff --git a/libmachine/provision/redhat_test.go b/libmachine/provision/redhat_test.go index 27d0f46706..20050e8158 100644 --- a/libmachine/provision/redhat_test.go +++ b/libmachine/provision/redhat_test.go @@ -7,7 +7,7 @@ import ( func TestRedHatGenerateYumRepoList(t *testing.T) { info := &OsRelease{ - Id: "rhel", + ID: "rhel", } p := NewRedHatProvisioner(nil) p.SetOsReleaseInfo(info) diff --git a/libmachine/provision/suse.go b/libmachine/provision/suse.go index 3244c90e31..92cbaf33a6 100644 --- a/libmachine/provision/suse.go +++ b/libmachine/provision/suse.go @@ -32,7 +32,7 @@ func NewOpenSUSEProvisioner(d drivers.Driver) Provisioner { GenericProvisioner{ DockerOptionsDir: "/etc/docker", DaemonOptionsFile: "/etc/sysconfig/docker", - OsReleaseId: "opensuse", + OsReleaseID: "opensuse", Packages: []string{ "curl", }, @@ -46,7 +46,7 @@ func NewSLEDProvisioner(d drivers.Driver) Provisioner { GenericProvisioner{ DockerOptionsDir: "/etc/docker", DaemonOptionsFile: "/etc/sysconfig/docker", - OsReleaseId: "sled", + OsReleaseID: "sled", Packages: []string{ "curl", }, @@ -60,7 +60,7 @@ func NewSLESProvisioner(d drivers.Driver) Provisioner { GenericProvisioner{ DockerOptionsDir: "/etc/docker", DaemonOptionsFile: "/etc/sysconfig/docker", - OsReleaseId: "sles", + OsReleaseID: "sles", Packages: []string{ "curl", }, @@ -129,7 +129,7 @@ func (provisioner *SUSEProvisioner) dockerDaemonResponding() bool { return true } -func (provisioner *SUSEProvisioner) Provision(swarmOptions swarm.SwarmOptions, authOptions auth.AuthOptions, engineOptions engine.EngineOptions) error { +func (provisioner *SUSEProvisioner) Provision(swarmOptions swarm.Options, authOptions auth.Options, engineOptions engine.Options) error { provisioner.SwarmOptions = swarmOptions provisioner.AuthOptions = authOptions provisioner.EngineOptions = engineOptions diff --git a/libmachine/provision/ubuntu.go b/libmachine/provision/ubuntu.go index a17033ce0c..7db1a3deaf 100644 --- a/libmachine/provision/ubuntu.go +++ b/libmachine/provision/ubuntu.go @@ -24,7 +24,7 @@ func NewUbuntuProvisioner(d drivers.Driver) Provisioner { GenericProvisioner{ DockerOptionsDir: "/etc/docker", DaemonOptionsFile: "/etc/default/docker", - OsReleaseId: "ubuntu", + OsReleaseID: "ubuntu", Packages: []string{ "curl", }, @@ -114,7 +114,7 @@ func (provisioner *UbuntuProvisioner) dockerDaemonResponding() bool { return true } -func (provisioner *UbuntuProvisioner) Provision(swarmOptions swarm.SwarmOptions, authOptions auth.AuthOptions, engineOptions engine.EngineOptions) error { +func (provisioner *UbuntuProvisioner) Provision(swarmOptions swarm.Options, authOptions auth.Options, engineOptions engine.Options) error { provisioner.SwarmOptions = swarmOptions provisioner.AuthOptions = authOptions provisioner.EngineOptions = engineOptions diff --git a/libmachine/provision/utils.go b/libmachine/provision/utils.go index 70739e2970..2f070c4bb0 100644 --- a/libmachine/provision/utils.go +++ b/libmachine/provision/utils.go @@ -42,7 +42,7 @@ func makeDockerOptionsDir(p Provisioner) error { return nil } -func setRemoteAuthOptions(p Provisioner) auth.AuthOptions { +func setRemoteAuthOptions(p Provisioner) auth.Options { dockerDir := p.GetDockerOptionsDir() authOptions := p.GetAuthOptions() diff --git a/libmachine/provision/utils_test.go b/libmachine/provision/utils_test.go index 7624b80744..1585035c48 100644 --- a/libmachine/provision/utils_test.go +++ b/libmachine/provision/utils_test.go @@ -59,7 +59,7 @@ func TestGenerateDockerOptionsBoot2Docker(t *testing.T) { Driver: &fakedriver.Driver{}, } dockerPort := 1234 - p.AuthOptions = auth.AuthOptions{ + p.AuthOptions = auth.Options{ CaCertRemotePath: "/test/ca-cert", ServerKeyRemotePath: "/test/server-key", ServerCertRemotePath: "/test/server-cert", @@ -98,7 +98,7 @@ func TestMachinePortBoot2Docker(t *testing.T) { } dockerPort := 2376 bindURL := fmt.Sprintf("tcp://0.0.0.0:%d", dockerPort) - p.AuthOptions = auth.AuthOptions{ + p.AuthOptions = auth.Options{ CaCertRemotePath: "/test/ca-cert", ServerKeyRemotePath: "/test/server-key", ServerCertRemotePath: "/test/server-cert", @@ -130,7 +130,7 @@ func TestMachineCustomPortBoot2Docker(t *testing.T) { } dockerPort := 3376 bindURL := fmt.Sprintf("tcp://0.0.0.0:%d", dockerPort) - p.AuthOptions = auth.AuthOptions{ + p.AuthOptions = auth.Options{ CaCertRemotePath: "/test/ca-cert", ServerKeyRemotePath: "/test/server-key", ServerCertRemotePath: "/test/server-cert", diff --git a/libmachine/ssh/client.go b/libmachine/ssh/client.go index 9c1585b897..26c9c1a2fc 100644 --- a/libmachine/ssh/client.go +++ b/libmachine/ssh/client.go @@ -35,15 +35,15 @@ type Auth struct { Keys []string } -type SSHClientType string +type ClientType string const ( maxDialAttempts = 10 ) const ( - External SSHClientType = "external" - Native SSHClientType = "native" + External ClientType = "external" + Native ClientType = "native" ) var ( @@ -58,10 +58,10 @@ var ( "-o", "ControlMaster=no", // disable ssh multiplexing "-o", "ControlPath=no", } - defaultClientType SSHClientType = External + defaultClientType = External ) -func SetDefaultClient(clientType SSHClientType) { +func SetDefaultClient(clientType ClientType) { // Allow over-riding of default client type, so that even if ssh binary // is found in PATH we can still use the Go native implementation if // desired. diff --git a/libmachine/swarm/swarm.go b/libmachine/swarm/swarm.go index b455a9fffa..d7476316ad 100644 --- a/libmachine/swarm/swarm.go +++ b/libmachine/swarm/swarm.go @@ -4,7 +4,7 @@ const ( DiscoveryServiceEndpoint = "https://discovery-stage.hub.docker.com/v1" ) -type SwarmOptions struct { +type Options struct { IsSwarm bool Address string Discovery string diff --git a/libmachine/version/version.go b/libmachine/version/version.go index 9c4b607b44..3cacffdb0c 100644 --- a/libmachine/version/version.go +++ b/libmachine/version/version.go @@ -1,8 +1,8 @@ package version var ( - // ApiVersion dictates which version of the libmachine API this is. - ApiVersion = 1 + // APIVersion dictates which version of the libmachine API this is. + APIVersion = 1 // ConfigVersion dictates which version of the config.json format is // used. It needs to be bumped if there is a breaking change, and diff --git a/mk/main.mk b/mk/main.mk index 9c690b9cd1..c7e271917c 100644 --- a/mk/main.mk +++ b/mk/main.mk @@ -64,7 +64,7 @@ install: cp $(PREFIX)/bin/docker-machine $(PREFIX)/bin/docker-machine-driver* /usr/local/bin clean: coverage-clean build-clean -test: dco fmt test-short vet +test: dco fmt test-short lint vet validate: dco fmt vet lint test-short test-long .PHONY: .all_build .all_coverage .all_release .all_test .all_validate test build validate clean diff --git a/mk/validate.mk b/mk/validate.mk index f906dfcaaf..d1d390181c 100644 --- a/mk/validate.mk +++ b/mk/validate.mk @@ -20,4 +20,4 @@ vet: build lint: $(if $(GOLINT), , \ $(error Please install golint: go get -u github.com/golang/lint/golint)) - @test -z "$$($(GOLINT) ./... 2>&1 | grep -v vendor/ | tee /dev/stderr)" + @test -z "$$($(GOLINT) ./... 2>&1 | grep -v vendor/ | grep -v drivers/ | grep -v cli/ | grep -v "should have comment" | tee /dev/stderr)"