Commit graph

1278 commits

Author SHA1 Message Date
Taha Yassine Kraiem
ed88d32c32 refactor(DB): support incident events 2025-05-27 18:19:32 +02:00
rjshrjndrn
7217517a11 fix(assist): url templating
Signed-off-by: rjshrjndrn <rjshrjndrn@gmail.com>
2025-05-27 16:40:05 +02:00
rjshrjndrn
3bd2578c9c fix(helmcharts): clickhouse fix the configmap mount
Signed-off-by: rjshrjndrn <rjshrjndrn@gmail.com>
2025-05-27 16:40:05 +02:00
rjshrjndrn
ceabceb184 fix(helm): standardize template syntax and fix variable references
- Add quotes around boolean string values in REDIS_CACHE_ENABLED
- Fix variable reference from .Values.redis.redisHost to .Values.redisHost
- Remove extra hyphens in template expressions for cleaner syntax
- Update assist_url helper to use printf for better string formatting

These changes ensure consistent Helm template syntax and fix broken
variable references that could cause deployment issues.

Signed-off-by: rjshrjndrn <rjshrjndrn@gmail.com>
2025-05-27 16:40:05 +02:00
rjshrjndrn
70dda4032a feat: add FQDN and path template to assist URL helper
- Replace simple hostnames with fully qualified domain names
- Include namespace and cluster domain in assist service URLs
- Add /assist/%s path pattern for both enterprise and standard editions
- Ensures proper service discovery across Kubernetes namespaces

Signed-off-by: rjshrjndrn <rjshrjndrn@gmail.com>
2025-05-27 16:40:05 +02:00
rjshrjndrn
bace9735df feat: add enterprise edition config to assist chart
- Add COMPRESSION, port, CACHE_REFRESH_INTERVAL_SECONDS, and debug
  environment variables for enterprise edition deployments
- Use conditional logic based on enterpriseEditionLicense flag
- Update REDIS_URL to support both global and local redis config
  with fallback using default template function

This enables enterprise-specific features and improves redis
configuration flexibility for the assist service.

Signed-off-by: rjshrjndrn <rjshrjndrn@gmail.com>
2025-05-27 16:40:05 +02:00
rjshrjndrn
2c975c768e feat: refactor assist-api chart and remove ingress routing
- Add assist-api as new chart dependency with conditional enablement
- Remove Kafka environment variables from assist-api deployment
- Add REDIS_CACHE_ENABLED with enterprise license conditional logic
- Delete assist-api ingress.yaml for direct service routing
- Remove S3 configuration from assist deployment
- Add openreplay.assist_url helper for service discovery
- Configure assist-api as disabled by default in values

BREAKING CHANGE: assist-api no longer uses ingress routing and
requires direct service access. S3 configuration removed from
assist service.

Signed-off-by: rjshrjndrn <rjshrjndrn@gmail.com>
2025-05-27 16:40:05 +02:00
rjshrjndrn
4f02fd1e9e chore(helmcharts): assist-api
Signed-off-by: rjshrjndrn <rjshrjndrn@gmail.com>
2025-05-27 16:40:05 +02:00
Taha Yassine Kraiem
4581c29d9d refactor(DB): changed supported platforms in CH 2025-05-26 16:57:46 +02:00
Taha Yassine Kraiem
235364b968 refactor(DB): changed supported platforms in CH
(cherry picked from commit 64242a5dc0)
2025-05-26 11:52:44 +02:00
Taha Yassine Kraiem
6f0deb57da refactor(chalice): changed default scope state 2025-05-20 11:58:59 +02:00
Taha Yassine Kraiem
af8996b54a refactor(chalice): removed top-values cache
refactor(DB): removed or_cache
2025-05-15 17:45:02 +02:00
Taha Yassine Kraiem
a13f427816 refactor(chalice): autocomplete for event-names
refactor(chalice): autocomplete for properties-names
refactor(chalice): autocomplete for properties-values
2025-05-08 18:52:23 +02:00
Taha Yassine Kraiem
3ac5c30c5f refactor(DB): remove TTL for CH tables 2025-05-08 18:52:23 +02:00
Taha Yassine Kraiem
39d3d8db4c refactor(chalice): changed predefined properties types handling
refactor(DB): changed predefined properties types
2025-05-08 18:52:23 +02:00
rjshrjndrn
1df4a92901 chore(cli): pin dns
Signed-off-by: rjshrjndrn <rjshrjndrn@gmail.com>
2025-05-07 16:52:28 +02:00
Taha Yassine Kraiem
626c453a80 refactor(DB): remove TTL for CH tables
(cherry picked from commit d78b33dcd2)

