mirror of https://github.com/docker/compose.git
add dry-run support for publish command
Signed-off-by: Guillaume Lours <705411+glours@users.noreply.github.com>
This commit is contained in:
parent
a345515f91
commit
2c0b023273
|
@ -102,20 +102,22 @@ func (s *composeService) publish(ctx context.Context, project *types.Project, re
|
||||||
Digest: digest.FromBytes(emptyConfig),
|
Digest: digest.FromBytes(emptyConfig),
|
||||||
Size: int64(len(emptyConfig)),
|
Size: int64(len(emptyConfig)),
|
||||||
}
|
}
|
||||||
err = resolver.Push(ctx, named, configDescriptor, emptyConfig)
|
var imageManifest []byte
|
||||||
if err != nil {
|
if !s.dryRun {
|
||||||
return err
|
err = resolver.Push(ctx, named, configDescriptor, emptyConfig)
|
||||||
}
|
if err != nil {
|
||||||
|
return err
|
||||||
imageManifest, err := json.Marshal(v1.Manifest{
|
}
|
||||||
Versioned: specs.Versioned{SchemaVersion: 2},
|
imageManifest, err = json.Marshal(v1.Manifest{
|
||||||
MediaType: v1.MediaTypeImageManifest,
|
Versioned: specs.Versioned{SchemaVersion: 2},
|
||||||
ArtifactType: "application/vnd.docker.compose.project",
|
MediaType: v1.MediaTypeImageManifest,
|
||||||
Config: configDescriptor,
|
ArtifactType: "application/vnd.docker.compose.project",
|
||||||
Layers: layers,
|
Config: configDescriptor,
|
||||||
})
|
Layers: layers,
|
||||||
if err != nil {
|
})
|
||||||
return err
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
w.Event(progress.Event{
|
w.Event(progress.Event{
|
||||||
|
@ -123,23 +125,24 @@ func (s *composeService) publish(ctx context.Context, project *types.Project, re
|
||||||
Text: "publishing",
|
Text: "publishing",
|
||||||
Status: progress.Working,
|
Status: progress.Working,
|
||||||
})
|
})
|
||||||
|
if !s.dryRun {
|
||||||
err = resolver.Push(ctx, named, v1.Descriptor{
|
err = resolver.Push(ctx, named, v1.Descriptor{
|
||||||
MediaType: v1.MediaTypeImageManifest,
|
MediaType: v1.MediaTypeImageManifest,
|
||||||
Digest: digest.FromString(string(imageManifest)),
|
Digest: digest.FromString(string(imageManifest)),
|
||||||
Size: int64(len(imageManifest)),
|
Size: int64(len(imageManifest)),
|
||||||
Annotations: map[string]string{
|
Annotations: map[string]string{
|
||||||
"com.docker.compose.version": api.ComposeVersion,
|
"com.docker.compose.version": api.ComposeVersion,
|
||||||
},
|
},
|
||||||
ArtifactType: "application/vnd.docker.compose.project",
|
ArtifactType: "application/vnd.docker.compose.project",
|
||||||
}, imageManifest)
|
}, imageManifest)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
w.Event(progress.Event{
|
w.Event(progress.Event{
|
||||||
ID: repository,
|
ID: repository,
|
||||||
Text: "publishing",
|
Text: "publishing",
|
||||||
Status: progress.Error,
|
Status: progress.Error,
|
||||||
})
|
})
|
||||||
return err
|
return err
|
||||||
|
}
|
||||||
}
|
}
|
||||||
w.Event(progress.Event{
|
w.Event(progress.Event{
|
||||||
ID: repository,
|
ID: repository,
|
||||||
|
|
Loading…
Reference in New Issue