123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- package convert // import "github.com/docker/docker/daemon/cluster/convert"
- import (
- swarmtypes "github.com/docker/docker/api/types/swarm"
- types "github.com/docker/docker/api/types/swarm"
- gogotypes "github.com/gogo/protobuf/types"
- swarmapi "github.com/moby/swarmkit/v2/api"
- )
- // ConfigFromGRPC converts a grpc Config to a Config.
- func ConfigFromGRPC(s *swarmapi.Config) swarmtypes.Config {
- config := swarmtypes.Config{
- ID: s.ID,
- Spec: swarmtypes.ConfigSpec{
- Annotations: annotationsFromGRPC(s.Spec.Annotations),
- Data: s.Spec.Data,
- },
- }
- config.Version.Index = s.Meta.Version.Index
- // Meta
- config.CreatedAt, _ = gogotypes.TimestampFromProto(s.Meta.CreatedAt)
- config.UpdatedAt, _ = gogotypes.TimestampFromProto(s.Meta.UpdatedAt)
- if s.Spec.Templating != nil {
- config.Spec.Templating = &types.Driver{
- Name: s.Spec.Templating.Name,
- Options: s.Spec.Templating.Options,
- }
- }
- return config
- }
- // ConfigSpecToGRPC converts Config to a grpc Config.
- func ConfigSpecToGRPC(s swarmtypes.ConfigSpec) swarmapi.ConfigSpec {
- spec := swarmapi.ConfigSpec{
- Annotations: swarmapi.Annotations{
- Name: s.Name,
- Labels: s.Labels,
- },
- Data: s.Data,
- }
- if s.Templating != nil {
- spec.Templating = &swarmapi.Driver{
- Name: s.Templating.Name,
- Options: s.Templating.Options,
- }
- }
- return spec
- }
- // ConfigReferencesFromGRPC converts a slice of grpc ConfigReference to ConfigReference
- func ConfigReferencesFromGRPC(s []*swarmapi.ConfigReference) []*swarmtypes.ConfigReference {
- refs := []*swarmtypes.ConfigReference{}
- for _, r := range s {
- ref := &swarmtypes.ConfigReference{
- ConfigID: r.ConfigID,
- ConfigName: r.ConfigName,
- }
- if t, ok := r.Target.(*swarmapi.ConfigReference_File); ok {
- ref.File = &swarmtypes.ConfigReferenceFileTarget{
- Name: t.File.Name,
- UID: t.File.UID,
- GID: t.File.GID,
- Mode: t.File.Mode,
- }
- }
- refs = append(refs, ref)
- }
- return refs
- }
|