Commit Graph

36 Commits

Author SHA1 Message Date
David Gageot cdfa729f36 Simplify code
Signed-off-by: David Gageot <david@gageot.net>
2015-12-22 12:04:46 +01:00
David Gageot 181a1d47b4 The generic driver shouldn't support kill since stop is not supported
Signed-off-by: David Gageot <david@gageot.net>
2015-12-22 11:46:59 +01:00
David Gageot 4bfd8ab4c1 Remove dead code in generic driver
Signed-off-by: David Gageot <david@gageot.net>
2015-12-22 11:46:14 +01:00
Dave Henderson cf6136fed0 Allowing generic driver to use ssh-agent to get identities
Signed-off-by: Dave Henderson <dhenderson@gmail.com>
2015-12-09 09:36:08 -05:00
David Gageot 55ecd6561c Add env variables to generic driver
Signed-off-by: David Gageot <david@gageot.net>
2015-11-27 09:58:40 +01:00
David Gageot 7d6bfffb8f Generic Driver - Check key in PreCheck
Signed-off-by: David Gageot <david@gageot.net>
2015-11-27 09:39:15 +01:00
Nathan LeClaire 7b483fe0ee Revise CommandLine interface to contain libmachine client and store
Signed-off-by: Nathan LeClaire <nathan.leclaire@gmail.com>
2015-11-24 09:59:58 -08:00
Vladimir Varankin 0735f3f447 fix drivers GetUrl to build propper IPv6 addr
Signed-off-by: Vladimir Varankin <nek.narqo+git@gmail.com>
2015-11-13 13:19:15 +03:00
Olivier Gambier 89d9854943 Another pass at linting
Signed-off-by: Olivier Gambier <olivier@docker.com>
2015-11-10 16:58:14 +01:00
David Gageot 11922080a1 FIX #2171 Fix faulty flag and add tests for SetConfigFromFlags
Signed-off-by: David Gageot <david@gageot.net>
2015-11-05 18:57:03 +01:00
Olivier Gambier ae2d344c2b Carry on commits from #2033
A couple of small cleanup and enhancements that were dropped after the revert.

Signed-off-by: Olivier Gambier <olivier@docker.com>
2015-10-30 16:33:26 -07:00
David Gageot 6c5dc41e6d Revert "Remove useless duplication on GetSSHHostname"
This reverts commit b6462eb6d0.

Signed-off-by: David Gageot <david@gageot.net>
2015-10-26 18:47:14 +01:00
David Gageot 57dc1156de Revert "Remove duplication over GetIP"
This reverts commit 99aacc7b79.

Signed-off-by: David Gageot <david@gageot.net>
2015-10-26 18:47:03 +01:00
David Gageot a7559fd3a8 Revert "Generic and Base slight cleanups"
This reverts commit 19625def22.

Signed-off-by: David Gageot <david@gageot.net>
2015-10-26 18:46:54 +01:00
Olivier Gambier 19625def22 Generic and Base slight cleanups
- tests for GetIP
- extract default values into consts (user & port)
- better error handling (cert permissions change)
- unexport Driver for generic (linting)
- ordering of methods and variables for better readability

Signed-off-by: Olivier Gambier <olivier@docker.com>
2015-10-23 10:38:57 -07:00
Olivier Gambier 99aacc7b79 Remove duplication over GetIP
+ ip address proper validation

Signed-off-by: Olivier Gambier <olivier@docker.com>
2015-10-21 13:48:13 -07:00
Olivier Gambier b6462eb6d0 Remove useless duplication on GetSSHHostname
Signed-off-by: Olivier Gambier <olivier@docker.com>
2015-10-21 13:48:13 -07:00
Olivier Gambier c2589c8099 Trivial cleanup / ordering / inline doc
Signed-off-by: Olivier Gambier <olivier@docker.com>
2015-10-21 13:48:13 -07:00
Nathan LeClaire c8edb33ecd Move towards using external binaries / RPC plugins
- First RPC steps

- Work on some flaws in RPC model

- Remove unused TLS settings from Engine and Swarm options

- Add code to correctly encode data over the network

- Add client driver for RPC

- Rename server driver file

- Start to make marshal make sense

- Fix silly RPC method args and add client

- Fix some issues with RPC calls, and marshaling

- Simplify plugin main.go

- Move towards 100% plugin in CLI

- Ensure that plugin servers are cleaned up properly

- Make flag parsing for driver flags work properly

Includes some work carried from @dmp42 updating the build process and
tests to use the new method.

Signed-off-by: Nathan LeClaire <nathan.leclaire@gmail.com>
2015-10-16 16:34:56 -07:00
Nathan LeClaire b5927f10c4 Make libmachine usable by outside world
- Clear out some cruft tightly coupling libmachine to filestore

- Comment out drivers other than virtualbox for now

- Change way too many things

- Mostly, break out the code to be more modular.

- Destroy all traces of "provider" in its current form.  It will be
brought back as something more sensible, instead of something which
overlaps in function with both Host and Store.

- Fix mis-managed config passthru

- Remove a few instances of state stored in env vars

- This should be explicitly communicated in Go-land, not through the
shell.

- Rename "store" module to "persist"

- This is done mostly to avoid confusion about the fact that a concrete
instance of a "Store" interface is oftentimes referred to as "store" in
the code.

- Rip out repetitive antipattern for getting store

