2023-03-12 16:01:49 +02:00
|
|
|
module github.com/cloudbase/garm
|
2022-04-13 16:47:42 +00:00
|
|
|
|
2025-02-24 07:59:10 +00:00
|
|
|
go 1.23.0
|
2024-08-03 16:07:21 +00:00
|
|
|
|
2025-02-24 07:59:10 +00:00
|
|
|
toolchain go1.23.6
|
2022-04-13 16:47:42 +00:00
|
|
|
|
|
|
|
|
require (
|
2025-03-18 06:54:48 +00:00
|
|
|
github.com/BurntSushi/toml v1.5.0
|
2025-06-17 21:03:46 +00:00
|
|
|
github.com/bradleyfalzon/ghinstallation/v2 v2.16.0
|
2025-08-07 07:05:40 +00:00
|
|
|
github.com/cloudbase/garm-provider-common v0.1.7
|
2024-01-05 23:32:16 +00:00
|
|
|
github.com/felixge/httpsnoop v1.0.4
|
2025-03-18 06:54:43 +00:00
|
|
|
github.com/go-openapi/errors v0.22.1
|
2024-04-22 13:38:51 +00:00
|
|
|
github.com/go-openapi/runtime v0.28.0
|
|
|
|
|
github.com/go-openapi/strfmt v0.23.0
|
2025-03-13 06:27:27 +00:00
|
|
|
github.com/go-openapi/swag v0.23.1
|
2025-07-31 07:04:47 +00:00
|
|
|
github.com/golang-jwt/jwt/v5 v5.3.0
|
2025-06-17 21:03:46 +00:00
|
|
|
github.com/google/go-github/v72 v72.0.0
|
2024-04-22 13:38:51 +00:00
|
|
|
github.com/google/uuid v1.6.0
|
2023-12-18 15:54:57 +00:00
|
|
|
github.com/gorilla/handlers v1.5.2
|
|
|
|
|
github.com/gorilla/mux v1.8.1
|
Add events websocket endpoint
This change adds a new websocket endpoint for database events. The events
endpoint allows clients to stream events as they happen in GARM. Events
are defined as a structure containning the event type (create, update, delete),
the database entity involved (instances, pools, repos, etc) and the payload
consisting of the object involved in the event. The payload translates
to the types normally returned by the API and can be deserialized as one
of the types present in the params package.
The events endpoint is a websocket endpoint and it accepts filters as
a simple json send over the websocket connection. The filters allows the
user to specify which entities are of interest, and which operations should
be returned. For example, you may be interested in changes made to pools
or runners, in which case you could create a filter that only returns
update operations for pools. Or update and delete operations.
The filters can be defined as:
{
"filters": [
{
"entity_type": "instance",
"operations": ["update", "delete"]
},
{
"entity_type": "pool"
},
],
"send_everything": false
}
This would return only update and delete events for instances and all events
for pools. Alternatively you can ask GARM to send you everything:
{
"send_everything": true
}
Signed-off-by: Gabriel Adrian Samfira <gsamfira@cloudbasesolutions.com>
2024-07-03 22:30:41 +00:00
|
|
|
github.com/gorilla/websocket v1.5.4-0.20240702125206-a62d9d2a8413
|
2025-07-28 08:04:00 +00:00
|
|
|
github.com/jedib0t/go-pretty/v6 v6.6.8
|
2024-12-12 23:42:01 +02:00
|
|
|
github.com/juju/clock v1.1.1
|
|
|
|
|
github.com/juju/retry v1.0.1
|
2022-05-03 12:40:59 +00:00
|
|
|
github.com/manifoldco/promptui v0.9.0
|
2022-04-27 16:56:28 +00:00
|
|
|
github.com/nbutton23/zxcvbn-go v0.0.0-20210217022336-fa2cb2858354
|
2022-04-13 16:47:42 +00:00
|
|
|
github.com/pkg/errors v0.9.1
|
2025-08-01 06:26:29 +00:00
|
|
|
github.com/prometheus/client_golang v1.23.0
|
2025-02-24 07:59:10 +00:00
|
|
|
github.com/spf13/cobra v1.9.1
|
2024-12-12 23:42:01 +02:00
|
|
|
github.com/stretchr/testify v1.10.0
|
2025-07-11 06:28:17 +00:00
|
|
|
golang.org/x/crypto v0.40.0
|
2025-07-11 09:34:59 +00:00
|
|
|
golang.org/x/mod v0.26.0
|
2025-05-06 18:27:20 +00:00
|
|
|
golang.org/x/oauth2 v0.30.0
|
2025-07-11 06:28:17 +00:00
|
|
|
golang.org/x/sync v0.16.0
|
2022-10-21 02:49:53 +03:00
|
|
|
gopkg.in/DATA-DOG/go-sqlmock.v1 v1.3.0
|
2023-03-12 16:22:37 +02:00
|
|
|
gopkg.in/natefinch/lumberjack.v2 v2.2.1
|
2025-07-01 09:02:05 +00:00
|
|
|
gorm.io/datatypes v1.2.6
|
2025-06-17 21:03:46 +00:00
|
|
|
gorm.io/driver/mysql v1.6.0
|
|
|
|
|
gorm.io/driver/sqlite v1.6.0
|
2025-07-24 06:47:05 +00:00
|
|
|
gorm.io/gorm v1.30.1
|
2022-04-13 16:47:42 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
|
|
require (
|
2024-04-22 13:38:51 +00:00
|
|
|
filippo.io/edwards25519 v1.1.0 // indirect
|
2023-06-30 19:02:44 +03:00
|
|
|
github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2 // indirect
|
2023-01-17 17:32:28 +01:00
|
|
|
github.com/beorn7/perks v1.0.1 // indirect
|
2024-04-22 13:38:51 +00:00
|
|
|
github.com/cespare/xxhash/v2 v2.3.0 // indirect
|
2023-03-12 16:22:37 +02:00
|
|
|
github.com/chzyer/readline v1.5.1 // indirect
|
2022-06-28 15:13:02 +00:00
|
|
|
github.com/davecgh/go-spew v1.1.1 // indirect
|
2025-06-17 21:03:46 +00:00
|
|
|
github.com/go-logr/logr v1.4.3 // indirect
|
2023-06-30 19:02:44 +03:00
|
|
|
github.com/go-logr/stdr v1.2.2 // indirect
|
2024-04-22 13:38:51 +00:00
|
|
|
github.com/go-openapi/analysis v0.23.0 // indirect
|
2025-04-17 18:06:38 +03:00
|
|
|
github.com/go-openapi/jsonpointer v0.21.1 // indirect
|
2024-04-22 13:38:51 +00:00
|
|
|
github.com/go-openapi/jsonreference v0.21.0 // indirect
|
|
|
|
|
github.com/go-openapi/loads v0.22.0 // indirect
|
|
|
|
|
github.com/go-openapi/spec v0.21.0 // indirect
|
|
|
|
|
github.com/go-openapi/validate v0.24.0 // indirect
|
2025-06-17 21:03:46 +00:00
|
|
|
github.com/go-sql-driver/mysql v1.9.3 // indirect
|
2025-03-22 05:16:51 +00:00
|
|
|
github.com/golang-jwt/jwt/v4 v4.5.2 // indirect
|
2022-04-13 16:47:42 +00:00
|
|
|
github.com/google/go-querystring v1.1.0 // indirect
|
2023-03-12 16:22:37 +02:00
|
|
|
github.com/inconshreveable/mousetrap v1.1.0 // indirect
|
2022-04-25 00:03:26 +00:00
|
|
|
github.com/jinzhu/inflection v1.0.0 // indirect
|
|
|
|
|
github.com/jinzhu/now v1.1.5 // indirect
|
2023-06-30 19:02:44 +03:00
|
|
|
github.com/josharian/intern v1.0.0 // indirect
|
2023-03-12 16:22:37 +02:00
|
|
|
github.com/juju/errors v1.0.0 // indirect
|
2023-12-18 12:16:48 +00:00
|
|
|
github.com/juju/loggo v1.0.0 // indirect
|
2023-03-26 22:08:51 +03:00
|
|
|
github.com/juju/testing v1.0.2 // indirect
|
2024-12-20 18:54:05 +00:00
|
|
|
github.com/mailru/easyjson v0.9.0 // indirect
|
2023-12-18 15:54:57 +00:00
|
|
|
github.com/mattn/go-isatty v0.0.20 // indirect
|
2024-12-12 23:42:01 +02:00
|
|
|
github.com/mattn/go-runewidth v0.0.16 // indirect
|
2025-04-17 18:06:38 +03:00
|
|
|
github.com/mattn/go-sqlite3 v1.14.28 // indirect
|
2024-12-12 23:42:01 +02:00
|
|
|
github.com/minio/sio v0.4.1 // indirect
|
2023-06-30 19:02:44 +03:00
|
|
|
github.com/mitchellh/mapstructure v1.5.0 // indirect
|
2024-12-12 23:42:01 +02:00
|
|
|
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
|
2023-06-30 19:02:44 +03:00
|
|
|
github.com/oklog/ulid v1.3.1 // indirect
|
|
|
|
|
github.com/opentracing/opentracing-go v1.2.0 // indirect
|
2023-03-12 16:22:37 +02:00
|
|
|
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect
|
2025-04-17 18:06:38 +03:00
|
|
|
github.com/prometheus/client_model v0.6.2 // indirect
|
2025-08-01 06:26:29 +00:00
|
|
|
github.com/prometheus/common v0.65.0 // indirect
|
2025-05-06 18:27:20 +00:00
|
|
|
github.com/prometheus/procfs v0.16.1 // indirect
|
2024-04-22 13:38:51 +00:00
|
|
|
github.com/rivo/uniseg v0.4.7 // indirect
|
2025-02-24 07:59:10 +00:00
|
|
|
github.com/spf13/pflag v1.0.6 // indirect
|
2024-04-22 13:38:51 +00:00
|
|
|
github.com/stretchr/objx v0.5.2 // indirect
|
2023-07-22 22:39:17 +00:00
|
|
|
github.com/teris-io/shortid v0.0.0-20220617161101-71ec9f2aa569 // indirect
|
2025-06-17 21:03:46 +00:00
|
|
|
go.mongodb.org/mongo-driver v1.17.4 // indirect
|
2024-12-12 23:42:01 +02:00
|
|
|
go.opentelemetry.io/auto/sdk v1.1.0 // indirect
|
2025-06-17 21:03:46 +00:00
|
|
|
go.opentelemetry.io/otel v1.36.0 // indirect
|
|
|
|
|
go.opentelemetry.io/otel/metric v1.36.0 // indirect
|
|
|
|
|
go.opentelemetry.io/otel/trace v1.36.0 // indirect
|
|
|
|
|
golang.org/x/net v0.41.0 // indirect
|
2025-07-11 06:28:17 +00:00
|
|
|
golang.org/x/sys v0.34.0 // indirect
|
|
|
|
|
golang.org/x/text v0.27.0 // indirect
|
2025-04-17 18:06:38 +03:00
|
|
|
google.golang.org/protobuf v1.36.6 // indirect
|
2023-07-21 15:30:22 +00:00
|
|
|
gopkg.in/yaml.v3 v3.0.1 // indirect
|
2022-04-13 16:47:42 +00:00
|
|
|
)
|