Skip to content

Commit 4f10013

Browse files
committed
chore: generate version.go
1 parent 750c8a0 commit 4f10013

File tree

5 files changed

+59
-2
lines changed

5 files changed

+59
-2
lines changed

cmd/README.md

+10
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
### Versioner
2+
3+
Before a release run in project root:
4+
5+
```sh
6+
go run cmd/versioner.go v1.5.1
7+
```
8+
9+
where tag is the next tag to be used.
10+

cmd/version.go.tmpl

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
// Code generated from versioner.go; DO NOT EDIT.
2+
3+
package dbsql
4+
5+
var DriverVersion = "{{.Version}}"

cmd/versioner.go

+39
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
package main
2+
3+
import (
4+
"fmt"
5+
"os"
6+
"path"
7+
"regexp"
8+
"runtime"
9+
"text/template"
10+
)
11+
12+
func getTemplateFilePath() string {
13+
_, filename, _, _ := runtime.Caller(0)
14+
dir := path.Dir(filename)
15+
return path.Join(dir, "version.go.tmpl")
16+
}
17+
18+
func main() {
19+
tag := os.Args[1] // The first argument is the tag
20+
// If the tag is not a valid semantic version, then it is not a release tag
21+
re := regexp.MustCompile(`^v\d+\.\d+\.\d+$`)
22+
if !re.MatchString(tag) {
23+
panic(fmt.Errorf("tag %s is not a valid semantic version", tag))
24+
}
25+
tmpl, err := template.ParseFiles(getTemplateFilePath())
26+
if err != nil {
27+
panic(err)
28+
}
29+
f, err := os.Create("version.go")
30+
if err != nil {
31+
panic(err)
32+
}
33+
defer f.Close()
34+
if err := tmpl.Execute(f, map[string]string{
35+
"Version": string(tag),
36+
}); err != nil {
37+
panic(err)
38+
}
39+
}

driver.go

-2
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,6 @@ func init() {
1313
sql.Register("databricks", &databricksDriver{})
1414
}
1515

16-
var DriverVersion = "1.3.1" // update version before each release
17-
1816
type databricksDriver struct{}
1917

2018
// Open returns a new connection to Databricks database with a DSN string.

version.go

+5
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)