// tier: serverfactory-tertiary · order 33
Server Factory — Additional Components mixedlicense: UNVERIFIED
Source
- Server-Factory/Web-Service-Factory
- Server-Factory/SonarQube-Factory
- Server-Factory/Caching-Proxy-Factory
- Server-Factory/Docker-Definitions
- Server-Factory/Stack-Definitions
- Server-Factory/Software-Definitions
- Server-Factory/Utils
Server Factory құрастыру құралдар тізбегінің қолдаушы компоненттері
Mail Server Factory және Core Framework-тен басқа, Server-Factory ұйымында бірнеше кішірек компоненттер бар: әрбір қызметке арналған "фабрикалар" (Web Service, SonarQube, Caching Proxy), декларативті конфигурациялық пакеттер (Docker/Stack/Software Definitions) және ортақ Utils. Бұл біріктірілген бет оларды толықтай аяқталған өнімдер ретінде емес, шындыққа сай көрсетеді — олардың бірқатары алғашқы кезеңде немесе құжаттамасы жеткіліксіз.
Server Factory-ді қолдаушы репозиторийлер тобы: Web-Service-Factory, SonarQube-Factory және Caching-Proxy-Factory (әрбір қызметті құрастыру құралдары, көбінесе алғашқы кезеңде); Docker/Stack/Software-Definitions (фреймворк пайдаланатын декларативті конфигурациялық пакеттер); және Utils (SSH-ға қол жеткізу көмекшілері мен жалпы құралдар). Барлығы Core Framework-ке негізделген.
Бұл бет Server-Factory репозиторийлерін біріктіреді, өйткені жеке алғанда олардың көбі кішігірім немесе әдейі толық құжатталмаған, ал әрқайсысын дайын өнім ретінде сипаттау олардың жетілгендігін асыра көрсетер еді. Олар үш топқа бөлінеді. Қызмет фабрикалары Mail Server Factory үлгісін басқа серверлік рөлдерге қолданады: Caching-Proxy-Factory ("Өзіңіздің кэш-серверіңізді іске қосыңыз") кэш-серверді, өздігінен қол қойылған сертификатты және қауіпсіздік сертификатын алу үшін HTTP эндпоинтты негізгі мүмкіндіктер ретінде көрсетеді; SonarQube-Factory ("Өзіңіздің SonarQube серверіңізді іске қосыңыз") бағдарламалық жасақтамаларды әзірлеу үшін арналған; ал Web-Service-Factory веб-серверді іске қосу және конфигурациялау арқылы веб-сайттар мен микросервистер сияқты нысандарды орналастырады. Барлығы Kotlin жобалары Core Framework-ке негізделген, бірақ олардың көпшілігінің қоғамдық README-файлдары негізінен орынбасарлар ("Келешекте анықталады" сәйкестік, техникалық сипаттамалар, орнату және пайдалану үшін) болып табылады — сондықтан айтылған мақсаттан басқа олардың нақты мүмкіндіктері ТЕКСЕРІЛМЕГЕН. Анықтамалық пакеттер — Docker-Definitions, Stack-Definitions және Software-Definitions — фреймворк Docker бейнелерін, стектерді және бағдарламалық жасақтаманы қалай құрастыру/орналастыру керектігін білу үшін пайдаланатын декларативті конфигурациялық репозиторийлер. Олар қолданбалар емес, нұсқаға байланған деректер пакеттері. Utils отбасына жалпы көмекшілерді қамтиды, соның ішінде init_ssh_access.sh скриптісі — ол SSH кілтін жасап, қашықтағы хостқа орнатады, бұл кейінгі құрастыру үшін парольсіз root-қолжетімділікті қамтамасыз етеді. Бұл компоненттер бірге Mail Server Factory негізгі жобасының айналасындағы құрастыру құралдар тізбегін толықтырады.
Server Factory моделі жалпылау үшін жасалған: бір рет декларативті сипаттамадан пошта серверін құрастыра алатын болсаңыз, сол қозғалтқыш веб-серверлерді, кэш-серверлерді және код сапасын бақылау серверлерін де құрастыра алуы керек — әрбір рөлге арнайы логика емес, қайта пайдаланылатын анықтамалық пакеттер мен ортақ құралдар арқылы. Бұл репозиторийлер осы жалпылаудың жүзеге асырылуында, сынақтан өткен үлгіні жаңа серверлік түрлерге кеңейтуде. Олардың осындағы құны — моделінің әсер ету ауқымының дәлелі ретінде; олардың жетілгендік деңгейі әртүрлі, ал бұл бет қайсысы бағыт, қайсысы дайын екенін анық көрсетеді.
Мәтін
Бүкіл жиынтығы бойынша олар Core Framework-тің әртүрлі сервер түрлерінде қайта қолданылатындығын және декларативті деректерді (Анықтамалар) орындаудан (фабрикалар) бөлетіндігін көрсетеді. Жеке алғанда, қызмет фабрикалары алғашқы сатыда және аяқталған өнім емес, бағыт ретінде ұсынылуы керек.
- Бір провизиялау құрылымы пошталық/веб/кеш-прокси/SonarQube рөлдері бойынша жалпыланған.
- Декларативті Анықтамалар пакеттері (Docker/Stack/Software) орындау механизмінен бөлінген.
- Ортақ Қолданбалылар (мысалы, бір командалы парольсіз SSH жүктеу) фабрикалар арасында қайта қолданылады.
- Бір механизмді әртүрлі серверлік рөлдерде қолдану: Core Framework негізінде әрбір фабриканы құру арқылы шешілді.
- Конфигурацияны кодтан бөлу: Анықтамалар репозиторийлері нұсқаға бекітілген деректер пакеттері ретінде шешілді.
- (ТЕКСЕРІЛМЕГЕН): қызмет фабрикаларының README-файлдары орынбасар; олардың іске асырудың толықтығы жариялық құжаттардан тексерілмейді — алғашқы саты ретінде ұсынылады.
- Kotlin — Веб-Қызмет-Фабрикасы, SonarQube-Фабрикасы, Кеш-Прокси-Фабрикасы (Core Framework негізінде құрылған).
- Shell — Қолданбалылар және Анықтамалар пакеттері (скрипттер/конфигурациялар).
- Gradle —
./gradlew testфабрикалар бойынша құрылымдық/тестік ағыны. - Docker — Docker-Анықтамалары арқылы сипатталған мақсатты орындау ортасы.
- SSH / OpenSSH — Қолданбалылардың парольсіз кіру жүктеуі.
- SonarQube — SonarQube-Фабрикасы провизиялайтын сервер (және Mail Server Factory оған таза қақпа ретінде баяндайды).
Ашықтық ескертпесі: бұл репозиторийлердің көбі ұйым ішіндегі форктер; қызмет фабрикалары орынбасар құжатталған және конституцияның §11.4.6 бөліміне сәйкес ТЕКСЕРІЛМЕГЕН белгісі қойылған. Mail Server Factory және Core Framework деңгейінен айқын төмен саналады.