diff --git a/config.yml b/config.yml index 8f12f93b..2fe480a6 100644 --- a/config.yml +++ b/config.yml @@ -1,7 +1,7 @@ wtf: refreshInterval: 1 bamboohr: - enabled: false + enabled: true position: top: 0 left: 0 @@ -11,7 +11,7 @@ wtf: url: "https://api.bamboohr.com/api/gateway.php" gcal: currentIcon: "💥" - enabled: false + enabled: true eventCount: 10 position: top: 2 @@ -22,7 +22,7 @@ wtf: secretFile: "~/.wtf/gcal/client_secret.json" git: commitCount: 5 - enabled: false + enabled: true position: top: 0 left: 2 @@ -31,7 +31,7 @@ wtf: refreshInterval: 8 repository: "/Users/chris/go/src/github.com/senorprogrammer/wtf" github: - enabled: false + enabled: true organization: "BetterOfficeApps" position: top: 2 @@ -42,7 +42,7 @@ wtf: repo: "core-api" username: "senorprogrammer" jira: - enabled: false + enabled: true position: top: 1 left: 1 @@ -51,16 +51,16 @@ wtf: refreshInterval: 900 newrelic: applicationId: 10549735 - enabled: false - deployCount: 7 + enabled: true + deployCount: 10 position: top: 4 left: 2 - height: 1 + height: 2 width: 3 refreshInterval: 900 opsgenie: - enabled: false + enabled: true position: top: 2 left: 0 @@ -68,20 +68,20 @@ wtf: width: 1 refreshInterval: 21600 security: - enabled: false + enabled: true position: - top: 5 + top: 4 left: 0 height: 1 width: 1 refreshInterval: 3600 status: - enabled: false + enabled: true position: top: 5 - left: 2 - height: 3 - width: 3 + left: 0 + height: 1 + width: 1 refreshInterval: 1 weather: cityId: 6173331 diff --git a/newrelic/widget.go b/newrelic/widget.go index 7061c19d..7ad64584 100644 --- a/newrelic/widget.go +++ b/newrelic/widget.go @@ -69,10 +69,9 @@ func (widget *Widget) contentFrom(deploys []nr.ApplicationDeployment) string { for _, deploy := range deploys { if (deploy.Revision != "") && wtf.Exclude(revisions, deploy.Revision) { str = str + fmt.Sprintf( - " %03d [green]%s[white] %-6s %s\n", - deploy.ID%1000, + " [green]%s[white] %s %-16s\n", deploy.Revision[0:8], - deploy.Timestamp.Format("Jan 2"), + deploy.Timestamp.Format("Jan 02, 15:04"), wtf.NameFromEmail(deploy.User), ) diff --git a/opsgenie/client.go b/opsgenie/client.go index e0a58f87..59ba2b90 100644 --- a/opsgenie/client.go +++ b/opsgenie/client.go @@ -27,22 +27,21 @@ type Parent struct { /* -------------------- Exported Functions -------------------- */ -func Fetch() *OnCallResponse { +func Fetch() (*OnCallResponse, error) { apiKey := os.Getenv("WTF_OPS_GENIE_API_KEY") scheduleUrl := "https://api.opsgenie.com/v2/schedules/on-calls?flat=true" - var onCallResponse OnCallResponse - opsGenieRequest(scheduleUrl, apiKey, &onCallResponse) + response, err := opsGenieRequest(scheduleUrl, apiKey) - return &onCallResponse + return response, err } /* -------------------- Unexported Functions -------------------- */ -func opsGenieRequest(url string, apiKey string, payload interface{}) { +func opsGenieRequest(url string, apiKey string) (*OnCallResponse, error) { req, err := http.NewRequest("GET", url, nil) if err != nil { - panic(err) + return nil, err } req.Header.Set("Authorization", fmt.Sprintf("GenieKey %s", apiKey)) @@ -51,11 +50,14 @@ func opsGenieRequest(url string, apiKey string, payload interface{}) { resp, err := client.Do(req) if err != nil { - panic(err) + return nil, err } defer resp.Body.Close() - if err := json.NewDecoder(resp.Body).Decode(payload); err != nil { - panic(err) + response := &OnCallResponse{} + if err := json.NewDecoder(resp.Body).Decode(response); err != nil { + return nil, err } + + return response, nil } diff --git a/opsgenie/widget.go b/opsgenie/widget.go index 0fbc10d9..9b64b171 100644 --- a/opsgenie/widget.go +++ b/opsgenie/widget.go @@ -34,13 +34,20 @@ func (widget *Widget) Refresh() { return } - data := Fetch() + data, err := Fetch() widget.View.SetTitle(" ⏰ On Call ") widget.RefreshedAt = time.Now() widget.View.Clear() - fmt.Fprintf(widget.View, "%s", widget.contentFrom(data)) + + if err != nil { + widget.View.SetWrap(true) + fmt.Fprintf(widget.View, "%s", err) + } else { + widget.View.SetWrap(false) + fmt.Fprintf(widget.View, "%s", widget.contentFrom(data)) + } } /* -------------------- Unexported Functions -------------------- */ diff --git a/security/widget.go b/security/widget.go index 776f7e11..ac6fe576 100644 --- a/security/widget.go +++ b/security/widget.go @@ -58,8 +58,14 @@ func (widget *Widget) addView() { } func (widget *Widget) contentFrom(data map[string]string) string { - str := fmt.Sprintf(" Firewall: %s Network: %s\n", data["Enabled"], data["Network"]) - str = str + fmt.Sprintf(" Stealth: %s Crypto: %s\n", data["Stealth"], data["Encryption"]) + str := " [red]WiFi[white]\n" + str = str + fmt.Sprintf(" %8s: %s\n", "Network", data["Network"]) + str = str + fmt.Sprintf(" %8s: %s\n", "Crypto", data["Encryption"]) + str = str + "\n" + str = str + " [red]Firewall[white]\n" + str = str + fmt.Sprintf(" %8s: %s\n", "Enabled", data["Enabled"]) + str = str + fmt.Sprintf(" %8s: %s\n", "Stealth", data["Stealth"]) + str = str + "\n" return str } diff --git a/weather/widget.go b/weather/widget.go index 5564a3d8..a6015f55 100644 --- a/weather/widget.go +++ b/weather/widget.go @@ -37,7 +37,7 @@ func (widget *Widget) Refresh() { data := Fetch(Config.UInt("wtf.weather.cityId", 6176823)) - widget.View.SetTitle(fmt.Sprintf(" %s Weather - %s ", icon(data), data.Name)) + widget.View.SetTitle(fmt.Sprintf(" %s Weather: [green]%s[white] ", icon(data), data.Name)) widget.RefreshedAt = time.Now() widget.View.Clear()