|
5 | 5 | "context" |
6 | 6 | "fmt" |
7 | 7 | "io" |
8 | | - "path/filepath" |
| 8 | + "path" |
9 | 9 |
|
10 | 10 | "github.com/docker/model-runner/pkg/distribution/internal/progress" |
11 | 11 | "github.com/docker/model-runner/pkg/distribution/oci" |
@@ -68,7 +68,7 @@ func (t *Target) Write(ctx context.Context, mdl types.ModelArtifact, progressWri |
68 | 68 | return err |
69 | 69 | } |
70 | 70 | if err = tw.WriteHeader(&tar.Header{ |
71 | | - Name: filepath.Join("blobs", cn.Algorithm, cn.Hex), |
| 71 | + Name: path.Join("blobs", cn.Algorithm, cn.Hex), |
72 | 72 | Mode: 0666, |
73 | 73 | Size: int64(len(rcf)), |
74 | 74 | }); err != nil { |
@@ -97,15 +97,15 @@ func (t *Target) addLayer(layer oci.Layer, tw *tar.Writer, progressWriter io.Wri |
97 | 97 | if err != nil { |
98 | 98 | return fmt.Errorf("get layer diffID: %w", err) |
99 | 99 | } |
100 | | - if err := t.ensureDir(filepath.Join("blobs", diffID.Algorithm), tw); err != nil { |
| 100 | + if err := t.ensureDir(path.Join("blobs", diffID.Algorithm), tw); err != nil { |
101 | 101 | return err |
102 | 102 | } |
103 | 103 | sz, err := layer.Size() |
104 | 104 | if err != nil { |
105 | 105 | return fmt.Errorf("get layer size: %w", err) |
106 | 106 | } |
107 | 107 | if err = tw.WriteHeader(&tar.Header{ |
108 | | - Name: filepath.Join("blobs", diffID.Algorithm, diffID.Hex), |
| 108 | + Name: path.Join("blobs", diffID.Algorithm, diffID.Hex), |
109 | 109 | Mode: 0666, |
110 | 110 | Size: sz, |
111 | 111 | }); err != nil { |
@@ -138,15 +138,16 @@ func (t *Target) addLayer(layer oci.Layer, tw *tar.Writer, progressWriter io.Wri |
138 | 138 | return nil |
139 | 139 | } |
140 | 140 |
|
141 | | -func (t *Target) ensureDir(path string, tw *tar.Writer) error { |
142 | | - if _, ok := t.dirs[path]; !ok { |
| 141 | +func (t *Target) ensureDir(p string, tw *tar.Writer) error { |
| 142 | + if _, ok := t.dirs[p]; !ok { |
143 | 143 | if err := tw.WriteHeader(&tar.Header{ |
144 | | - Name: path, |
| 144 | + Name: p, |
145 | 145 | Typeflag: tar.TypeDir, |
| 146 | + Mode: 0755, |
146 | 147 | }); err != nil { |
147 | | - return fmt.Errorf("add dir entry %q: %w", path, err) |
| 148 | + return fmt.Errorf("add dir entry %q: %w", p, err) |
148 | 149 | } |
149 | 150 | } |
150 | | - t.dirs[path] = struct{}{} |
| 151 | + t.dirs[p] = struct{}{} |
151 | 152 | return nil |
152 | 153 | } |
0 commit comments