Commit Graph

239 Commits

Author SHA1 Message Date
Julien Pivotto b2a4cacb95 Update go dependencies & switch to go-kit/log
Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu>
2021-08-02 12:43:23 +02:00
Andrey Kuzmin 194f1cfd7c
Integrate elm-review in CI (#2555)
* Run elm-review from CI

Signed-off-by: Andrey Kuzmin <unsoundscapes@gmail.com>

* Use the jfmengels/elm-review-simplify rule

Signed-off-by: Andrey Kuzmin <unsoundscapes@gmail.com>

* Make assets

Signed-off-by: Andrey Kuzmin <unsoundscapes@gmail.com>
2021-04-27 07:14:00 +02:00
Andrey Kuzmin 54431be888
UI cleanup dead code with elm-review (#2528)
* Add elm-review

Signed-off-by: Andrey Kuzmin <unsoundscapes@gmail.com>

* elm-review --fix-all

Signed-off-by: Andrey Kuzmin <unsoundscapes@gmail.com>

* Update vfsdata

Signed-off-by: Andrey Kuzmin <unsoundscapes@gmail.com>
2021-04-08 21:04:09 +02:00
Andrey Kuzmin b0083ec55d
Negative matchers on the Silence form page (#2488)
* Support negative matchers in silence form

Signed-off-by: Andrey Kuzmin <unsoundscapes@gmail.com>

* Extract url manipulation from filterBar

This is needed for silence form, where we don't have to
manipulate the url.

Signed-off-by: Andrey Kuzmin <unsoundscapes@gmail.com>

* Only show the silence button in the alert list

Signed-off-by: Andrey Kuzmin <unsoundscapes@gmail.com>

* Validate matchers

Signed-off-by: Andrey Kuzmin <unsoundscapes@gmail.com>

* Improve silence form layout

Signed-off-by: Andrey Kuzmin <unsoundscapes@gmail.com>

* Fix for editing existing silence

Signed-off-by: Andrey Kuzmin <unsoundscapes@gmail.com>

* Fix for resetting the form

Signed-off-by: Andrey Kuzmin <unsoundscapes@gmail.com>

* Update assets_vfsdata.go

Signed-off-by: Andrey Kuzmin <unsoundscapes@gmail.com>
2021-03-01 16:40:32 +01:00
Kiril Vladimirov 740a97345f ui: add isEqual field to Matcher
Signed-off-by: Kiril Vladimirov <kiril@vladimiroff.org>
2021-02-19 00:14:04 +02:00
Simon Pasquier 45db1a1163
ui: update versions for the Elm components (#2482)
The frontend CI job started to fail for some obscure reasons, most
probably because we use a very old version of NodeJS.

To make it work again, this change does the following:

* Bump to the latest NodeJS LTS version and use the buster variant.
* Use Yarn instead of npm to install Javascript packages.
* Bump Elm components to their latest versions.

There should be no functional change to the UI code.

Signed-off-by: Simon Pasquier <spasquie@redhat.com>
2021-02-09 15:47:54 +01:00
Nicholas Capo 193ebba04d
Display Silence and Alert dates in ISO8601 format (#2363)
* This changes the Alert view the SilenceList and SilenceView

Signed-off-by: Nicholas Capo <nicholas.capo@gmail.com>
2020-12-03 23:06:14 +01:00
B++ 00b86d9067
setting favicon.ico dinamically (#2392)
* added favico link with relative path

Signed-off-by: jberny <f.bernardi89@gmail.com>

* re-generated assets

Signed-off-by: jberny <f.bernardi89@gmail.com>
2020-10-15 11:10:48 +02:00
masataka 73db78741f
Add date picker to silence form views (#2262)
* add datepicker

Signed-off-by: m-masataka <m.mizukoshi.wakuwaku@gmail.com>

* fix import error

Signed-off-by: m-masataka <m.mizukoshi.wakuwaku@gmail.com>

* fix unnecessary import from DateTime package

Signed-off-by: m-masataka <m.mizukoshi.wakuwaku@gmail.com>

* fix unnecessary import utc

Signed-off-by: m-masataka <m.mizukoshi.wakuwaku@gmail.com>

* change datetime picker component

Signed-off-by: m-masataka <m.mizukoshi.wakuwaku@gmail.com>

* added datetime picker utils

Signed-off-by: m-masataka <m.mizukoshi.wakuwaku@gmail.com>

* added datetime picker utils

Signed-off-by: m-masataka <m.mizukoshi.wakuwaku@gmail.com>

* remove config

Signed-off-by: m-masataka <m.mizukoshi.wakuwaku@gmail.com>

* replace case expressions to Result.toMaybe

Signed-off-by: m-masataka <m.mizukoshi.wakuwaku@gmail.com>
2020-07-24 14:52:29 +02:00
Simon Pasquier 9c3ee38683
.circleci/config.yml: collect test metadata (#2211)
* .circleci/config.yml: collect test metadata

Signed-off-by: Simon Pasquier <spasquie@redhat.com>

* Store frontend test results too

Signed-off-by: Simon Pasquier <spasquie@redhat.com>
2020-06-04 09:49:32 +02:00
masataka 443fdb0b36
fix receiver regex (#2090)
Signed-off-by: m-masataka <m.mizukoshi.wakuwaku@gmail.com>
2020-02-18 17:24:05 +01:00
NotAFile 4ec53566e5 add elm-* to ui/app make clean (#2098)
Signed-off-by: NotAFile <nota@notafile.com>
2019-11-20 10:45:46 +01:00
Simon Pasquier 5211fad581
ui/app: fix silences filter (#2075)
Signed-off-by: Simon Pasquier <spasquie@redhat.com>
2019-10-18 11:47:26 +02:00
Stephen Reddekopp f3a2ff8b7f Disable the grammarly plugin on all textareas to prevent inserted nodes from crashing the vdom (#2061)
Signed-off-by: Stephen Reddekopp <stephen.reddekopp@gmail.com>
2019-10-04 11:00:22 +02:00
masataka c5d41bb68e Grouping label's expand button with grouping id (#2012)
* Expand button with id

Signed-off-by: m-masataka <m.mizukoshi.wakuwaku@gmail.com>

* fixed indexedMap

Signed-off-by: m-masataka <m.mizukoshi.wakuwaku@gmail.com>

* rebuild

Signed-off-by: m-masataka <m.mizukoshi.wakuwaku@gmail.com>
2019-08-29 09:33:24 +02:00
masataka c1040d5d74 Recreate silence with previous comment. (#1927)
* Recreate silence with previous comment.

Signed-off-by: m-masataka <m.mizukoshi.wakuwaku@gmail.com>

* implement newSilenceFromMatchersAndComment

Signed-off-by: m-masataka <m.mizukoshi.wakuwaku@gmail.com>

* Trigger

Signed-off-by: m-masataka <m.mizukoshi.wakuwaku@gmail.com>
2019-08-27 12:03:57 +02:00
masataka b33a9366dd Textarea with auto resize in UI (#1893)
* textarea with auto resize

Signed-off-by: mizukoshi-m <mizukoshi@mfeed.ad.jp>

* implement resize textarea on type

Signed-off-by: m-masataka <m.mizukoshi.wakuwaku@gmail.com>

* remove scrollHeight

Signed-off-by: m-masataka <m.mizukoshi.wakuwaku@gmail.com>

* Add new function for textarea field

Signed-off-by: m-masataka <m.mizukoshi.wakuwaku@gmail.com>

* remove unnecessary code

Signed-off-by: m-masataka <m.mizukoshi.wakuwaku@gmail.com>
2019-06-12 08:54:16 +02:00
masataka e33edd6f13 Create Silence from filter Bar (#1911)
* Create Silence from filters

Signed-off-by: m-masataka <m.mizukoshi.wakuwaku@gmail.com>

* Get rid of unnecessary things

Signed-off-by: m-masataka <m.mizukoshi.wakuwaku@gmail.com>
2019-06-05 19:01:56 +02:00
Stuart Nelson d7000fc984 Merge branch 'master' into stn/collapse-alert-groups 2019-05-13 10:03:27 +02:00
Andrey Kuzmin 658dd3a29f Properly serialize boolean
Signed-off-by: Andrey Kuzmin <andrey.kuzmin@soundcloud.com>
2019-05-11 20:28:33 +02:00
Andrey Kuzmin 20c336fe22 Adjust the styling
Signed-off-by: Andrey Kuzmin <andrey.kuzmin@soundcloud.com>
2019-05-11 20:28:33 +02:00
Will Hegedus 5a5133af7e update Tests to account for "active" param
Signed-off-by: Will Hegedus <wbhegedus@liberty.edu>
2019-05-10 09:57:27 -04:00
Will Hegedus 96a33e1bc6 Add filtering based off "active" query param
Signed-off-by: Will Hegedus <wbhegedus@liberty.edu>
2019-05-08 12:05:18 -04:00
stuart nelson 1abb1fb9bb Persist alert group expansion in local storage
Signed-off-by: stuart nelson <stuartnelson3@gmail.com>
2019-05-07 16:08:32 +02:00
stuart nelson f46adfe46a Support expanding multiple groups
Signed-off-by: stuart nelson <stuartnelson3@gmail.com>
2019-05-07 16:08:29 +02:00
stuart nelson 072365a44e Show alert count behind group
Signed-off-by: stuart nelson <stuartnelson3@gmail.com>
2019-05-07 16:08:26 +02:00
stuart nelson 7e0862f67c When only one alert group is present, always expand it
Can't think of a reason to hide the alerts if
there's only a single group.

Signed-off-by: stuart nelson <stuartnelson3@gmail.com>
2019-05-07 16:08:22 +02:00
stuart nelson 759bf7b6b6 Parse alert list into alert groups when received from API
We can simplify the view flow by parsing the list
of alerts for custom grouping as soon as they are
returned to the update function.

Signed-off-by: stuart nelson <stuartnelson3@gmail.com>
2019-05-07 16:08:05 +02:00
stuart nelson b4fb8a28ef Collapse alert groups when initially viewing ui
Signed-off-by: stuart nelson <stuartnelson3@gmail.com>
2019-05-03 16:15:07 +02:00
James Ritchie a6bdc73fa4 added icon to show inhibited status
Signed-off-by: James Ritchie <james.g.ritchie@baesystems.com>
2019-05-01 08:22:41 +00:00
stuart nelson 0a7e227549 Merge branch 'master' into default-grouping-in-ui
Signed-off-by: stuart nelson <stuartnelson3@gmail.com>
2019-04-30 15:09:56 +02:00
stuart nelson 1f41731881 Correctly construct filter query string for api
Updating the api in
bc373f562f
resulted in the UI sending query strings for the
filter that no longer match what the backend
expects. This brings that in to line.

Signed-off-by: stuart nelson <stuartnelson3@gmail.com>
2019-04-29 16:50:56 +02:00
Andrey Kuzmin eb8345e72f Update tests
Signed-off-by: Andrey Kuzmin <andrey.kuzmin@soundcloud.com>
2019-04-27 12:31:48 +02:00
Andrey Kuzmin 9ddadb8c77 Support default grouping
Signed-off-by: Andrey Kuzmin <andrey.kuzmin@soundcloud.com>
2019-04-27 12:14:31 +02:00
Andrey Kuzmin 1df9de3f28 Introduce a helper to render apiData
Signed-off-by: Andrey Kuzmin <andrey.kuzmin@soundcloud.com>
2019-04-27 12:14:31 +02:00
Andrey Kuzmin 91d29725e0 Remove unused filter argument
Signed-off-by: Andrey Kuzmin <andrey.kuzmin@soundcloud.com>
2019-04-27 12:14:31 +02:00
Andrey Kuzmin 26f3e4ef44 Generate AlertGroup decoders
Signed-off-by: Andrey Kuzmin <andrey.kuzmin@soundcloud.com>
2019-04-27 12:14:31 +02:00
Max Leonard Inden b1f05ce988
ui/web: Set HTTP headers to prevent asset caching
This patch adds HTTP headers to each web asset response, disabling
caching for the payload. This prevents users running an old version of
the UI against a new version of Alertmanager once they updated. On the
down-side it increases page load size on subsequent page loads.

Signed-off-by: Max Leonard Inden <IndenML@gmail.com>
2019-03-29 09:33:20 +01:00
Paul Gier c834a991c6 set ELM_HOME for the elm-env container
The ELM_HOME variable needs to be set to the mounted volume
directory when building to prevent permissions errors caused
by using root as the default home dir.

Signed-off-by: Paul Gier <pgier@redhat.com>
2019-03-11 10:45:45 -05:00
Paul Gier 458f1d646b Makefile improvements
- make clean shouldn't print errors when files/directories have already
been removed
- add copyright header to generated api files to pass license check

Signed-off-by: Paul Gier <pgier@redhat.com>
2019-03-11 10:45:45 -05:00
Simon Pasquier bc373f562f *: fix filter parameters with comma
Signed-off-by: Simon Pasquier <spasquie@redhat.com>
2019-03-08 09:56:05 +01:00
beorn7 f2345d7c8e Make the silence preview show also muted alerts
Even if an alert is already silenced and/or muted, I still want to
know that my newly created silence will affect it.

Signed-off-by: beorn7 <beorn@soundcloud.com>
2019-03-01 14:15:53 +01:00
Nguyen Quang Huy edf170d03b Add signed off to commit (#1766)
- Fix error string should not be capitalized from [Golang coding convention](https://github.com/golang/go/wiki/CodeReviewComments#error-strings)
- Fix some typos

Signed-off-by: Nguyen Quang Huy <huynq0911@gmail.com>
2019-02-25 11:04:42 +01:00
Max Leonard Inden 8e157b3af5
api/v2: Make cluster status peers and name optional
If a users chooses to disable the Alertmanager cluster feature, there is
no cluster name nor cluster peers. Hence these should be optional. Only
cluster status is set to "disabled".

Signed-off-by: Max Leonard Inden <IndenML@gmail.com>
2019-02-04 11:40:30 +01:00
Max Leonard Inden 2f055d9966
api/v2: Do not populate cluster info if clustering is disabled
When users start Alertmanager with `--cluster.listen-address=`, the
cluster will not be initialized, hence api.peer will be `nil`. So far
this would result in a nil pointer dereference by the API v2 accessing
the api.peer field.

With this patch, api v2 skips populating the peers array, sets the name
to an empty string and the status to "disabled" in case `api.peer` is
nil.

Signed-off-by: Max Leonard Inden <IndenML@gmail.com>
2019-01-31 16:56:59 +01:00
stuart nelson dba283edd0
respect regex matchers when recreating silences (#1697)
* Respect regexes when recreating silences
* Generate assets

Signed-off-by: stuart nelson <stuartnelson3@gmail.com>
2019-01-09 10:33:43 +01:00
stuart nelson b437240bd9
Stn/update alert compact view (#1698)
* Remove inhibited/silenced text

In the alert list, this is already seen via the
icons. In the silence preview, since it's in the
silence preview, clearly it's affected by the
silence.

* Generate assets

Signed-off-by: stuart nelson <stuartnelson3@gmail.com>
2019-01-08 16:26:12 +01:00
Max Leonard Inden 2b697aaa6b
api/v2: Extract shared properties of gettable and postable alert
With issue 1465 on openapi-generator [1] being fixed, we can not extract
shared properties of the gettable and postable alert definition into a
shared object (`alert`) like we do for silence, gettable silence and
postable silence.

In addition this patch does the following changes to the UI:

- Use `List GettableAlert` instead of plural type definition like
`GettableAlerts` because the plural definitions are not generated.

- Fix openapi-generator-cli docker image to specific hash.

[1] https://github.com/OpenAPITools/openapi-generator/issues/1465

Signed-off-by: Max Leonard Inden <IndenML@gmail.com>
2018-11-28 14:35:39 +01:00
Max Inden 218b8fb1f4 ui: Pass parameterized api url down to status logic (#1637)
Previously the api url was hardcoded in the elm logic fetching the
status of an Alertmanager. Instead it is now being passed down like we
already did for /alerts, /silences and /receivers.

Signed-off-by: Max Leonard Inden <IndenML@gmail.com>
2018-11-27 15:33:19 +01:00
Max Leonard Inden f504f953c1
ui: Move /alerts to API v2
Signed-off-by: Max Leonard Inden <IndenML@gmail.com>
2018-11-23 12:53:48 +01:00