MCPcopy Index your code
hub / github.com/cloudfoundry/java-buildpack / main

Function main

src/java/supply/cli/main.go:14–89  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

12)
13
14func main() {
15 logfile, err := os.CreateTemp("", "cloudfoundry.java-buildpack.supply")
16 if err != nil {
17 logger := libbuildpack.NewLogger(os.Stdout)
18 logger.Error("Unable to create log file: %s", err.Error())
19 os.Exit(8)
20 }
21 defer logfile.Close()
22
23 stdout := io.MultiWriter(os.Stdout, logfile)
24 logger := libbuildpack.NewLogger(stdout)
25
26 buildpackDir, err := libbuildpack.GetBuildpackDir()
27 if err != nil {
28 logger.Error("Unable to determine buildpack directory: %s", err.Error())
29 os.Exit(9)
30 }
31
32 manifest, err := libbuildpack.NewManifest(buildpackDir, logger, time.Now())
33 if err != nil {
34 logger.Error("Unable to load buildpack manifest: %s", err.Error())
35 os.Exit(10)
36 }
37
38 installer := libbuildpack.NewInstaller(manifest)
39 stager := libbuildpack.NewStager(os.Args[1:], logger, manifest)
40
41 if err := stager.CheckBuildpackValid(); err != nil {
42 os.Exit(11)
43 }
44
45 if err = installer.SetAppCacheDir(stager.CacheDir()); err != nil {
46 logger.Error("Unable to setup appcache: %s", err)
47 os.Exit(18)
48 }
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 if err := libbuildpack.RunBeforeCompile(stager); err != nil {
56 logger.Error("Before Compile: %s", err.Error())
57 os.Exit(12)
58 }
59
60 // Create standard directories
61 for _, dir := range []string{"bin", "lib", "include", "pkgconfig"} {
62 if err := os.MkdirAll(filepath.Join(stager.DepDir(), dir), 0755); err != nil {
63 logger.Error("Could not create directory: %s", err.Error())
64 os.Exit(12)
65 }
66 }
67
68 if err := stager.SetStagingEnvironment(); err != nil {
69 logger.Error("Unable to setup environment variables: %s", err.Error())
70 os.Exit(13)
71 }

Callers

nothing calls this directly

Calls 3

CacheDirMethod · 0.95
DepDirMethod · 0.95
RunFunction · 0.92

Tested by

no test coverage detected