Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 5947991

Browse files
Adrinlolvitabaks
authored andcommitted
feat(ui): update Generic Postgres tag, use same JSON structure as se-images https://gitlab.com/postgres-ai/database-lab/-/issues/544#note_1544266933
1 parent 4097da3 commit 5947991

File tree

2 files changed

+91
-26
lines changed

2 files changed

+91
-26
lines changed

‎ui/packages/shared/pages/Configuration/index.tsx‎

Lines changed: 35 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -449,27 +449,30 @@ export const Configuration = observer(
449449
e: React.ChangeEvent<HTMLInputElement>,
450450
) => {
451451
if (e.target.value === 'Generic Postgres') {
452-
const currentDockerImage =
453-
genericDockerImages[genericDockerImages.length - 1]
452+
const genericImageVersions = genericDockerImages
453+
.map((image) => image.pg_major_version)
454+
.filter((value, index, self) => self.indexOf(value) === index)
455+
.sort((a, b) => Number(a) - Number(b))
456+
const currentDockerImage = genericImageVersions.slice(-1)[0]
457+
454458
setDockerState({
455459
...dockerState,
456-
images: genericDockerImages.map((image) => image.pg_major_version),
457460
tags: genericDockerImages
458-
.filter((image) =>
459-
image.tag.startsWith(currentDockerImage.pg_major_version),
460-
)
461-
.map((image) => image.tag),
461+
.map((image) => image.tag)
462+
.filter((tag) => tag.startsWith(currentDockerImage)),
463+
locations: genericDockerImages
464+
.map((image) => image.location)
465+
.filter((location) => location?.includes(currentDockerImage)),
466+
images: genericImageVersions,
462467
data: genericDockerImages,
463468
})
464469

465470
formik.setValues({
466471
...formik.values,
467-
dockerImage: currentDockerImage.pg_major_version,
468-
dockerPath: currentDockerImage.location,
472+
dockerImage: currentDockerImage,
469473
dockerImageType: e.target.value,
470-
dockerTag: genericDockerImages.filter((image) =>
471-
image.tag.startsWith(currentDockerImage.pg_major_version),
472-
)[0].tag,
474+
dockerTag: genericDockerImages.map((image) => image.tag)[0],
475+
dockerPath: genericDockerImages.map((image) => image.location)[0],
473476
sharedPreloadLibraries:
474477
'pg_stat_statements,pg_stat_kcache,pg_cron,pgaudit,anon',
475478
})
@@ -542,27 +545,33 @@ export const Configuration = observer(
542545

543546
if (customOrGenericImage(configData?.dockerImageType)) {
544547
if (configData?.dockerImageType === 'Generic Postgres') {
545-
const dockerObject = genericDockerImages.filter(
546-
(image) => image.location === configData.dockerPath,
547-
)[0]
548+
const genericImageVersions = genericDockerImages
549+
.map((image) => image.pg_major_version)
550+
.filter((value, index, self) => self.indexOf(value) === index)
551+
.sort((a, b) => Number(a) - Number(b))
552+
const currentDockerImage =
553+
genericDockerImages.filter(
554+
(image) => image.location === configData?.dockerPath,
555+
)[0] ||
556+
genericDockerImages.filter((image) =>
557+
configData?.dockerPath?.includes(image.pg_major_version),
558+
)[0]
548559

549560
setDockerState({
550561
...dockerState,
551-
images: genericDockerImages.map(
552-
(image) => image.pg_major_version,
553-
),
554562
tags: genericDockerImages
555-
.filter((image) =>
556-
image.tag.startsWith(dockerObject?.pg_major_version),
557-
)
558-
.map((image) => image.tag),
563+
.map((image) => image.tag)
564+
.filter((tag) =>
565+
tag.startsWith(currentDockerImage.pg_major_version),
566+
),
567+
images: genericImageVersions,
559568
data: genericDockerImages,
560569
})
561570

562-
formik.setFieldValue('dockerTag', dockerObject?.tag)
571+
formik.setFieldValue('dockerTag', currentDockerImage?.tag)
563572
formik.setFieldValue(
564573
'dockerImage',
565-
dockerObject?.pg_major_version,
574+
currentDockerImage.pg_major_version,
566575
)
567576
} else {
568577
formik.setFieldValue('dockerImage', configData?.dockerPath)
@@ -812,8 +821,8 @@ export const Configuration = observer(
812821
className={classes.grayText}
813822
style={{ margin: '0.5rem 0 1rem 0', display: 'block' }}
814823
>
815-
DBLab manages various database containers, such as clones. This
816-
section defines default container settings.
824+
DBLab manages various database containers, such as clones.
825+
This section defines default container settings.
817826
</span>
818827
<div>
819828
<SelectWithTooltip

‎ui/packages/shared/pages/Configuration/utils/index.ts‎

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,49 +39,105 @@ export const postUniqueDatabases = (values: string) => {
3939
return values.length !== 0 ? nonEmptyDatabase : null
4040
}
4141

42+
43+
// using the same json data structue as se-images
4244
export const genericDockerImages = [
45+
{
46+
package_group: 'postgresai',
47+
pg_major_version: '9.6',
48+
tag: '9.6-0.4.1',
49+
location: `${genericImagePrefix}:9.6-0.4.1`,
50+
},
4351
{
4452
package_group: 'postgresai',
4553
pg_major_version: '9.6',
4654
tag: '9.6-0.3.0',
4755
location: `${genericImagePrefix}:9.6-0.3.0`,
4856
},
57+
{
58+
package_group: 'postgresai',
59+
pg_major_version: '10',
60+
tag: '10-0.4.1',
61+
location: `${genericImagePrefix}:10-0.4.1`,
62+
},
4963
{
5064
package_group: 'postgresai',
5165
pg_major_version: '10',
5266
tag: '10-0.3.0',
5367
location: `${genericImagePrefix}:10-0.3.0`,
5468
},
69+
{
70+
package_group: 'postgresai',
71+
pg_major_version: '11',
72+
tag: '11-0.4.1',
73+
location: `${genericImagePrefix}:11-0.4.1`,
74+
},
5575
{
5676
package_group: 'postgresai',
5777
pg_major_version: '11',
5878
tag: '11-0.3.0',
5979
location: `${genericImagePrefix}:11-0.3.0`,
6080
},
81+
{
82+
package_group: 'postgresai',
83+
pg_major_version: '12',
84+
tag: '12-0.4.1',
85+
location: `${genericImagePrefix}:12-0.4.1`,
86+
},
6187
{
6288
package_group: 'postgresai',
6389
pg_major_version: '12',
6490
tag: '12-0.3.0',
6591
location: `${genericImagePrefix}:12-0.3.0`,
6692
},
93+
{
94+
package_group: 'postgresai',
95+
pg_major_version: '13',
96+
tag: '13-0.4.1',
97+
location: `${genericImagePrefix}:13-0.4.1`,
98+
},
6799
{
68100
package_group: 'postgresai',
69101
pg_major_version: '13',
70102
tag: '13-0.3.0',
71103
location: `${genericImagePrefix}:13-0.3.0`,
72104
},
105+
{
106+
package_group: 'postgresai',
107+
pg_major_version: '14',
108+
tag: '14-0.4.1',
109+
location: `${genericImagePrefix}:14-0.4.1`,
110+
},
73111
{
74112
package_group: 'postgresai',
75113
pg_major_version: '14',
76114
tag: '14-0.3.0',
77115
location: `${genericImagePrefix}:14-0.3.0`,
78116
},
117+
{
118+
package_group: 'postgresai',
119+
pg_major_version: '15',
120+
tag: '15-0.4.1',
121+
location: `${genericImagePrefix}:15-0.4.1`,
122+
},
79123
{
80124
package_group: 'postgresai',
81125
pg_major_version: '15',
82126
tag: '15-0.3.0',
83127
location: `${genericImagePrefix}:15-0.3.0`,
84128
},
129+
{
130+
package_group: 'postgresai',
131+
pg_major_version: '16',
132+
tag: '16rc1-0.4.1',
133+
location: `${genericImagePrefix}:16rc1-0.4.1`,
134+
},
135+
{
136+
package_group: 'postgresai',
137+
pg_major_version: '16',
138+
tag: '16-0.3.0',
139+
location: `${genericImagePrefix}:16-0.3.0`,
140+
},
85141
]
86142

87143
export const isSeDockerImage = (dockerImage: string | undefined) => {

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /