mirror of https://github.com/harness/drone.git
fix: [CDE-540]: Adding a check for user name and email during code clone operation. (#3596)
### Description This PR introduces two changes 1. Adding a check for user's name and email before cloning the code inside the gitspace container. This will non-block non-harness repos. 2. Adding an explicit check for the media folder's path during VSCode web setup. ---------release/3.0.0 v3.0.1
parent
fb65327419
commit
e92962b06d
|
@ -92,15 +92,17 @@ func (g *ServiceImpl) CloneCode(
|
||||||
"failed to parse clone url %s: %w", resolvedRepoDetails.CloneURL, err)
|
"failed to parse clone url %s: %w", resolvedRepoDetails.CloneURL, err)
|
||||||
}
|
}
|
||||||
cloneURL.User = nil
|
cloneURL.User = nil
|
||||||
script, err := template.GenerateScriptFromTemplate(
|
templatePayload := template.CloneCodePayload{
|
||||||
templateCloneCode, &template.CloneCodePayload{
|
RepoURL: cloneURL.String(),
|
||||||
RepoURL: cloneURL.String(),
|
Image: defaultBaseImage,
|
||||||
Image: defaultBaseImage,
|
Branch: resolvedRepoDetails.Branch,
|
||||||
Branch: resolvedRepoDetails.Branch,
|
RepoName: resolvedRepoDetails.RepoName,
|
||||||
RepoName: resolvedRepoDetails.RepoName,
|
}
|
||||||
Email: resolvedRepoDetails.Credentials.Email,
|
if resolvedRepoDetails.Credentials != nil {
|
||||||
Name: resolvedRepoDetails.Credentials.Name,
|
templatePayload.Email = resolvedRepoDetails.Credentials.Email
|
||||||
})
|
templatePayload.Name = resolvedRepoDetails.Credentials.Name
|
||||||
|
}
|
||||||
|
script, err := template.GenerateScriptFromTemplate(templateCloneCode, &templatePayload)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, fmt.Errorf(
|
return nil, fmt.Errorf(
|
||||||
"failed to generate scipt to clone code from template %s: %w", templateCloneCode, err)
|
"failed to generate scipt to clone code from template %s: %w", templateCloneCode, err)
|
||||||
|
|
|
@ -82,6 +82,10 @@ func (v *VSCodeWeb) Setup(ctx context.Context, exec *devcontainer.Exec) ([]byte,
|
||||||
}
|
}
|
||||||
|
|
||||||
mediaFolderPath := path[startIndex+len(startMarker) : endIndex]
|
mediaFolderPath := path[startIndex+len(startMarker) : endIndex]
|
||||||
|
if len(mediaFolderPath) == 0 {
|
||||||
|
return nil, fmt.Errorf("media folder path should not be empty, VSCode web is not installed")
|
||||||
|
}
|
||||||
|
|
||||||
err = v.copyMediaToContainer(ctx, exec, mediaFolderPath)
|
err = v.copyMediaToContainer(ctx, exec, mediaFolderPath)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, fmt.Errorf("failed to copy media folder to container at path %s: %w", mediaFolderPath, err)
|
return nil, fmt.Errorf("failed to copy media folder to container at path %s: %w", mediaFolderPath, err)
|
||||||
|
|
Loading…
Reference in New Issue