- This replaces the previous repetive idiom for getting the cert info, and
consequently the store, with a much less repetitive idiom.

- Also, some redundant methods in commands.go for accessing hosts have
either been simplified or removed entirely.

- First steps towards fixing up tests

- Test progress continues

- Replace unit tests with integration tests

- MAKE ALL UNIT TESTS PASS YAY

- Add helper test files

- Don't write to disk in libmachine/host

- Heh.. coverage check strikes again

- Fix remove code

- Move cert code around

- Continued progress: simplify Driver

- Fixups and make creation work with new model

- Move drivers module inside of libmachine

- Move ssh module inside of libmachine

- Move state module to libmachine

- Move utils module to libmachine

- Move version module to libmachine

- Move log module to libmachine

- Modify some constructor methods around

- Change Travis build dep structure

- Boring gofmt fix

- Add version module

- Move NewHost to store

- Update some boring cert path infos to make API easier to use

- Fix up some issues around the new model

- Clean up some cert path stuff

- Don't use shady functions to get store path :D

- Continue artifact work

- Fix silly machines dir bug

- Continue fixing silly path issues

- Change up output of vbm a bit

- Continue work to make example go

- Change output a little more

- Last changes needed to make create finish properly

- Fix config.go to use libmachine

- Cut down code duplication and make both methods work with libmachine

- Add pluggable logging implementation

- Return error when machine already in desired state

- Update example to show log method

- Fix file:// bug

- Fix Swarm defaults

- Remove unused TLS settings from Engine and Swarm options

- Remove spurious error

- Correct bug detecting if migration was performed

- Fix compilation errors from tests

- Fix most of remaining test issues

- Fix final silly bug in tests

- Remove extraneous debug code

- Add -race to test command

- Appease the gofmt

- Appease the generate coverage

- Making executive decision to remove Travis coverage check

In the early days I thought this would be a good idea because it would
encourage people to write tests in case they added a new module.  Well,
in fact it has just turned into a giant nuisance and made refactoring
work like this even more difficult.

- Move Get to Load
- Move HostListItem code to CLI

Signed-off-by: Nathan LeClaire <nathan.leclaire@gmail.com>
2015-09-23 12:30:15 -07:00
Dave Henderson 3d002187fe Refactoring drivers to embed drivers.DefaultDriver
Signed-off-by: Dave Henderson <dhenderson@gmail.com>
2015-07-07 11:24:00 -04:00
Evan Hazlett f82032b28d remove provider
Signed-off-by: Evan Hazlett <ejhazlett@gmail.com>
2015-05-21 10:41:03 -04:00
Evan Hazlett 9030986a63
generic: pretty struct format
Signed-off-by: Evan Hazlett <ejhazlett@gmail.com>
2015-05-05 11:08:45 -07:00
Evan Hazlett e9e0fa5cfc
generic: remove unneeded check for ssh user
Signed-off-by: Evan Hazlett <ejhazlett@gmail.com>
2015-05-05 11:07:45 -07:00
Evan Hazlett e6159ce6c9
generic: reduce wait time for GetState
Signed-off-by: Evan Hazlett <ejhazlett@gmail.com>
2015-05-05 11:05:47 -07:00
Evan Hazlett fc49adbcdf generic: use ~/.ssh/id_rsa as default ssh key
Signed-off-by: Evan Hazlett <ejhazlett@gmail.com>
2015-05-05 11:04:48 -07:00
Evan Hazlett afb9cb39e2 generic: ssh timeout
Signed-off-by: Evan Hazlett <ejhazlett@gmail.com>
2015-05-05 11:04:48 -07:00
Evan Hazlett 2d525d0abd generic: update to new logging; fix ssh user bug
Signed-off-by: Evan Hazlett <ejhazlett@gmail.com>
2015-05-05 11:04:48 -07:00
Evan Hazlett 8e0b80b015 generic: rename generic-user to generic-ssh-user; update docs
Signed-off-by: Evan Hazlett <ejhazlett@gmail.com>
2015-05-05 11:04:48 -07:00
Evan Hazlett 4e64ff79f9 generic: update for upstream driver specification
Signed-off-by: Evan Hazlett <ejhazlett@gmail.com>
2015-05-05 11:04:48 -07:00
Evan Hazlett 94ccd5cd5a generic: remove unneeded config
Signed-off-by: Evan Hazlett <ejhazlett@gmail.com>
2015-05-05 11:04:48 -07:00
Evan Hazlett f4c6730539 rebased and updated generic driver for latest driver spec
Signed-off-by: Evan Hazlett <ejhazlett@gmail.com>
2015-05-05 11:04:47 -07:00
Evan Hazlett fb5036e8fd generic: add precreatecheck to driver
Signed-off-by: Evan Hazlett <ejhazlett@gmail.com>
2015-05-05 11:04:47 -07:00
Evan Hazlett 85dac5440a generic: minor logging update
Signed-off-by: Evan Hazlett <ejhazlett@gmail.com>
2015-05-05 11:04:47 -07:00
Evan Hazlett b3a0a4a882 generic: use SSHPort
Signed-off-by: Evan Hazlett <ejhazlett@gmail.com>
2015-05-05 11:04:47 -07:00
Evan Hazlett 7fc50f3de3 add generic driver
Signed-off-by: Evan Hazlett <ejhazlett@gmail.com>
2015-05-05 11:04:47 -07:00