Skip to content

Commit 3f22cfa

Browse files
authored
Merge pull request #30 from spowelljr/increaseUpdateCheck
Check for updates every 12 hours
2 parents 5497f43 + 79b0b25 commit 3f22cfa

File tree

1 file changed

+14
-10
lines changed

1 file changed

+14
-10
lines changed

server.go

Lines changed: 14 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ import (
2121
"log"
2222
"net/http"
2323
"os"
24+
"time"
2425

2526
"github.com/blang/semver/v4"
2627
admissionv1 "k8s.io/api/admission/v1"
@@ -311,7 +312,7 @@ func needsEnvVar(c corev1.Container, name string) bool {
311312
return true
312313
}
313314

314-
func updateCheck() error {
315+
func updateCheck() {
315316
type release struct {
316317
Name string `json:"name"`
317318
}
@@ -320,39 +321,42 @@ func updateCheck() error {
320321

321322
resp, err := http.Get("https://storage.googleapis.com/minikube-gcp-auth/releases.json")
322323
if err != nil {
323-
return fmt.Errorf("failed to get releases file: %v", err)
324+
log.Printf("failed to get releases file: %v", err)
324325
}
325326
defer resp.Body.Close()
326327
if err := json.NewDecoder(resp.Body).Decode(&releases); err != nil {
327-
return fmt.Errorf("failed to decode releases file: %v", err)
328+
log.Printf("failed to decode releases file: %v", err)
328329
}
329330
if len(releases) == 0 {
330-
return fmt.Errorf("no releases found in releases file")
331+
log.Print("no releases found in releases file")
331332
}
332333

333334
currVersion, err := semver.ParseTolerant(Version)
334335
if err != nil {
335-
return fmt.Errorf("unable to parse current version: %v", err)
336+
log.Printf("unable to parse current version: %v", err)
336337
}
337338
name := releases[0].Name
338339
latestVersion, err := semver.ParseTolerant(name)
339340
if err != nil {
340-
return fmt.Errorf("unable to parse latest version: %v", err)
341+
log.Printf("unable to parse latest version: %v", err)
341342
}
342343

343344
if currVersion.LT(latestVersion) {
344345
log.Printf("gcp-auth-webhook %s is available!", name)
345346
}
347+
}
346348

347-
return nil
349+
func updateTicker() {
350+
updateCheck()
351+
for range time.Tick(12 * time.Hour) {
352+
updateCheck()
353+
}
348354
}
349355

350356
func main() {
351357
log.Print("GCP Auth Webhook started!")
352358

353-
if err := updateCheck(); err != nil {
354-
log.Println(err)
355-
}
359+
go updateTicker()
356360

357361
mux := http.NewServeMux()
358362

0 commit comments

Comments
 (0)