File tree Expand file tree Collapse file tree 3 files changed +23
-12
lines changed Expand file tree Collapse file tree 3 files changed +23
-12
lines changed Original file line number Diff line number Diff line change @@ -94,7 +94,12 @@ func addonManager(db *gorm.DB) (mgr manager.Manager, err error) {
94
94
95
95
// main.
96
96
func main () {
97
- log .Info ("Started" , "settings" , Settings )
97
+ log .Info (
98
+ "Starting" ,
99
+ "build" ,
100
+ Settings .Hub .Build ,
101
+ "settings" ,
102
+ Settings )
98
103
var err error
99
104
defer func () {
100
105
if err != nil {
Original file line number Diff line number Diff line change 1
1
package seed
2
2
3
3
import (
4
- "errors"
5
4
"fmt"
6
5
"strings"
7
6
@@ -124,21 +123,23 @@ func matchBuild(db *gorm.DB) (matched bool, err error) {
124
123
if err != nil {
125
124
return
126
125
}
126
+ if build == "" {
127
+ return
128
+ }
127
129
matched = build == Settings .Hub .Build
128
130
log .Info ("Seed build (version)" , "matched" , matched )
129
131
return
130
132
}
131
133
132
134
// getBuild returns the hub build version that seeded.
133
135
func getBuild (db * gorm.DB ) (version string , err error ) {
134
- setting := & model.Setting {}
135
- err = db .First (setting , model.Setting {Key : BuildKey }).Error
136
+ setting := & model.Setting {
137
+ Key : BuildKey ,
138
+ }
139
+ db = db .Where ("key" , BuildKey )
140
+ err = db .FirstOrCreate (setting ).Error
136
141
if err != nil {
137
- if ! errors .Is (err , gorm .ErrRecordNotFound ) {
138
- err = liberr .Wrap (err )
139
- } else {
140
- err = nil
141
- }
142
+ err = liberr .Wrap (err )
142
143
return
143
144
}
144
145
if n , cast := setting .Value .(string ); cast {
@@ -153,7 +154,8 @@ func saveBuild(db *gorm.DB) (err error) {
153
154
Key : BuildKey ,
154
155
Value : Settings .Hub .Build ,
155
156
}
156
- err = db .Save (setting ).Error
157
+ db = db .Where ("key" , BuildKey )
158
+ err = db .Updates (setting ).Error
157
159
if err != nil {
158
160
err = liberr .Wrap (err )
159
161
return
Original file line number Diff line number Diff line change @@ -10,6 +10,7 @@ import (
10
10
11
11
const (
12
12
EnvNamespace = "NAMESPACE"
13
+ EnvBuild = "BUILD"
13
14
EnvDbPath = "DB_PATH"
14
15
EnvDbMaxCon = "DB_MAX_CONNECTION"
15
16
EnvDbSeedPath = "DB_SEED_PATH"
@@ -367,10 +368,13 @@ func (r *Hub) namespace() (ns string, err error) {
367
368
// build returns the hub build version.
368
369
// This is expected to be the output of `git describe`.
369
370
// Examples:
370
- //
371
- // v0.6.0
372
371
// v0.6.0-ea89gcd
372
+ // v0.6.0
373
373
func (r * Hub ) build () (version string , err error ) {
374
+ version , found := os .LookupEnv (EnvBuild )
375
+ if found {
376
+ return
377
+ }
374
378
f , err := os .Open ("/etc/hub-build" )
375
379
if err != nil {
376
380
if os .IsNotExist (err ) {
You can’t perform that action at this time.
0 commit comments