111 Commits

Author SHA1 Message Date
Guillaume Tardif
830914cb15 Prepare for release 0.1.0 2020-06-17 08:41:54 +02:00
Guillaume Tardif
2a49c3b32f added -q flag to docker context ls. (This is now used in desktop e2e wsl2 tests)
See https://ci-next.docker.com/teams-desktop/blue/organizations/jenkins/desktop%2Fdesktop-test-single-branch-win/detail/desktop-test-single-branch-win/274982/pipeline/
2020-06-17 07:40:27 +02:00
Ulysses Souza
5b1522095b Fix linter
Signed-off-by: Ulysses Souza <ulyssessouza@gmail.com>
2020-06-16 10:59:40 +02:00
Guillaume Tardif
9257d0ff49
Merge pull request #205 from ulyssessouza/inspect
Add inspect command
2020-06-16 09:33:33 +02:00
Ulysses Souza
1039c5ed94 Add tests on inspect
Signed-off-by: Ulysses Souza <ulyssessouza@gmail.com>
2020-06-15 17:20:37 +02:00
Guillaume Tardif
eb505ecd75 Add -f option to force remove current context and switch to default if required 2020-06-15 16:28:43 +02:00
Guillaume Tardif
ddc44d7abe Do not allow deleting curent context without -f flag 2020-06-15 15:52:44 +02:00
Ulysses Souza
96bc1ca6f1 Add inspect command
Signed-off-by: Ulysses Souza <ulyssessouza@gmail.com>
2020-06-15 15:08:04 +02:00
Guillaume Tardif
0de2522079 Renamed Moby backend to “local” backend. This will leave “moby” available for default type contexts 2020-06-15 12:20:03 +02:00
Guillaume Tardif
113350a09d Context create aci is now a subcommand, as Moby and example. Root docker context create also allows backward compatibility to create docker contexts as before 2020-06-15 12:19:06 +02:00
Guillaume Tardif
d0b2bfbf52 Fix docker context ls that was not displaying legacy context endpoints 2020-06-15 12:10:54 +02:00
Guillaume Tardif
336df897c1
Merge pull request #207 from docker/version_cli
version command adding azure integration beta version in textual output
2020-06-15 12:02:33 +02:00
Guillaume Tardif
afa205be95 Server version : will be 1.0.0-beta1, -beta2, … 2020-06-15 11:51:03 +02:00
Guillaume Tardif
376a4b671c version command adding azure integration beta version in textual output 2020-06-13 10:47:05 +02:00
Guillaume Tardif
f8ea0934f0 Align login success message with old cli (& with “canceled” message) 2020-06-12 14:50:35 +02:00
Guillaume Tardif
3c2eb067bc Fix typo in DOCKER ENPOINT 2020-06-12 14:50:35 +02:00
Guillaume Tardif
e7682682fb Store context type in metadata to make retrocompatibility with previous contexts easier (potentially switching back and forth) 2020-06-10 18:17:48 +02:00
Djordje Lukic
8400795caf Add the store to the gRPC context
The contexts service needs it
2020-06-09 12:11:59 +02:00
Djordje Lukic
bb69de1db3 Add context endpoint to set the current context 2020-06-08 16:01:43 +02:00
Djordje Lukic
22d4d250a9 Move the config into own package and outside of cli 2020-06-08 16:01:36 +02:00
Djordje Lukic
67fb49c98c
Merge pull request #179 from rumpl/feat-stream
Feat stream
2020-06-08 06:52:56 -07:00
Guillaume Tardif
f1a5f2d6cf Backend is responsible for generating containers IDs and truncate them if wanted/supported for docker ps 2020-06-08 12:37:33 +02:00
Djordje Lukic
c34d016fdb Unify protos with client interfaces
* change function names in containers.proto
* add streams proto
2020-06-08 09:43:19 +02:00
Guillaume Tardif
b91eab0544
Merge pull request #170 from docker/context_create_check
Do not allow context creation for unknown types
2020-06-04 16:51:11 +02:00
Guillaume Tardif
4a4b62ded2 Do not allow context creation for unknown types 2020-06-04 16:44:08 +02:00
Guillaume Tardif
427527d197
Merge pull request #146 from docker/chore-refactor-azure-login
Refactor Azure login local server
2020-06-04 10:39:30 +02:00
Christopher Crone
e5335adedd Azure: Refactor login errors
Signed-off-by: Christopher Crone <christopher.crone@docker.com>
2020-06-04 10:20:39 +02:00
Christopher Crone
35789ace12 Azure: Refactor creation of login server
Signed-off-by: Christopher Crone <christopher.crone@docker.com>
2020-06-03 17:10:54 +02:00
Guillaume Tardif
5675763856 Interactive context create, adding method CreateContextData to CloudService interface, so Cloud Backends can provide a custom context creation method. 2020-06-02 16:04:08 +02:00
Guillaume Tardif
e2b9f5bc57 Move login to root command, delegate to classic login when only one arg and not dot in it 2020-06-01 22:55:46 +02:00
Guillaume Tardif
f1fb80ecc5
Merge pull request #161 from docker/context_inspect
Add docker context inspect command relying on classic docker
2020-05-29 15:51:10 +02:00
Guillaume Tardif
528d47ce08 Add docker context inspect command relying on classic docker 2020-05-29 12:02:14 +02:00
Guillaume Tardif
01aaec2dbe Fix Azure login : allow getting a backend when no corresponding context already exists with an explicit call from the login command. Will be usefull next for context creation with azure interactive things 2020-05-29 11:35:35 +02:00
Guillaume Tardif
d2648da2d9 Fix shell out to docker-classic when invoking 2020-05-27 16:12:40 +02:00
Djordje Lukic
cb14c05e74 Move the context server into own package
It had notthing to do in the cli package
2020-05-26 10:31:14 +02:00
Djordje Lukic
b8658b3f54 Rename cli protos to contexts 2020-05-26 10:20:13 +02:00
Djordje Lukic
129e675932 Put all protos inside the protos package 2020-05-25 15:04:28 +02:00
Djordje Lukic
11339761ca Change the way a context is stored
Initially we stored the context data in the `Metadata` of the context
but in hindsight this data would be better of in the `Endpoints` because
that's what it is used for.

