123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- package main
- import (
- "fmt"
- "log"
- "os"
- "os/exec"
- "strings"
- )
- func main() {
- version := os.Getenv("VERSION")
- sha := os.Getenv("GITHUB_SHA")
- if version == "" {
- cmd := exec.Command("git", "show", "--no-patch", "--no-notes", "--pretty=%ci", sha)
- out, err := cmd.CombinedOutput()
- if err != nil {
- log.Println(strings.TrimSpace(string(out)))
- log.Fatal(err)
- }
- var date string
- parts := strings.Split(string(out), " ")
- date = strings.Replace(parts[0]+parts[1], "-", "", -1)
- date = strings.Replace(date, ":", "", -1)
- version = fmt.Sprintf("v0.0.0-%s-%s", date, sha[:12])
- }
- fmt.Printf("::set-output name=version::%s\n", version)
- x := "-X github.com/sqlc-dev/sqlc/internal/cmd.version=" + version
- args := []string{
- "build",
- "-ldflags", x,
- "-o", "./sqlc",
- "./cmd/sqlc",
- }
- cmd := exec.Command("go", args...)
- cmd.Env = os.Environ()
- out, err := cmd.CombinedOutput()
- if err != nil {
- log.Println(strings.TrimSpace(string(out)))
- log.Fatal(err)
- }
- }
|