MCPcopy Create free account
hub / github.com/cloudfoundry/nodejs-buildpack / main

Function main

src/nodejs/supply/cli/main.go:16–97  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

14)
15
16func main() {
17 logfile, err := os.CreateTemp("", "cloudfoundry.nodejs-buildpack.supply")
18 if err != nil {
19 logger := libbuildpack.NewLogger(os.Stdout)
20 logger.Error("Unable to create log file: %s", err.Error())
21 os.Exit(8)
22 }
23 defer logfile.Close()
24
25 stdout := io.MultiWriter(os.Stdout, logfile)
26 logger := libbuildpack.NewLogger(stdout)
27
28 buildpackDir, err := libbuildpack.GetBuildpackDir()
29 if err != nil {
30 logger.Error("Unable to determine buildpack directory: %s", err.Error())
31 os.Exit(9)
32 }
33
34 manifest, err := libbuildpack.NewManifest(buildpackDir, logger, time.Now())
35 if err != nil {
36 logger.Error("Unable to load buildpack manifest: %s", err.Error())
37 os.Exit(10)
38 }
39 installer := libbuildpack.NewInstaller(manifest)
40
41 stager := libbuildpack.NewStager(os.Args[1:], logger, manifest)
42 if err := stager.CheckBuildpackValid(); err != nil {
43 os.Exit(11)
44 }
45
46 if err = installer.SetAppCacheDir(stager.CacheDir()); err != nil {
47 logger.Error("Unable to setup appcache: %s", err)
48 os.Exit(18)
49 }
50 if err = manifest.ApplyOverride(stager.DepsDir()); err != nil {
51 logger.Error("Unable to apply override.yml files: %s", err)
52 os.Exit(17)
53 }
54
55 err = libbuildpack.RunBeforeCompile(stager)
56 if err != nil {
57 logger.Error("Before Compile: %s", err.Error())
58 os.Exit(12)
59 }
60
61 err = stager.SetStagingEnvironment()
62 if err != nil {
63 logger.Error("Unable to setup environment variables: %s", err.Error())
64 os.Exit(13)
65 }
66
67 s := supply.Supplier{
68 Logfile: logfile,
69 Stager: stager,
70 Yarn: &yarn.Yarn{
71 Command: &libbuildpack.Command{},
72 Log: logger,
73 },

Callers

nothing calls this directly

Calls 3

CacheDirMethod · 0.95
SetStagingEnvironmentMethod · 0.95
RunFunction · 0.92

Tested by

no test coverage detected