New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
move plugins out of experimental #28226
Conversation
Can you check integration tests as well? Tests are probably skipped if experimental is not enabled |
@thaJeztah right, thanks |
b71079e
to
3f3a993
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
/cc @albers @sdurrheimer because this will likely affect the completion scripts |
This cannot be merged until #28148 is merged. |
Please add 26760, which tracks this. |
3f3a993
to
b77508a
Compare
@@ -6,7 +6,7 @@ keywords: "API, Docker, rcli, REST, documentation" | |||
|
|||
<!-- This file is maintained within the docker/docker Github | |||
repository at https://github.com/docker/docker/. Make all | |||
pull requests against that repo. If you see this file in | |||
5B pull requests against that repo. If you see this file in |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
?
tests that need to be updated:
|
|
* `GET /plugins/(plugin name)` inspect a plugin. | ||
* `POST /plugins/(plugin name)/set` configure a plugin. | ||
* `POST /plugins/(plugin name)/enable` enable a plugin. | ||
* `POST /plugins/(plugin name)/disable` disable a plugin. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Add plugin create:
``POST /plugins/create?name=plugin name creates a plugin.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also missing push
@@ -184,6 +184,14 @@ This section lists each version from latest to oldest. Each listing includes a | |||
* `POST /services/create` and `POST /services/(id or name)/update` now accept the `TTY` parameter, which allocate a pseudo-TTY in container. | |||
* `POST /services/create` and `POST /services/(id or name)/update` now accept the `DNSConfig` parameter, which specifies DNS related configurations in resolver configuration file (resolv.conf) through `Nameservers`, `Search`, and `Options`. | |||
* `GET /networks/(id or name)` now includes IP and name of all peers nodes for swarm mode overlay networks. | |||
* `GET /plugins` list plugins. | |||
* `POST /plugins/pull?name=<plugin name>` install a plugin. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
should be pulls a plugin
. install implies an additional enable.
@@ -171,7 +170,6 @@ Config provides the base accessible fields for working with V0 plugin format | |||
|
|||
``` | |||
{ | |||
"configVersion": "v0", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why is this being removed?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's a doc left-over from a previous PR, it's already removed from the code, after talking with @tiborvass and @stevvooe.
- You needed to json-decode in order to get the version, if the format change a lot, it won't even work.
- The version is already present in the media-type, that's how other media handle versioning.
b77508a
to
d949d07
Compare
Thanks @anusha-ragunathan, I missed a lot indeed |
Thank you for doing this @vieux . I know you've been burning the midnight oil with a lotta plugin PRs! |
9f276f0
to
9375710
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM 🐸
* `POST /plugins/(plugin name)/set` configure a plugin. | ||
* `POST /plugins/(plugin name)/enable` enable a plugin. | ||
* `POST /plugins/(plugin name)/disable` disable a plugin. | ||
* `POST /plugins/(plugin name)/push` push a pluging. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
typo pluging
@@ -153,7 +153,8 @@ func Pull(ref reference.Named, rs registry.Service, metaheader http.Header, auth | |||
logrus.Debugf("pull.go: error in json.Unmarshal(): %v", err) | |||
return nil, err | |||
} | |||
if m.Config.MediaType != schema2.MediaTypePluginConfig { | |||
if m.Config.MediaType != schema2.MediaTypePluginConfig && | |||
m.Config.MediaType != "application/vnd.docker.plugin.image.v0+json" { //TODO: remove this v0 before 1.13 GA |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A similar check for image.v0
needs to be added in https://github.com/vieux/docker/blob/exit_exp_plugin/distribution/pull_v2.go#L361, to avoid using docker pull
to pull plugin images.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
thanks
0bc70b9
to
683167c
Compare
LGTM (once tests are all green) |
@vieux needs rebase :( |
apart from small conflict, LGTM |
As plugins don't work on Windows (at least I've never verified and don't believe they do anyway), can we get this updated to report a nice "not supported on this platform" message for the API endpoints? And document accordingly. |
Signed-off-by: Victor Vieux <vieux@docker.com>
Signed-off-by: Victor Vieux <vieux@docker.com>
@jhowardmsft yes it's on my list of things to do during the freeze |
683167c
to
970b23d
Compare
Thanks, @vieux |
@vieux Am I right in thinking that network plugins still aren't supported? |
@tomdee network plugins are supported. PTAL : https://github.com/docker/docker/blob/master/integration-cli/docker_cli_network_unix_test.go#L771 |
ping @anusha-ragunathan @tiborvass @thaJeztah
closes #26760