Before:
```json
{
  "Name": "aci",
  "Metadata": {
    "Type": "aci",
    "Data": {
      "key": "value"
    }
  },
  "Endpoints": {
      "docker": {}
  }
}
```

After:
```json
{
  "Name": "aci",
  "Type": "aci",
  "Metadata": {},
  "Endpoints": {
      "aci": {
          "key": "value"
      },
      "docker": {}
  }
}
```

With this change the contexts that we create are more in line with the contexts the docker cli creates.

It also makes the code less complicated since we don't need to marsal twice any more. The API is nicer too:

```go
// Get a context:
c, err := store.Get(contextName)

// Get the stored endpoint:
var aciContext store.AciContext
if err := contextStore.GetEndpoint(currentContext, &aciContext); err != nil {
	return nil, err
}
```
2020-05-22 16:32:43 +02:00
Djordje Lukic
de33f183df
Merge pull request #139 from rumpl/feat-log-stream
Implement gRPC logging
2020-05-22 06:23:47 -07:00
Chris Crone
0917acfb01
Merge pull request #142 from chris-crone/fix-141
Set random container name if not set
2020-05-22 11:31:16 +02:00
Djordje Lukic
36c01f511b Refactor the interceptors
Avoid having a function that takes in two contexts as parameters
2020-05-22 10:16:04 +02:00
Djordje Lukic
8495500aa2 Add a CliSuite for cli unit tests
Makes writing unit tests for commands quite easier
2020-05-22 10:13:56 +02:00
Christopher Crone
dd66646c06 Unit test run help
Signed-off-by: Christopher Crone <christopher.crone@docker.com>
2020-05-21 20:03:06 +02:00
Christopher Crone
0efa67f7d2 Set random container name if not set
Signed-off-by: Christopher Crone <christopher.crone@docker.com>
2020-05-21 19:28:42 +02:00
Djordje Lukic
fe36c49246 Use alpine as base image
Installing docker on buster is a pain, use alpine to install it
2020-05-20 18:39:10 +02:00
Djordje Lukic
95e07a2134 Add default context to the context ls output 2020-05-20 18:39:10 +02:00
Christopher Crone
ebe3fbc180 Use config dir for serving API
Signed-off-by: Christopher Crone <christopher.crone@docker.com>
2020-05-20 15:56:07 +02:00
Christopher Crone
058e6203a7 Store config dir in CLI context
Signed-off-by: Christopher Crone <christopher.crone@docker.com>
2020-05-20 15:55:05 +02:00
Ulysses Souza
d2fece3311 Fix linter problems
Signed-off-by: Ulysses Souza <ulyssessouza@gmail.com>
2020-05-20 10:16:36 +02:00
Ulysses Souza
b25a6b4bd6 Add volumes to run command
Signed-off-by: Ulysses Souza <ulyssessouza@gmail.com>
2020-05-20 10:06:12 +02:00