Revert "Revert "make run server build the binary instead of outputting each run to a tmp file""
This reverts commit c52f10f92d.
This commit is contained in:
parent
c52f10f92d
commit
c406b5f068
1 changed files with 37 additions and 2 deletions
|
|
@ -1,7 +1,42 @@
|
|||
package run
|
||||
|
||||
import "github.com/maddalax/htmgo/cli/htmgo/tasks/process"
|
||||
import (
|
||||
"fmt"
|
||||
"github.com/maddalax/htmgo/cli/htmgo/tasks/process"
|
||||
"io/fs"
|
||||
"os"
|
||||
"path/filepath"
|
||||
)
|
||||
|
||||
func Server(flags ...process.RunFlag) error {
|
||||
return process.Run(process.NewRawCommand("run-server", "go run .", flags...))
|
||||
buildDir := "./__htmgo/temp-build"
|
||||
_ = os.RemoveAll(buildDir)
|
||||
err := os.Mkdir(buildDir, 0755)
|
||||
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
process.RunOrExit(process.NewRawCommand("", fmt.Sprintf("go build -o %s", buildDir)))
|
||||
|
||||
binaryPath := ""
|
||||
|
||||
// find the binary that was built
|
||||
err = filepath.WalkDir(buildDir, func(path string, d fs.DirEntry, err error) error {
|
||||
if d.IsDir() {
|
||||
return nil
|
||||
}
|
||||
binaryPath = path
|
||||
return nil
|
||||
})
|
||||
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if binaryPath == "" {
|
||||
return fmt.Errorf("could not find the binary")
|
||||
}
|
||||
|
||||
return process.Run(process.NewRawCommand("run-server", fmt.Sprintf("./%s", binaryPath), flags...))
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue