Initial Commit
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
2022-01-26 11:15:28 +01:00
commit b82578fbf0
19 changed files with 2558 additions and 0 deletions

34
pkg/docker/docker.go Normal file
View File

@ -0,0 +1,34 @@
package docker
import (
"context"
"log"
"git.cryptic.systems/volker.raschek/dockerutils"
)
type Runtime struct {
dockerClient *dockerutils.Client
}
func (r *Runtime) GetImageLabels(ctx context.Context, image string) (map[string]string, error) {
log.Printf("Pull image: %v", image)
if err := r.dockerClient.PullQuiet(ctx, image); err != nil {
return nil, err
}
log.Printf("Image successfully pulled: %v", image)
imageSpec, _, err := r.dockerClient.ImageInspectWithRaw(ctx, image)
if err != nil {
return nil, err
}
return imageSpec.Config.Labels, nil
}
func NewRuntime(dockerClient *dockerutils.Client) (*Runtime, error) {
return &Runtime{
dockerClient: dockerClient,
}, nil
}