# Conflicts:
#	ee/scripts/schema/db/init_dbs/clickhouse/create/init_schema.sql
2025-05-05 17:19:22 +02:00
Taha Yassine Kraiem
9f6dc788c4 refactor(DB): structured JSON attributes 2025-04-28 18:54:40 +02:00
rjshrjndrn
f591e886d7 fix(docker-compose): proper volume path #3279
Signed-off-by: rjshrjndrn <rjshrjndrn@gmail.com>
2025-04-28 17:27:17 +02:00
rjshrjndrn
1f55f8241c feat(cli): Add support for image versions
Signed-off-by: rjshrjndrn <rjshrjndrn@gmail.com>
2025-04-23 16:58:54 +02:00
rjshrjndrn
8b75dfa149 fix(docker-compose): clickhouse migration
Signed-off-by: rjshrjndrn <rjshrjndrn@gmail.com>
2025-04-23 16:51:39 +02:00
rjshrjndrn
33f571acc4 fix(docker-compose): remove shell interpolation
Signed-off-by: rjshrjndrn <rjshrjndrn@gmail.com>
2025-04-23 11:13:06 +02:00
Rajesh Rajendran
b886e9b242
or 1940 upstream docker release with the existing installation (#3316)
* chore(docker): Adding dynamic env generator
* ci(make): Create deployment yamls
* ci(make): Generating docker envs
* change env name structure
* proper env names
* chore(docker): clickhouse
* chore(docker-compose): generate env file format
* chore(docker-compose): Adding docker-compose
* chore(docker-compose): format make
* chore(docker-compose): Update version
* chore(docker-compose): adding new secrets
* ci(make): default target
* ci(Makefile): Update common protocol
* chore(docker-compose): refactor folder structure
* ci(make): rename to docker-envs
* feat(docker): add clickhouse volume definition
Add clickhouse persistent volume to the docker-compose configuration
to ensure data is preserved between container restarts.
* refactor: move env files to docker-envs directory
Updates all environment file references in docker-compose.yaml to use a
consistent directory structure, placing them under the docker-envs/
directory for better organization.
* fix(docker): rename imagestorage to images
 The `imagestorage` service and related environment file
 have been renamed to `images` for clarity and consistency.
 This change reflects the service's purpose of handling
 images.
* feat(docker): introduce docker-compose template
 A new docker-compose template
 to generate docker-compose files from a list of services.
 The template uses helm syntax.
* fix: Properly set FILES variable in Makefile
 The FILES variable was not being set correctly in the
 Makefile due to subshell issues. This commit fixes the
 variable assignment and ensures that the variable is
 accessible in subsequent commands.
* feat: Refactor docker-compose template for local development
 This commit introduces a complete overhaul of the
 docker-compose template, switching from a helm-based
 template to a native docker-compose.yml file. This
 change simplifies local development and makes it easier
 to manage the OpenReplay stack.
 The new template includes services for:
 - PostgreSQL
 - ClickHouse
 - Redis
 - MinIO
 - Nginx
 - Caddy
 It also includes migration jobs for setting up the
 database and MinIO.
* fix(docker-compose): Add fallback empty environment
 Add an empty environment to the docker-compose template to prevent
 errors when the env_file is missing. This ensures that the
 container can start even if the environment file is not present.
* feat(docker): Add domainname and aliases to services
 This change adds the `domainname` and `aliases` attributes to each
 service in the docker-compose.yaml file. This is to ensure that
 the services can communicate with each other using their fully
 qualified domain names. Also adds shared volume and empty
 environment variables.
* update version
* chore(docker): don't pull parallel
* chore(docker-compose): proper pull
* chore(docker-compose): Update db service urls
* fix(docker-compose): clickhouse url
* chore(clickhouse): Adding clickhouse db migration
* chore(docker-compose): Adding clickhouse
* fix(tpl): variable injection
* chore(fix): compose tpl variable rendering
* chore(docker-compose): Allow override pg variable
* chore(helm): remove assist-server
* chore(helm): pg integrations
* chore(nginx): removed services
* chore(docker-compose): Mulitple aliases
* chore(docker-compose): Adding more env vars
* feat(install): Dynamically generate passwords
 dynamic password generation by
 identifying `change_me_*` entries in `common.env` and
 replacing them with random passwords. This enhances
 security and simplifies initial setup.
 The changes include:
 - Replacing hardcoded password replacements with a loop
   that iterates through all `change_me_*` entries.
 - Using `grep` to find all `change_me_*` tokens.
 - Generating a random password for each token.
 - Updating the `common.env` file with the generated
   passwords.
* chore(docker-compose): disable clickhouse password
* fix(docker-compose): clickhouse-migration
* compose: chalice env
* chore(docker-compose): overlay vars
* chore(docker): Adding ch port
* chore(docker-compose): disable clickhouse password
* fix(docker-compose): migration name
* feat(docker): skip specific values
* chore(docker-compose): define namespace
---------

Signed-off-by: rjshrjndrn <rjshrjndrn@gmail.com>
2025-04-23 10:57:19 +02:00
Jorgen Evens
d544da0665 fix(helm): fix broken volumeMounts indentation 2025-04-14 15:51:55 +02:00
rjshrjndrn
408c3122d3 fix(clickhouse): update user config mount paths
Properly mount clickhouse user configuration files to the users.d
directory with correct paths for each file. Also adds several
performance-related settings to the default user profile including
query cache and JSON type support.

Signed-off-by: rjshrjndrn <rjshrjndrn@gmail.com>
2025-04-14 15:37:55 +02:00
Andrey Babushkin
055ff8f64a
Assist remote canvas control (#3287)
* refactor(searchStore): reformat filterMap function parameters (#3166)

- Reformat the parameters of the filterMap function for better readability.
- Comment out the fetchSessions call in clearSearch method to avoid unnecessary session fetch.

* Increment frontend chart version (#3167)

Co-authored-by: GitHub Action <action@github.com>

* refactor(chalice): cleaned code
fix(chalice): fixed session-search-pg sortKey issue
fix(chalice): fixed CH-query-formatter to handle special chars
fix(chalice): fixed /ids response

* feat(auth): implement withCaptcha HOC for consistent reCAPTCHA (#3177)

* feat(auth): implement withCaptcha HOC for consistent reCAPTCHA

This commit refactors the reCAPTCHA implementation across the application
by introducing a Higher Order Component (withCaptcha) that encapsulates
captcha verification logic. The changes:

- Create a reusable withCaptcha HOC in withRecaptcha.tsx
- Refactor Login, ResetPasswordRequest, and CreatePassword components
- Extract SSOLogin into a separate component
- Improve error handling and user feedback
- Standardize loading and verification states across forms
- Make captcha implementation more maintainable and consistent

* feat(auth): support msaas edition for enterprise features

Add msaas to the isEnterprise check alongside ee edition to properly
display enterprise features. Use userStore.isEnterprise in SSOLogin
component instead of directly checking authDetails.edition for
consistent
enterprise status detection.

* Increment frontend chart version (#3179)

Co-authored-by: GitHub Action <action@github.com>

* feat(assist): improved caching mechanism for cluster mode (#3180)

* Increment assist chart version (#3181)

Co-authored-by: GitHub Action <action@github.com>

* ui: fix table column export

* Increment frontend chart version

* fix(auth): remove unnecessary captcha token validation (#3188)

The token validation checks were redundant as the validation is already
handled by the captcha wrapper component. This change simplifies the
password reset flow while maintaining security.

* Increment frontend chart version (#3189)

Co-authored-by: GitHub Action <action@github.com>

* ui: onboarding fixes

* ui: fixes for onboarding ui

* Increment frontend chart version

* feat(helm): add TOKEN_SECRET environment variable

Add TOKEN_SECRET environment variable to HTTP service deployment and
generate a random value for it in vars.yaml.

Signed-off-by: rjshrjndrn <rjshrjndrn@gmail.com>

* fix(GraphQL): remove unused useTranslation hook (#3200) (#3206)

Co-authored-by: PiRDub <pirddeveloppeur@gmail.com>

* Increment frontend chart version

* chore(http): remove default token_string

scripts/helmcharts/openreplay/charts/http/scripts/entrypoint.sh

Signed-off-by: rjshrjndrn <rjshrjndrn@gmail.com>

* fix(dashboard): update filter condition in MetricsList

Change the filter type comparison from checking against 'all' to
checking against an empty string. This ensures proper filtering
behavior when filtering metrics in the dashboard component.

* Increment frontend chart version

* ui: shrink icons when no space, adjust player area for events export … (#3217)

* ui: shrink icons when no space, adjust player area for events export panel, fix panel size

* ui: rm log

* Increment frontend chart version

* refactor(chalice): changed user-journey

* Increment chalice chart version

* refactor(auth): separate SSO support from enterprise edition

Add dedicated isSSOSupported property to correctly identify when SSO
authentication is available, properly handling the 'msaas' edition
case separately from enterprise edition checks. This fixes SSO
visibility in the login interface.

* Increment frontend chart version

* UI patches (28.03) (#3231)

* ui: force getting url for location in tabmanagers

* Assist add turn servers (#3229)

* fixed conflicts

* add offers

* add config to sicket query

* add config to sicket query

* add config init

* removed console logs

* removed wrong updates

* fixed conflicts

* add offers

* add config to sicket query

* add config to sicket query

* add config init

* removed console logs

* removed wrong updates

* ui: fix chat draggable, fix default params

---------

Co-authored-by: nick-delirium <nikita@openreplay.com>

* ui: fix spritemap generation for assist sessions

* ui: fix yarnlock

* fix errors

* updated widget link

* resolved conflicts

* updated widget url

---------

Co-authored-by: Andrey Babushkin <55714097+reyand43@users.noreply.github.com>
Co-authored-by: Андрей Бабушкин <andreybabushkin2000@gmail.com>

* fix(init): remove duplicate clone

Signed-off-by: rjshrjndrn <rjshrjndrn@gmail.com>

* Increment assist chart version

* Increment frontend chart version

* ui: add old devtool filters

* ui: filter keys

* Increment frontend chart version

* ui: fix modules mapper

* ui: fix modules label

* Increment frontend chart version

* ui: fix double fetches for sessions

* Increment frontend chart version

* pulled updates (#3254)

* Increment frontend chart version (#3255)

Co-authored-by: GitHub Action <action@github.com>

* Increment assist chart version (#3256)

Co-authored-by: GitHub Action <action@github.com>

* feat(chalice): added for_spot=True for authenticate_sso (#3259)

* Increment chalice chart version (#3260)

Co-authored-by: GitHub Action <action@github.com>

* Assist patch canvas (#3265)

* add agent info to assist and tracker

* removed AGENTS_CONNECTED event

* Increment frontend chart version (#3266)

Co-authored-by: GitHub Action <action@github.com>

* Increment assist chart version (#3267)

Co-authored-by: GitHub Action <action@github.com>

* resolved conflict

* removed comments

* add global method support

* fix errors

* remove wrong updates

* remove wrong updates

* add onDrag as option

---------

Signed-off-by: rjshrjndrn <rjshrjndrn@gmail.com>
Co-authored-by: Shekar Siri <sshekarsiri@gmail.com>
Co-authored-by: Mehdi Osman <estradino@users.noreply.github.com>
Co-authored-by: GitHub Action <action@github.com>
Co-authored-by: Taha Yassine Kraiem <tahayk2@gmail.com>
Co-authored-by: Alexander <zavorotynskiy@pm.me>
Co-authored-by: nick-delirium <nikita@openreplay.com>
Co-authored-by: rjshrjndrn <rjshrjndrn@gmail.com>
Co-authored-by: PiRDub <pirddeveloppeur@gmail.com>
2025-04-14 11:25:17 +02:00
rjshrjndrn
3272f5b9fd refactor(clickhouse): split server and user config
Split the ClickHouse configuration into separate ConfigMaps for server
and user configurations. This allows more granular management of the
different configuration types and proper mounting to their respective
paths.

- Created separate serverConfig and userConfig under configOverride
- Added user-default.xml under userConfig
- Updated StatefulSet to mount each ConfigMap separately

Signed-off-by: rjshrjndrn <rjshrjndrn@gmail.com>
2025-04-11 17:20:26 +02:00
rjshrjndrn
1b851a8b72 feat(clickhouse): add config override capability
Adds support for overriding ClickHouse server configurations by:
- Creating a new ConfigMap to store custom XML configurations
- Mounting the ConfigMap to ClickHouse pods under /etc/clickhouse-server/config.d
- Adding configOverride field to values.yaml with examples

Signed-off-by: rjshrjndrn <rjshrjndrn@gmail.com>
2025-04-09 16:36:04 +02:00
rjshrjndrn
3f73bae22f fix(helm): proper aws endpoint detection
Signed-off-by: rjshrjndrn <rjshrjndrn@gmail.com>
2025-04-04 23:44:08 +02:00
Alexander
cbbd480cca feat(assist-server): changed default port 2025-04-04 16:23:16 +02:00
Alexander
77ae0cac0e Revert "feat(assist): temporary changed the default assist path"
This reverts commit 5771323800.
2025-04-04 16:18:19 +02:00
Alexander
5771323800 feat(assist): temporary changed the default assist path 2025-04-04 16:13:03 +02:00
Alexander
d9ff3f4691 feat(assist-server): use the default prefix url 2025-04-04 16:08:09 +02:00
Alexander
0141a42911 feat(assist-server): fixed the helm chart 2025-04-04 15:48:31 +02:00
Alexander
c1d51b98a2
feat(assist-server): added a first part of the assist v2 (#3269) 2025-04-04 12:05:36 +02:00
rjshrjndrn
d9d4221ad3 fix(init): remove duplicate clone
Signed-off-by: rjshrjndrn <rjshrjndrn@gmail.com>
2025-03-28 21:40:58 +01:00
Taha Yassine Kraiem
8fbaf25799 feat(DB): use incremental&refreshable materialized views to fill extra tables 2025-03-27 14:18:08 +01:00
Taha Yassine Kraiem
bb17f672fe feat(DB): use incremental&refreshable materialized views to fill extra tables 2025-03-26 13:27:42 +01:00
Taha Yassine Kraiem
0500f30d14 feat(DB): use incremental materialized views to fill extra tables
refactor(chalice): changed product analytics
2025-03-25 17:44:31 +01:00
Taha Yassine Kraiem
ec2c42c688 refactor(DB): changed product analytics DB structure 2025-03-25 17:44:31 +01:00
rjshrjndrn
187a69a61a fix(assist): ingress session id
Signed-off-by: rjshrjndrn <rjshrjndrn@gmail.com>
2025-03-25 11:26:40 +01:00
rjshrjndrn
2e96a072e9 chore(http): remove default token_string
scripts/helmcharts/openreplay/charts/http/scripts/entrypoint.sh

Signed-off-by: rjshrjndrn <rjshrjndrn@gmail.com>
2025-03-24 19:33:49 +01:00
rjshrjndrn
664f6b9014 feat(helm): add TOKEN_SECRET environment variable
Add TOKEN_SECRET environment variable to HTTP service deployment and
generate a random value for it in vars.yaml.

Signed-off-by: rjshrjndrn <rjshrjndrn@gmail.com>
2025-03-24 16:53:06 +01:00
Andrey Babushkin
a8e47e59ad
Update batch writer (#3198)
* fix(helm): add CORS config to Assist ingress

Configure CORS headers and debug session information for the Assist
service's ingress to ensure proper cross-origin requests handling and
improved debugging capabilities.

Signed-off-by: rjshrjndrn <rjshrjndrn@gmail.com>

* add timestamp to prepare method

---------

Signed-off-by: rjshrjndrn <rjshrjndrn@gmail.com>
Co-authored-by: rjshrjndrn <rjshrjndrn@gmail.com>
2025-03-24 12:42:05 +01:00
rjshrjndrn
e6eb41536d fix(helm): improve session routing and CORS handling
- Add http-snippet with map function to extract sessionID from peerId
- Update ingress annotations for Assist chart
- Add proper CORS headers to support cross-origin requests
- Remove debugging headers that were previously enabled

Signed-off-by: rjshrjndrn <rjshrjndrn@gmail.com>
2025-03-22 20:10:52 +01:00
rjshrjndrn
0e45fa53ad fix(helm): add CORS config to Assist ingress
Configure CORS headers and debug session information for the Assist
service's ingress to ensure proper cross-origin requests handling and
improved debugging capabilities.

Signed-off-by: rjshrjndrn <rjshrjndrn@gmail.com>
2025-03-21 16:06:41 +01:00
rjshrjndrn
d04e6686ca fix(helm): add CORS config to Assist ingress
Configure CORS headers and debug session information for the Assist
service's ingress to ensure proper cross-origin requests handling and
improved debugging capabilities.

Signed-off-by: rjshrjndrn <rjshrjndrn@gmail.com>
2025-03-21 15:50:15 +01:00
Taha Yassine Kraiem
3d448320bf refactor(DB): changed DB structure for product analytics 2025-03-20 17:13:17 +01:00
Taha Yassine Kraiem
988b396223 refactor(chalice): moved CH sessions-search to FOSS
refactor(DB): changed DB structures for CH sessions-search in FOSS
refactor(DB): preparing for v1.23.0
2025-03-20 17:13:17 +01:00
rjshrjndrn
8e68eb9a20 feat(assist): enhance WebSocket session persistence
Add session extraction from peerId parameter for better WebSocket
connection stability. This improves assist session routing by:

- Extracting sessionID from peerId parameter using regex
- Setting upstream hash-by to use the extracted session ID
- Adding debug headers to monitor session routing

TODO: Convert this to map

Signed-off-by: rjshrjndrn <rjshrjndrn@gmail.com>
2025-03-20 12:38:36 +01:00