MCPcopy Index your code
hub / github.com/SignTools/SignTools / makeManifest

Function makeManifest

main.go:485–516  ·  view source on GitHub ↗
(baseUrl string, app storage.App)

Source from the content-addressed store, hash-verified

483}
484
485func makeManifest(baseUrl string, app storage.App) ([]byte, error) {
486 t, err := textTemplate.New("").Funcs(
487 textTemplate.FuncMap{"escape": func(text string) (string, error) {
488 return escapeXML(text)
489 }},
490 ).Parse(assets.ManifestPlist)
491 if err != nil {
492 return nil, err
493 }
494 appName, err := app.GetString(storage.AppName)
495 if err != nil {
496 return nil, err
497 }
498 bundleId, err := app.GetString(storage.AppBundleId)
499 if err != nil {
500 return nil, err
501 }
502 downloadUrl, err := util.JoinUrls(baseUrl, "/apps", app.GetId(), "signed")
503 if err != nil {
504 return nil, err
505 }
506 data := assets.ManifestData{
507 DownloadUrl: downloadUrl,
508 BundleId: bundleId,
509 Title: appName,
510 }
511 var result bytes.Buffer
512 if err := t.Execute(&result, data); err != nil {
513 return nil, err
514 }
515 return result.Bytes(), nil
516}
517
518func escapeXML(str string) (string, error) {
519 buff := bytes.NewBuffer(nil)

Callers 2

validateManifestFunction · 0.85
getManifestFunction · 0.85

Calls 5

JoinUrlsFunction · 0.92
escapeXMLFunction · 0.85
NewMethod · 0.80
GetStringMethod · 0.65
GetIdMethod · 0.65

Tested by 1

validateManifestFunction · 0.68