Skip to content

Commit 2026f0d

Browse files
committed
feat(cert): improve certificate renewal and logging #896
1 parent 6c7edf5 commit 2026f0d

File tree

18 files changed

+528
-468
lines changed

18 files changed

+528
-468
lines changed

api/certificate/issue.go

Lines changed: 13 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -96,8 +96,6 @@ func IssueCert(c *gin.Context) {
9696
log := &cert.Logger{}
9797
log.SetCertModel(&certModel)
9898

99-
payload.CertID = certModel.ID
100-
10199
go cert.IssueCert(payload, logChan, errChan)
102100

103101
go handleIssueCertLogChan(ws, log, logChan)
@@ -115,23 +113,24 @@ func IssueCert(c *gin.Context) {
115113
logger.Error(err)
116114
return
117115
}
118-
return
116+
return
119117
}
120118

121119
cert := query.Cert
122120

123121
_, err = cert.Where(cert.Name.Eq(name), cert.Filename.Eq(name), cert.KeyType.Eq(string(payload.KeyType))).
124-
Assign(field.Attrs(&model.Cert{
125-
Domains: payload.ServerName,
126-
SSLCertificatePath: payload.GetCertificatePath(),
127-
SSLCertificateKeyPath: payload.GetCertificateKeyPath(),
128-
AutoCert: model.AutoCertEnabled,
129-
ChallengeMethod: payload.ChallengeMethod,
130-
DnsCredentialID: payload.DNSCredentialID,
131-
Resource: payload.Resource,
132-
MustStaple: payload.MustStaple,
133-
LegoDisableCNAMESupport: payload.LegoDisableCNAMESupport,
134-
})).FirstOrCreate()
122+
Assign(field.Attrs(&model.Cert{
123+
Domains: payload.ServerName,
124+
SSLCertificatePath: payload.GetCertificatePath(),
125+
SSLCertificateKeyPath: payload.GetCertificateKeyPath(),
126+
AutoCert: model.AutoCertEnabled,
127+
ChallengeMethod: payload.ChallengeMethod,
128+
DnsCredentialID: payload.DNSCredentialID,
129+
Resource: payload.Resource,
130+
MustStaple: payload.MustStaple,
131+
LegoDisableCNAMESupport: payload.LegoDisableCNAMESupport,
132+
Log: log.ToString(),
133+
})).FirstOrCreate()
135134
if err != nil {
136135
logger.Error(err)
137136
_ = ws.WriteJSON(IssueCertResponse{

app/src/components/Notification/detailRender.tsx

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,19 +8,19 @@ export function detailRender(args: CustomRender) {
88
<div>
99
<div class="mb-2">
1010
{
11-
notifications[args.record.title].content(args.record.details)
11+
notifications[args.record.title]?.content(args.record.details)
12+
|| args.record.content || args.record.details
1213
}
1314
</div>
14-
{args.record.type !== NotificationTypeT.Success && (
15+
{args.record.details?.response && args.record.type !== NotificationTypeT.Success && (
1516
<div>
1617
{ JSON.stringify(args.record.details.response) }
1718
</div>
1819
)}
1920
</div>
2021
)
2122
}
22-
// eslint-disable-next-line sonarjs/no-ignored-exceptions,unused-imports/no-unused-vars
23-
catch (e) {
23+
catch {
2424
return args.text
2525
}
2626
}

app/src/language/ar/app.po

Lines changed: 42 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ msgstr "أضف مفتاح مرور"
6767
msgid "Add Configuration"
6868
msgstr "إضافة تكوين"
6969

70-
#: src/views/site/ngx_conf/directive/DirectiveAdd.vue:117
70+
#: src/views/site/ngx_conf/directive/DirectiveAdd.vue:119
7171
msgid "Add Directive Below"
7272
msgstr "أضف التوجيه أدناه"
7373

@@ -107,7 +107,7 @@ msgid "All"
107107
msgstr "الكل"
108108

109109
#: src/components/Notification/notifications.ts:121
110-
#: src/language/constants.ts:57
110+
#: src/language/constants.ts:58
111111
msgid "All Recovery Codes Have Been Used"
112112
msgstr ""
113113

@@ -381,6 +381,11 @@ msgstr "خطأ في مزامنة الشهادة"
381381
msgid "Certificate Renewal Interval"
382382
msgstr "الفاصل الزمني لتجديد الشهادة"
383383

384+
#: src/language/constants.ts:21
385+
#, fuzzy
386+
msgid "Certificate renewed successfully"
387+
msgstr "تم المسح بنجاح"
388+
384389
#: src/views/certificate/CertificateEditor.vue:128
385390
#: src/views/site/cert/Cert.vue:33
386391
msgid "Certificate Status"
@@ -640,11 +645,11 @@ msgstr "حذف"
640645
msgid "Delete Permanently"
641646
msgstr "حذف نهائي"
642647

643-
#: src/components/Notification/notifications.ts:37 src/language/constants.ts:49
648+
#: src/components/Notification/notifications.ts:37 src/language/constants.ts:50
644649
msgid "Delete Remote Site Error"
645650
msgstr "خطأ حذف الموقع البعيد"
646651

647-
#: src/components/Notification/notifications.ts:41 src/language/constants.ts:48
652+
#: src/components/Notification/notifications.ts:41 src/language/constants.ts:49
648653
msgid "Delete Remote Site Success"
649654
msgstr "نجح حذف الموقع البعيد"
650655

@@ -740,11 +745,11 @@ msgstr "تعطيل"
740745
msgid "Disable auto-renewal failed for %{name}"
741746
msgstr "فشل تعطيل التجديد التلقائي لـ {name}%"
742747

743-
#: src/components/Notification/notifications.ts:45 src/language/constants.ts:51
748+
#: src/components/Notification/notifications.ts:45 src/language/constants.ts:52
744749
msgid "Disable Remote Site Error"
745750
msgstr "خطأ في تعطيل الموقع البعيد"
746751

747-
#: src/components/Notification/notifications.ts:49 src/language/constants.ts:50
752+
#: src/components/Notification/notifications.ts:49 src/language/constants.ts:51
748753
msgid "Disable Remote Site Success"
749754
msgstr "تعطيل الموقع البعيد بنجاح"
750755

@@ -871,11 +876,11 @@ msgstr "تم إنشاء تكوين النطاق بنجاح"
871876
msgid "Domains list is empty, try to reopen Auto Cert for %{config}"
872877
msgstr "قائمة النطاقات فارغة، حاول إعادة فتح Auto Cert لـ %{config}"
873878

874-
#: src/language/constants.ts:26
879+
#: src/language/constants.ts:27
875880
msgid "Download latest release error"
876881
msgstr "خطأ في تنزيل الإصدار الأخير"
877882

878-
#: src/language/constants.ts:25
883+
#: src/language/constants.ts:26
879884
msgid "Downloading latest release"
880885
msgstr "تنزيل الإصدار الأحدث"
881886

@@ -950,11 +955,11 @@ msgstr "فشل تفعيل التجديد التلقائي لـ %{name}"
950955
msgid "Enable failed"
951956
msgstr "فشل التفعيل"
952957

953-
#: src/components/Notification/notifications.ts:53 src/language/constants.ts:53
958+
#: src/components/Notification/notifications.ts:53 src/language/constants.ts:54
954959
msgid "Enable Remote Site Error"
955960
msgstr "خطأ في تفعيل الموقع البعيد"
956961

957-
#: src/components/Notification/notifications.ts:57 src/language/constants.ts:52
962+
#: src/components/Notification/notifications.ts:57 src/language/constants.ts:53
958963
msgid "Enable Remote Site Success"
959964
msgstr "نجح تفعيل الموقع البعيد"
960965

@@ -1020,7 +1025,7 @@ msgstr "تم التفعيل بنجاح"
10201025
msgid "Encrypt website with Let's Encrypt"
10211026
msgstr "تشفير الموقع باستخدام Let's Encrypt"
10221027

1023-
#: src/language/constants.ts:21
1028+
#: src/language/constants.ts:22
10241029
msgid "Environment variables cleaned"
10251030
msgstr "تم تنظيف متغيرات البيئة"
10261031

@@ -1096,7 +1101,7 @@ msgstr "فشل في التفعيل %{msg}"
10961101
msgid "Failed to save, syntax error(s) was detected in the configuration."
10971102
msgstr "فشل في الحفظ، تم اكتشاف خطأ(أخطاء) في بناء الجملة في التكوين."
10981103

1099-
#: src/language/constants.ts:31
1104+
#: src/language/constants.ts:32
11001105
msgid "File exists"
11011106
msgstr "الملف موجود"
11021107

@@ -1252,11 +1257,11 @@ msgstr "استيراد شهادة"
12521257
msgid "Info"
12531258
msgstr "معلومات"
12541259

1255-
#: src/language/constants.ts:24
1260+
#: src/language/constants.ts:25
12561261
msgid "Initial core upgrader error"
12571262
msgstr "خطأ في ترقية النواة الأولية"
12581263

1259-
#: src/language/constants.ts:23
1264+
#: src/language/constants.ts:24
12601265
msgid "Initialing core upgrader"
12611266
msgstr "بدء ترقية النواة"
12621267

@@ -1426,7 +1431,7 @@ msgstr "أماكن"
14261431
msgid "Log"
14271432
msgstr "سجل"
14281433

1429-
#: src/routes/index.ts:318 src/views/other/Login.vue:223
1434+
#: src/routes/index.ts:318 src/views/other/Login.vue:222
14301435
msgid "Login"
14311436
msgstr "تسجيل الدخول"
14321437

@@ -1787,7 +1792,7 @@ msgstr "متصل"
17871792
msgid "OpenAI"
17881793
msgstr "أوبن أي آي"
17891794

1790-
#: src/components/TwoFA/Authorization.vue:100 src/views/other/Login.vue:232
1795+
#: src/components/TwoFA/Authorization.vue:100 src/views/other/Login.vue:231
17911796
msgid "Or"
17921797
msgstr "أو"
17931798

@@ -1873,11 +1878,11 @@ msgstr ""
18731878
msgid "Perform"
18741879
msgstr "نفذ"
18751880

1876-
#: src/language/constants.ts:28
1881+
#: src/language/constants.ts:29
18771882
msgid "Perform core upgrade error"
18781883
msgstr "خطأ في تنفيذ ترقية النواة"
18791884

1880-
#: src/language/constants.ts:27
1885+
#: src/language/constants.ts:28
18811886
msgid "Performing core upgrade"
18821887
msgstr "تنفيذ ترقية النواة"
18831888

@@ -1915,7 +1920,7 @@ msgstr ""
19151920
"أحد بيانات الاعتماد أدناه لطلب API لمزود DNS."
19161921

19171922
#: src/components/Notification/notifications.ts:122
1918-
#: src/language/constants.ts:58
1923+
#: src/language/constants.ts:59
19191924
msgid ""
19201925
"Please generate new recovery codes in the preferences immediately to prevent "
19211926
"lockout."
@@ -2133,19 +2138,19 @@ msgstr "تم إعادة تسمية %{orig_path} إلى %{new_path} على %{env_
21332138
msgid "Rename %{orig_path} to %{new_path} on %{env_name} successfully"
21342139
msgstr "تم إعادة تسمية %{orig_path} إلى %{new_path} على %{env_name} بنجاح"
21352140

2136-
#: src/components/Notification/notifications.ts:27 src/language/constants.ts:41
2141+
#: src/components/Notification/notifications.ts:27 src/language/constants.ts:42
21372142
msgid "Rename Remote Config Error"
21382143
msgstr "خطأ في إعادة تسمية التكوين البعيد"
21392144

2140-
#: src/components/Notification/notifications.ts:31 src/language/constants.ts:40
2145+
#: src/components/Notification/notifications.ts:31 src/language/constants.ts:41
21412146
msgid "Rename Remote Config Success"
21422147
msgstr "إعادة تسمية تكوين البعيد بنجاح"
21432148

2144-
#: src/components/Notification/notifications.ts:61 src/language/constants.ts:55
2149+
#: src/components/Notification/notifications.ts:61 src/language/constants.ts:56
21452150
msgid "Rename Remote Site Error"
21462151
msgstr "خطأ في إعادة تسمية الموقع البعيد"
21472152

2148-
#: src/components/Notification/notifications.ts:65 src/language/constants.ts:54
2153+
#: src/components/Notification/notifications.ts:65 src/language/constants.ts:55
21492154
msgid "Rename Remote Site Success"
21502155
msgstr "تم إعادة تسمية الموقع البعيد بنجاح"
21512156

@@ -2194,11 +2199,11 @@ msgstr "تمت إعادة التسمية بنجاح"
21942199
msgid "Renew Certificate"
21952200
msgstr "تجديد الشهادة"
21962201

2197-
#: src/language/constants.ts:35
2202+
#: src/language/constants.ts:36
21982203
msgid "Renew Certificate Error"
21992204
msgstr "خطأ في تجديد الشهادة"
22002205

2201-
#: src/language/constants.ts:34
2206+
#: src/language/constants.ts:35
22022207
msgid "Renew Certificate Success"
22032208
msgstr "تجديد الشهادة بنجاح"
22042209

@@ -2211,7 +2216,7 @@ msgstr "تم التجديد بنجاح"
22112216
msgid "Request timeout"
22122217
msgstr ""
22132218

2214-
#: src/language/constants.ts:32
2219+
#: src/language/constants.ts:33
22152220
msgid "Requested with wrong parameters"
22162221
msgstr "تم الطلب باستخدام عوامل خاطئة"
22172222

@@ -2267,7 +2272,7 @@ msgstr "يعمل"
22672272
msgid "Save"
22682273
msgstr "حفظ"
22692274

2270-
#: src/views/site/ngx_conf/directive/DirectiveAdd.vue:127
2275+
#: src/views/site/ngx_conf/directive/DirectiveAdd.vue:129
22712276
msgid "Save Directive"
22722277
msgstr "حفظ التوجيه"
22732278

@@ -2277,11 +2282,11 @@ msgstr "حفظ التوجيه"
22772282
msgid "Save error %{msg}"
22782283
msgstr "خطأ في الحفظ %{msg}"
22792284

2280-
#: src/components/Notification/notifications.ts:69 src/language/constants.ts:47
2285+
#: src/components/Notification/notifications.ts:69 src/language/constants.ts:48
22812286
msgid "Save Remote Site Error"
22822287
msgstr "خطأ في حفظ الموقع البعيد"
22832288

2284-
#: src/components/Notification/notifications.ts:73 src/language/constants.ts:46
2289+
#: src/components/Notification/notifications.ts:73 src/language/constants.ts:47
22852290
msgid "Save Remote Site Success"
22862291
msgstr "حفظ الموقع البعيد بنجاح"
22872292

@@ -2411,7 +2416,7 @@ msgstr ""
24112416
msgid "Show"
24122417
msgstr "عرض"
24132418

2414-
#: src/views/other/Login.vue:241
2419+
#: src/views/other/Login.vue:240
24152420
msgid "Sign in with a passkey"
24162421
msgstr "تسجيل الدخول باستخدام مفتاح المرور"
24172422

@@ -2472,7 +2477,7 @@ msgstr "مسار مفتاح شهادة SSL"
24722477
msgid "SSL Certificate Path"
24732478
msgstr "مسار شهادة SSL"
24742479

2475-
#: src/views/other/Login.vue:198
2480+
#: src/views/other/Login.vue:197
24762481
msgid "SSO Login"
24772482
msgstr "تسجيل الدخول عبر SSO"
24782483

@@ -2566,11 +2571,11 @@ msgstr "نجح مزامنة الشهادة %{cert_name} إلى %{env_name}"
25662571
msgid "Sync Certificate %{cert_name} to %{env_name} successfully"
25672572
msgstr "نجح مزامنة الشهادة %{cert_name} إلى %{env_name}"
25682573

2569-
#: src/components/Notification/notifications.ts:9 src/language/constants.ts:38
2574+
#: src/components/Notification/notifications.ts:9 src/language/constants.ts:39
25702575
msgid "Sync Certificate Error"
25712576
msgstr "خطأ في مزامنة الشهادة"
25722577

2573-
#: src/components/Notification/notifications.ts:13 src/language/constants.ts:37
2578+
#: src/components/Notification/notifications.ts:13 src/language/constants.ts:38
25742579
msgid "Sync Certificate Success"
25752580
msgstr "تمت مزامنة الشهادة بنجاح"
25762581

@@ -2584,11 +2589,11 @@ msgstr "تمت مزامنة التكوين %{config_name} إلى %{env_name} ب
25842589
msgid "Sync config %{config_name} to %{env_name} successfully"
25852590
msgstr "تمت مزامنة التكوين %{config_name} إلى %{env_name} بنجاح"
25862591

2587-
#: src/components/Notification/notifications.ts:19 src/language/constants.ts:44
2592+
#: src/components/Notification/notifications.ts:19 src/language/constants.ts:45
25882593
msgid "Sync Config Error"
25892594
msgstr "خطأ في تزامن التكوين"
25902595

2591-
#: src/components/Notification/notifications.ts:23 src/language/constants.ts:43
2596+
#: src/components/Notification/notifications.ts:23 src/language/constants.ts:44
25922597
msgid "Sync Config Success"
25932598
msgstr "تمت مزامنة التكوين بنجاح"
25942599

@@ -2898,7 +2903,7 @@ msgstr "ترقية"
28982903
msgid "Upgraded Nginx UI on %{node} successfully 🎉"
28992904
msgstr "تمت ترقية Nginx UI على %{node} بنجاح 🎉"
29002905

2901-
#: src/language/constants.ts:29
2906+
#: src/language/constants.ts:30
29022907
msgid "Upgraded successfully"
29032908
msgstr "تم الترقية بنجاح"
29042909

@@ -2962,7 +2967,7 @@ msgstr "إصدار"
29622967
msgid "View"
29632968
msgstr "عرض"
29642969

2965-
#: src/components/Notification/Notification.vue:202
2970+
#: src/components/Notification/Notification.vue:203
29662971
msgid "View all notifications"
29672972
msgstr "عرض جميع التنبيهات"
29682973

app/src/language/constants.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ export const msg = [
1818
$gettext('Reloading nginx'),
1919
$gettext('Finished'),
2020
$gettext('Issued certificate successfully'),
21+
$gettext('Certificate renewed successfully'),
2122
$gettext('Environment variables cleaned'),
2223

2324
$gettext('Initialing core upgrader'),

0 commit comments

Comments
 (0)