MCPcopy
hub / github.com/harness/harness / putFileToLocal

Method putFileToLocal

registry/app/pkg/npm/proxy.go:206–229  ·  view source on GitHub ↗
(ctx context.Context, info npm2.ArtifactInfo, remote RemoteRegistryHelper)

Source from the content-addressed store, hash-verified

204}
205
206func (r *proxy) putFileToLocal(ctx context.Context, info npm2.ArtifactInfo, remote RemoteRegistryHelper) error {
207 versionMetadata, err := remote.GetVersionMetadata(ctx, info.Image, info.GetVersion())
208 if err != nil {
209 log.Ctx(ctx).Error().Stack().Err(err).Msgf("fetching metadata of pkg with name %s,"+
210 " version %s failed, %v", info.Image, info.Version, err)
211 return err
212 }
213 file, err := remote.GetPackage(ctx, info.Image, info.Version)
214 if err != nil {
215 log.Ctx(ctx).Error().Stack().Err(err).Msgf("fetching pkg with name %s,"+
216 " version %s failed, %v", info.Image, info.Version, err)
217 return err
218 }
219 defer file.Close()
220
221 info.Metadata = *versionMetadata
222 _, sha256, err2 := r.localRegistryHelper.UploadPackageFile(ctx, info, file)
223 if err2 != nil {
224 log.Ctx(ctx).Error().Stack().Err(err2).Msgf("uploading file %s failed, %v", info.Filename, err)
225 return err2
226 }
227 log.Ctx(ctx).Info().Msgf("Successfully uploaded %s with SHA256: %s", info.Filename, sha256)
228 return nil
229}

Callers 1

DownloadPackageFileMethod · 0.95

Calls 9

MsgfMethod · 0.80
GetVersionMetadataMethod · 0.65
GetVersionMethod · 0.65
ErrMethod · 0.65
ErrorMethod · 0.65
GetPackageMethod · 0.65
CloseMethod · 0.65
UploadPackageFileMethod · 0.65
InfoMethod · 0.65

Tested by

no test coverage detected