Տեղադրում և թարմացումներ
AiHummer-ում պլագինի տեղադրումը կատարվում է մեկ սեղմումով ադմինիստրատիվ ինտերֆեյսում, սակայն այս սեղմման հետևում թաքնված է հոսթին բնորոշ դետերմինացված կյանքի ցիկլ: Պլատակյալը բեռնավորում է պլագինն, իրականացնում նրա հայտարարված տեղադրման քայլերը, ցուցադրում է խճանկար unit systemd, և պլագինը առողջ է համարում միայն այն ժամանակ, երբ այն պատասխանում է վիճակի ստուգմանը։ Յուրաքանչյուր տեղադրում այնուհետև ինքնուրույն պահպանում է իր արդի վիճակը։
Տեղադրում մեկ կտտոցով ադմինիստրատորի միջերեսից
Դուք տեղադրում և կառավարում եք հավելվածները ադմինիստրատորի ինտերֆեյսի միջոցով, որը աջակցվում է ադմինիստրատորի մոդուլի API-ով՝
GET /v1/admin/modules
POST /v1/admin/modules/install
Մոդուլի նույնացումը (slug) նշվում է JSON-հարցման մեջ, ոչ թե ուղու մեջ:
{ "slug": "einstein", "version": "" }
Ուրիշ մի բան ձեռքով մի միացրեք․ ընտրեք հավելումը կատալոգից, սեղմեք կարգավորել, և գործը կզբաղվի տեղադրիչը։
[!NOTE] Ուղղորդիչի միակցիչի տեղադրում հիմնական հավաքածուից դուրս (միայն Telegram) պահանջում է ակտիվ Ստարտեր, Բիզնես կամ ԱԿԸ լիցենզիա. Համայնքի պլանում այդ հարցումը վերադարձը տալիս է HTTP 402 «պահանջվում է թարմացում» (կոդ
plan_limit) — տես Լիցենզավորում.
[!NOTE] Այս Աայնշտեյն հիշողության plugin-ը հանդիսանում է ներսքին ներկառուցված: ավտոմատ կերպով սահմանվում է, պետ է «Ներքին» նշանով և չի կարող հեռացվել կամ կանգնեցվել։
SystemdDeployer հոսք
ԱԿՎԱՆ ԱԾԱՅԻ ՆԻՐՈՒՆԻ ՆԻՍԱՆ ՍիստեմԴեպլոյեր կատարում է այս քայլերը՝
- Ներբեռնել tar արխիվը ընտրված պլագինի համար։
- Խաղարկել մանիֆեստը
install[]քայլեր հայտարարվել է պլագինով։ - Ստեղծել izկոլացված unit-համակարգ systemd պլագինի համար.
- Հարցում
/healthzմինչ ծառայությունը չի հաղորդի առողջության մասին:
download tarball ─▶ run install[] steps ─▶ render sandboxed systemd unit ─▶ poll /healthz ─▶ active
Միայն երբ /healthz վերջին հաջող է համարվում այն տեղադրումը, որը նշված է որպես ակտիվ — հավելվածը, որը չի սկսվում, չի համարվում կարգաբերված լռությամբ։
systemd համակարգը հոսթում, մեկուսացված ավազանի մեջ — ոչ Docker
Այն աշխատում է այնպես, ինչպես յուրաքանչյուր հավելում հատուկ systemd ծառայություն մեկուսացված միջավայրում. Կոնտեյներներ չկան, Docker չկա, օրկեստրատոր չկա․ plugin-ը կառավարելի Linux ծառայություն է՝ իր սեփական միավորով, պորտով և sandbox-ի սահմանափակումներով, վերահսկվում է systemd-ի կողմից, ինչպես և մնացած կազմաձևը։
[!WARNING] AiHummer-ը բնիկ է հոստի համար։ Պլագինները տարածվում են որպես systemd մեկուսացված ծառայություններ մատուցվող արխիվային ֆայլից — երբեք Docker կոնտեյներների նման։ Եթե ուղեցույցը ձեզ ասում է որ «սկսել հավելվածի կոնտեյները», սա չի նկարագրում AiHummer-ը։
/healthz-ի միջոցով վիճակի ստուգում
Դեպլոյերը հարցում է անում պլագինին /healthz կետը մինչև հաջողության հայտարարումը: Այս առողջության ստուգումը դարձնում է մեկ-կտտոցով տեղադրումը անվտանգ. սխալ կամ սխալ կարգավորված պլագինը հայտնաբերվում է տեղադրման ժամանակ, ոչ թե հետագայում’exploitation-ում:
Ավտոմատ թարմացում տեղադրման համար
Թարմացումները մշակվում են տեղադրման համար. Յուրաքանչյուր տեղադրված պլագին կարող է ինքնաբերաբար թարմացվել իր սեփական ժամանակացույցի համաձայն, հետեւաբար պլագինների արդի վիճակում պահպանումը չի պահանջում ձեռքով նորից տեղադրում ամեն անգամ, երբ նոր տարբերակը հայտնվում է կատալոգում: Սրանք նույն քայլերն են՝ ներբեռնում → տեղադրում → ռենդերինգ միավոր → իրավիճակի ստուգման հոսքը կատարվում է թարմացման համար, ինչպես առաջին տեղադրման դեպքում։
[!TIP] Քանի որ ավտոմատ թարմացումը աշխատում է յուրաքանչյուր տեղադրման համար, դուք կարող եք որոշ պլագիններ թողնել մնում մինչ թույլ տալով մյուսներին հետևել վերջին թարմացումներին՝ յուրաքանչյուր տեղադրում կառավարում է իր սեփական կյանքի ցիկլը:
Կատալոգ մի քանի աղբյուրներով
Կատալոգը այլևս կապված չէ մեկ URL-ի հետ։ համայնքի կատալոգ ակտային մշակողների լրացումներ տրամադրվում են որպես ներմուծված դուրkxած աղբյուր (կազմը զանգվածված է տեղադրման ժամանակ) — դուք այն ինքնուրույն չեք ավելացնում։ Վ Պլագիններ → Աղբյուրներ (Ադմինիստրատորի ինտերֆեյսը, կամ POST /v1/admin/modules/catalog/sources) դուք կարող եք ավելացնել ձեր սեփական լրացուցիչ աղբյուրները։ Ճանապարհը համաժամեցնում է յուրաքանչյուր կարգաբերված աղբյուրը սկսելու պահին և ավտոմատ թարմացման ինտերվալով։
- Այս պաշտոնական աղբյուր (առաջին կողմի մոդուլները) ամրացված են և կանխադրված վստահելի են համարվում — ուրիշ օբյեկտ, որը հանդիսանում է չենք վերագրանցվել այլ աղբյուրներից
- Այս համայնքի կատալոգ համարվում է հիմնական աղբյուրը սահմանված արժեքով; անձնական աղբյուրներ են
ավելացվել է օպերատորի կողմից: Յուրաքանչյուր գրառում կատալոգում ունի
անորոշ առարկա
origin, և սաoriginորոշում է, թե որ մեջը զանգվածով ստուգվում է ստորագրությունը հակառակ (առաջնային → ամրագրված բանալի, մասնավոր → վստահության պահոց)։
Հրատարակելու համար համայնքի կատալոգում տեսեք Պլագինի հրապարակում.
Վստահության մոդել և հաստատված բանալի
Տեղադրման գործընթացը ստուգում է պլագինի ստորագրությունը ըստ դրա աղբյուրի:
- առաջինական → ստուգվել է ըստ ռեգիստրի բանալին ամրացած է միջուկում. Վստահում են նախնական կարգով, ոչ մի գործողություն օպերատորի կողմից։
- մասնավոր (կարգավորում կողմից) → ստուգվել է ըստ վստահված սերտիֆկատների պահոց օրինակին; դա հեղինակի բանալին հաստատվել է օպերատորի կողմից բեռնումի ժամանակ (մեկ սեղմումով)։
- աննշան → մերժված է, բացառությամբ մշակման ռեժիմի
(
AIHUMMER_PLUGIN_DEV_UNSIGNED=1, միայն տեղական զարգացում).
[!WARNING] Համայնքի պլագինները հիմա հնարավոր չէ տեղադրել — սա կապի խափանում չէ։ Բանալին, որով ստորագրվում էր համայնքի կատալոգը, հետ է կանչվել. մինչև նոր բանալու թողարկումը ստորագրության ստուգումը մերժում է այդ գրառումները։ Դրանից անկախ՝ երրորդ կողմի կոդը դեռ չի գործարկվում որպես ծառայություն ձեր սերվերի վրա. մինչև մեկուսացված գործարկման միջավայրի հայտնվելը թույլատրված են միայն այն ինտեգրումները, որոնք աշխատում են իրենց կողմում և միանում են ցանցով։
Ինչ կտեսնեք. «տեղադրել» սեղմելուց հետո կհայտնվի սովորական «տեղադրվում է» հաղորդագրությունը, բայց պլագինը երբեք չի հայտնվի տեղադրվածների ցանկում։ Մերժման պատճառը գրվում է դարպասի մատյանում — բացեք Մատյաններ կառավարման վահանակում։
Ինչն է աշխատում այսօր.
- պաշտոնական կատալոգի AiHummer-ի պլագինները — տեղադրվում են սովորականի պես, դրանք ունեն այլ, գործող ստորագրություն;
- MCP սերվեր HTTP-ով — միանում է որպես գործիքների աղբյուր առանց մշակման, կոդը մնում է ձեր կողմում;
- ինտեգրում OpenAPI բնութագրով — նույնը, առանց տեղադրվող ծառայության։
Սեփական պլագինի ձեռքով բեռնումն անցնում է ստորագրության ստուգումը, բայց կգործարկվի միայն որպես հեռավոր MCP HTTP-ով կամ OpenAPI ինտեգրում. կառուցվածք, որը պետք է գործարկվի որպես ծառայություն նույն սերվերի վրա, մերժվում է։
Գրվել են թարմացումներ
Թարմացում կրկին գործարկել նույն ստորագրային դուռը ինչպես առաջին տեղադրումը՝ նոր տարբերակի անցնելիս ստորագրությունը կրկին ստուգվում է նույն վստահելի հանգույցի նկատմամբ։ Ապահովում չի կարող շրջանցել չեկ — դուք չեք կարող բարձրացնել վստահությունը թարմացմամբ։
Այլեկտրոնիկ գծանշան և վարկանիշ
Վեբ ինտերֆեյսի կատալոգում AiHummer-ի պլագինները ունեն Պաշտոնական պիտակն ու աստիճանը առաջինը։ Երրորդ կողմի նրբացուցիչները ցուցադրվում են առանց պիտակի և կարգավորվում են բեռնման քանակով. Պաշտոնական դրոշը ծագում է մասնակցությունից origin (կառավարական) — սա հնարավոր չէ ձեռքով սահմանել մանյֆեստում:
Որտեղից հետո
- Առևտրային հարթակի վերանայումը և մակարդակները — ինչ տեսակ է պլագինների երեք մակարդակ
- Պլագինների զարգացման բազա — սա
manifest.jsonո՞վ էinstall[]նորաձևը, որը կատարում է այս կյանքային ցիկլը. - Պլագինի հրապարակում — մասնավոր կողմնակի բեռնավորում և հրապարակում համայնքում անձնական գրասենյակի միջոցով։
- Անկոդ ինտեգրացիաներ — ավելացնել OpenAPI/MCP գործիքներ առանց ծառայություններ տեղադրելու անհրաժեշտության։