Fixed regex.

This commit is contained in:
Victor Lyuboslavsky 2024-09-11 12:22:35 -05:00
parent 5f846c8870
commit 50886eb0b9
No known key found for this signature in database

View file

@ -94,8 +94,7 @@ func (svc *Service) UploadSoftwareInstaller(ctx context.Context, payload *fleet.
return nil
}
var packageIDRawRegex = regexp.MustCompile(`(("\$PACKAGE_ID")|(\$PACKAGE_ID))(\W|$)`)
var packageIDBracketRegex = regexp.MustCompile(`(("\${PACKAGE_ID}")|(\${PACKAGE_ID}))`)
var packageIDRegex = regexp.MustCompile(`((("\$PACKAGE_ID")|(\$PACKAGE_ID))(?P<suffix>\W|$))|(("\${PACKAGE_ID}")|(\${PACKAGE_ID}))`)
func preProcessUninstallScript(payload *fleet.UploadSoftwareInstallerPayload) {
// We assume that we already validated that payload.PackageIDs is not empty.
@ -114,8 +113,7 @@ func preProcessUninstallScript(payload *fleet.UploadSoftwareInstallerPayload) {
packageID = fmt.Sprintf("\"%s\"", payload.PackageIDs[0])
}
payload.UninstallScript = packageIDRawRegex.ReplaceAllString(payload.UninstallScript, fmt.Sprintf("%s$4", packageID))
payload.UninstallScript = packageIDBracketRegex.ReplaceAllString(payload.UninstallScript, fmt.Sprintf("%s$4", packageID))
payload.UninstallScript = packageIDRegex.ReplaceAllString(payload.UninstallScript, fmt.Sprintf("%s${suffix}", packageID))
}
func (svc *Service) DeleteSoftwareInstaller(ctx context.Context, titleID uint, teamID *uint) error {