Skip to content
This repository was archived by the owner on Mar 27, 2024. It is now read-only.

Commit 639bbbf

Browse files
Merge pull request #52 from r2d4/dont-shell-to-docker
Always use docker client
2 parents cd40b32 + 12917a6 commit 639bbbf

File tree

121 files changed

+14311
-2512
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

121 files changed

+14311
-2512
lines changed

Godeps/Godeps.json

Lines changed: 73 additions & 73 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

README.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -85,8 +85,6 @@ To get a JSON version of the container-diff output add a `-j` or `--json` flag.
8585

8686
```container-diff <img1> <img2> -j```
8787

88-
To use the docker client instead of shelling out to your local docker daemon, add a `-e` or `--eng` flag.
89-
9088
```container-diff <img1> <img2> -e```
9189

9290
To order files and packages by size (in descending order) when performing file system or package analyses/diffs, add a `-o` or `--order` flag.

cmd/analyze.go

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package cmd
22

33
import (
44
"errors"
5+
"fmt"
56
"os"
67

78
"github.com/GoogleCloudPlatform/container-diff/differs"
@@ -19,9 +20,6 @@ var analyzeCmd = &cobra.Command{
1920
glog.Error(err.Error())
2021
os.Exit(1)
2122
}
22-
23-
utils.SetDockerEngine(eng)
24-
2523
analyzeArgs := []string{}
2624
allAnalyzers := getAllAnalyzers()
2725
for _, name := range allAnalyzers {
@@ -52,7 +50,17 @@ func checkAnalyzeArgNum(args []string) (bool, error) {
5250
}
5351

5452
func analyzeImage(imageArg string, analyzerArgs []string) error {
55-
image, err := utils.ImagePrepper{imageArg}.GetImage()
53+
cli, err := NewClient()
54+
if err != nil {
55+
return fmt.Errorf("Error getting docker client for differ: %s", err)
56+
}
57+
defer cli.Close()
58+
ip := utils.ImagePrepper{
59+
Source: imageArg,
60+
Client: cli,
61+
}
62+
63+
image, err := ip.GetImage()
5664
if err != nil {
5765
glog.Error(err.Error())
5866
cleanupImage(image)

cmd/diff.go

Lines changed: 16 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package cmd
22

33
import (
44
"errors"
5+
"fmt"
56
"os"
67
"sync"
78

@@ -20,9 +21,6 @@ var diffCmd = &cobra.Command{
2021
glog.Error(err.Error())
2122
os.Exit(1)
2223
}
23-
24-
utils.SetDockerEngine(eng)
25-
2624
analyzeArgs := []string{}
2725
allAnalyzers := getAllAnalyzers()
2826
for _, name := range allAnalyzers {
@@ -53,24 +51,36 @@ func checkDiffArgNum(args []string) (bool, error) {
5351
}
5452

5553
func diffImages(image1Arg, image2Arg string, diffArgs []string) error {
54+
cli, err := NewClient()
55+
if err != nil {
56+
return fmt.Errorf("Error getting docker client for differ: %s", err)
57+
}
58+
defer cli.Close()
5659
var wg sync.WaitGroup
5760
wg.Add(2)
5861

5962
glog.Infof("Starting diff on images %s and %s, using differs: %s", image1Arg, image2Arg, diffArgs)
6063

6164
var image1, image2 utils.Image
62-
var err error
6365
go func() {
6466
defer wg.Done()
65-
image1, err = utils.ImagePrepper{image1Arg}.GetImage()
67+
ip := utils.ImagePrepper{
68+
Source: image1Arg,
69+
Client: cli,
70+
}
71+
image1, err = ip.GetImage()
6672
if err != nil {
6773
glog.Error(err.Error())
6874
}
6975
}()
7076

7177
go func() {
7278
defer wg.Done()
73-
image2, err = utils.ImagePrepper{image2Arg}.GetImage()
79+
ip := utils.ImagePrepper{
80+
Source: image2Arg,
81+
Client: cli,
82+
}
83+
image2, err = ip.GetImage()
7484
if err != nil {
7585
glog.Error(err.Error())
7686
}

0 commit comments

Comments
 (0)