Skip to content

Commit 9f15f86

Browse files
authored
Merge pull request #2263 from RedisInsight/release/2.28.0
Release/2.28.0 to latest
2 parents 4fd3b0a + af745ce commit 9f15f86

File tree

357 files changed

+8441
-6953
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

357 files changed

+8441
-6953
lines changed

.circleci/config.yml

Lines changed: 15 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -183,7 +183,7 @@ jobs:
183183
# Test jobs
184184
unit-tests-ui:
185185
docker:
186-
- image: cimg/node:16.15.1
186+
- image: cimg/node:18.15.0
187187
steps:
188188
- checkout
189189
- restore_cache:
@@ -227,7 +227,7 @@ jobs:
227227
- ./node_modules
228228
unit-tests-api:
229229
docker:
230-
- image: cimg/node:16.15.1
230+
- image: cimg/node:18.15.0
231231
steps:
232232
- checkout
233233
- restore_cache:
@@ -345,6 +345,8 @@ jobs:
345345
parallelism: << parameters.parallelism >>
346346
steps:
347347
- checkout
348+
- node/install:
349+
node-version: '18.15.0'
348350
- attach_workspace:
349351
at: .
350352
- run: sudo apt-get install net-tools
@@ -385,7 +387,7 @@ jobs:
385387
- checkout
386388
- attach_workspace:
387389
at: .
388-
- run: choco install nodejs --version=16.15.1
390+
- run: choco install nodejs --version=18.15.0
389391
- run:
390392
command: |
391393
cd tests/e2e && export TEST_FILES=$(circleci tests glob "tests/**/*.e2e.ts" | circleci tests split --split-by=timings) && cd ../..
@@ -534,7 +536,7 @@ jobs:
534536
steps:
535537
- checkout
536538
- node/install:
537-
node-version: '16.15.1'
539+
node-version: '18.15.0'
538540
- attach_workspace:
539541
at: .
540542
- run:
@@ -599,7 +601,7 @@ jobs:
599601
- release/redisstack
600602
macosx:
601603
macos:
602-
xcode: 14.3.0
604+
xcode: 14.2.0
603605
resource_class: macos.x86.medium.gen2
604606
parameters:
605607
env:
@@ -610,7 +612,7 @@ jobs:
610612
steps:
611613
- checkout
612614
- node/install:
613-
node-version: '16.15.1'
615+
node-version: '18.15.0'
614616
- attach_workspace:
615617
at: .
616618
- run:
@@ -684,7 +686,7 @@ jobs:
684686
- run:
685687
name: Build windows exe
686688
command: |
687-
choco install nodejs --version=16.15.1
689+
choco install nodejs --version=18.15.0
688690
# set ALL_REDIS_COMMANDS=$(curl $ALL_REDIS_COMMANDS_RAW_URL)
689691
yarn install
690692
yarn --cwd redisinsight/api/ install
@@ -1179,6 +1181,12 @@ workflows:
11791181
- windows:
11801182
name: Build app - Windows (stage)
11811183
requires: *stageElectronBuildRequires
1184+
# e2e desktop tests on AppImage build
1185+
- e2e-app-image:
1186+
name: E2ETest (AppImage)
1187+
parallelism: 2
1188+
requires:
1189+
- Build app - Linux (stage)
11821190
# release to AWS (stage)
11831191
- release-aws-test:
11841192
name: Release AWS stage

.circleci/e2e/test.app-image.sh

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,16 @@ yarn --cwd tests/e2e install
66
# mount app resources
77
./release/*.AppImage --appimage-mount >> apppath &
88

9+
# create folder before tests run to prevent permissions issue
10+
mkdir -p tests/e2e/remote
11+
912
# run rte
1013
docker-compose -f tests/e2e/rte.docker-compose.yml build
1114
docker-compose -f tests/e2e/rte.docker-compose.yml up --force-recreate -d -V
1215
./tests/e2e/wait-for-redis.sh localhost 12000 && \
1316

1417
# run tests
15-
COMMON_URL=$(tail -n 1 apppath)/resources/app.asar/index.html \
18+
COMMON_URL=$(tail -n 1 apppath)/resources/app.asar/dist/renderer/index.html \
1619
ELECTRON_PATH=$(tail -n 1 apppath)/redisinsight \
1720
SOCKETS_CORS=true \
1821
yarn --cwd tests/e2e dotenv -e .desktop.env yarn --cwd tests/e2e test:desktop:ci

.circleci/e2e/test.exe.cmd

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
@echo off
22

3-
set COMMON_URL=%USERPROFILE%/AppData/Local/Programs/redisinsight/resources/app.asar/index.html
4-
set ELECTRON_PATH=%USERPROFILE%/AppData/Local/Programs/redisinsight/RedisInsight-preview.exe
3+
set COMMON_URL=%USERPROFILE%/AppData/Local/Programs/redisinsight/resources/app.asar/dist/renderer/index.html
4+
set ELECTRON_PATH=%USERPROFILE%/AppData/Local/Programs/redisinsight/RedisInsight-v2.exe
55
set OSS_STANDALONE_HOST=%E2E_CLOUD_DATABASE_HOST%
66
set OSS_STANDALONE_PORT=%E2E_CLOUD_DATABASE_PORT%
77
set OSS_STANDALONE_USERNAME=%E2E_CLOUD_DATABASE_USERNAME%

.eslintrc.js

Lines changed: 48 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,63 @@
11
module.exports = {
22
root: true,
3+
env: {
4+
node: true,
5+
},
36
extends: ['airbnb-typescript'],
47
plugins: ['@typescript-eslint'],
58
parser: '@typescript-eslint/parser',
69
rules: {
7-
'max-len': ['warn', 120],
10+
semi: ['error', 'never'],
11+
quotes: [2, 'single', { avoidEscape: true }],
12+
'max-len': ['error', { ignoreComments: true, ignoreStrings: true, ignoreRegExpLiterals: true, code: 120 }],
813
'class-methods-use-this': 'off',
914
'import/no-extraneous-dependencies': 'off', // temporary disabled
15+
'@typescript-eslint/semi': ['error', 'never'],
16+
'object-curly-newline': 'off',
17+
'import/prefer-default-export': 'off',
18+
'@typescript-eslint/comma-dangle': 'off',
19+
'implicit-arrow-linebreak': 'off',
20+
'import/order': [
21+
1,
22+
{
23+
groups: [
24+
'external',
25+
'builtin',
26+
'internal',
27+
'sibling',
28+
'parent',
29+
'index',
30+
],
31+
pathGroups: [
32+
{
33+
pattern: 'desktopSrc/**',
34+
group: 'internal',
35+
position: 'after'
36+
},
37+
{
38+
pattern: 'uiSrc/**',
39+
group: 'internal',
40+
position: 'after'
41+
},
42+
{
43+
pattern: 'apiSrc/**',
44+
group: 'internal',
45+
position: 'after'
46+
},
47+
],
48+
warnOnUnassignedImports: true,
49+
pathGroupsExcludedImportTypes: ['builtin']
50+
},
51+
],
1052
},
1153
parserOptions: {
1254
project: './tsconfig.json',
55+
ecmaVersion: 2020,
56+
sourceType: 'module',
57+
createDefaultProgram: true,
1358
},
1459
ignorePatterns: [
1560
'redisinsight/ui',
61+
'redisinsight/api',
1662
],
17-
};
63+
}

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,9 @@ dll
5656
main.js
5757
main.js.map
5858
vendor
59+
redisinsight/main.js.LICENSE.txt
60+
redisinsight/main.prod.js.LICENSE.txt
61+
5962

6063
# E2E tests report
6164
/tests/e2e/report

Dockerfile

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM node:16.15.1-alpine as front
1+
FROM node:18.15.0-alpine as front
22
RUN apk update
33
RUN apk add --no-cache --virtual .gyp \
44
python3 \
@@ -20,7 +20,7 @@ ENV SEGMENT_WRITE_KEY=${SEGMENT_WRITE_KEY}
2020
RUN yarn build:web
2121
RUN yarn build:statics
2222

23-
FROM node:16.15.1-alpine as back
23+
FROM node:18.15.0-alpine as back
2424
WORKDIR /usr/src/app
2525
COPY redisinsight/api/package.json redisinsight/api/yarn.lock ./
2626
RUN yarn install
@@ -29,7 +29,7 @@ COPY --from=front /usr/src/app/redisinsight/api/static ./static
2929
COPY --from=front /usr/src/app/redisinsight/api/defaults ./defaults
3030
RUN yarn run build:prod
3131

32-
FROM node:16.15.1-slim
32+
FROM node:18.15.0-slim
3333
# Set up mDNS functionality, to play well with Redis Enterprise
3434
# clusters on the network.
3535
RUN set -ex \

api.Dockerfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM node:16.15.1-alpine as build
1+
FROM node:18.15.0-alpine as build
22

33
RUN apk update && apk add bash libsecret dbus-x11 gnome-keyring
44
RUN dbus-uuidgen > /var/lib/dbus/machine-id
@@ -19,7 +19,7 @@ RUN yarn install --production
1919
RUN cp .yarnclean.prod .yarnclean && yarn autoclean --force
2020

2121
# Production image
22-
FROM node:16.15.1-alpine as production
22+
FROM node:18.15.0-alpine as production
2323

2424
RUN apk update && apk add bash libsecret dbus-x11 gnome-keyring
2525
RUN dbus-uuidgen > /var/lib/dbus/machine-id

configs/paths.js

Lines changed: 0 additions & 17 deletions
This file was deleted.

configs/webpack.config.base.js renamed to configs/webpack.config.base.ts

Lines changed: 15 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,13 @@
1-
import path from 'path';
21
import webpack from 'webpack';
3-
import TsconfigPathsPlugin from 'tsconfig-paths-webpack-plugin';
2+
import TsconfigPathsPlugins from 'tsconfig-paths-webpack-plugin';
3+
import webpackPaths from './webpack.paths';
44
import { dependencies as externals } from '../redisinsight/package.json';
55

6-
export default {
6+
const configuration: webpack.Configuration = {
77
externals: [...Object.keys(externals || {})],
88

9+
stats: 'errors-only',
10+
911
module: {
1012
rules: [
1113
{
@@ -22,28 +24,22 @@ export default {
2224
},
2325

2426
output: {
25-
path: path.join(__dirname, '..'),
26-
// commonjs2 https://github.com/webpack/webpack/issues/1114
27-
libraryTarget: 'commonjs2',
27+
path: webpackPaths.riPath,
28+
// https://github.com/webpack/webpack/issues/1114
29+
library: {
30+
type: 'commonjs2',
31+
},
2832
},
2933

3034
resolve: {
3135
extensions: ['.js', '.jsx', '.json', '.ts', '.tsx', '.scss'],
32-
plugins: [
33-
new TsconfigPathsPlugin({
34-
configFile: path.join(__dirname, '..', 'tsconfig.json'),
35-
}),
36-
],
37-
alias: {
38-
src: path.resolve(__dirname, '../redisinsight/api/src'),
39-
apiSrc: path.resolve(__dirname, '../redisinsight/api/src'),
40-
uiSrc: path.resolve(__dirname, '../redisinsight/ui/src'),
41-
},
42-
modules: [path.join(__dirname, '../redisinsight/api'), 'node_modules'],
36+
modules: [webpackPaths.apiPath, 'node_modules'],
37+
plugins: [new TsconfigPathsPlugins()],
4338
},
4439

4540
plugins: [
4641
new webpack.EnvironmentPlugin({
42+
NODE_ENV: 'production',
4743
}),
4844

4945
new webpack.IgnorePlugin({
@@ -81,3 +77,5 @@ export default {
8177
}),
8278
],
8379
};
80+
81+
export default configuration;

configs/webpack.config.eslint.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,4 @@
22
/* eslint import/no-unresolved: off, import/no-self-import: off */
33
require('@babel/register');
44

5-
module.exports = require('./webpack.config.renderer.dev.babel').default;
5+
module.exports = require('./webpack.config.renderer.dev').default;

0 commit comments

Comments
 (0)