| package runtime | |
| import "github.com/moby/moby/api/types/swarm" | |
| func privilegesFromAPI(privs []*swarm.RuntimePrivilege) []*PluginPrivilege { | |
| var out []*PluginPrivilege | |
| for _, p := range privs { | |
| out = append(out, &PluginPrivilege{ | |
| Name: p.Name, | |
| Description: p.Description, | |
| Value: p.Value, | |
| }) | |
| } | |
| return out | |
| } | |
| // FromAPI converts an API RuntimeSpec to a PluginSpec, | |
| // which can be proto encoded. | |
| func FromAPI(spec swarm.RuntimeSpec) PluginSpec { | |
| return PluginSpec{ | |
| Name: spec.Name, | |
| Remote: spec.Remote, | |
| Privileges: privilegesFromAPI(spec.Privileges), | |
| Disabled: spec.Disabled, | |
| Env: spec.Env, | |
| } | |
| } | |
| func privilegesToAPI(privs []*PluginPrivilege) []*swarm.RuntimePrivilege { | |
| var out []*swarm.RuntimePrivilege | |
| for _, p := range privs { | |
| out = append(out, &swarm.RuntimePrivilege{ | |
| Name: p.Name, | |
| Description: p.Description, | |
| Value: p.Value, | |
| }) | |
| } | |
| return out | |
| } | |
| func ToAPI(spec PluginSpec) swarm.RuntimeSpec { | |
| return swarm.RuntimeSpec{ | |
| Name: spec.Name, | |
| Remote: spec.Remote, | |
| Privileges: privilegesToAPI(spec.Privileges), | |
| Disabled: spec.Disabled, | |
| Env: spec.Env, | |
| } | |
| } |