Страницы

Ансибл
, № 1729071
+  2   ( 2)
Сказать что я задолбался за эти два дня это ничего не сказать.

Ansible, мощный инструмент, который мне пришлось изучать с нуля. Я взял четыре тестовых железки. 3 ПК и 1 Ноутбук. Переустанавливал на них Debian 11 Server и натравливал Ansible чтобы тот ставил мне настройки.

В итоге сегодня я смог накатить NGINX + PHP-FPM, это уже позволяет запускать без проблем динамические сайты. Оплатил 500 руб. у одного хостера, сразу же арендовал почасовой сервер, натравил на него Ansible и он отлично отработал и всё установил.

Так вот, это значит что скрипт работает везде. И работает успешно.

Дальше мне надо научить его ставить для каждого домена свою базу данных MySQL. Причём чтобы всё это было безопасно, по всем канонам паролей в 50 символов.

Если я закончу автоустановку базы данных, то дальше я наконец-то смогу уже перейти на сервис USER, который отвечает за Логин/Регистрацию. И заодно дальше верстать шаблон АнимеКуна.

Эти два дня я жил очень просто: вставал и сразу садился писать Ansible код, сотнями строк, безвылозно. Когда моя спина и шея говорили "Тебе пизда", то ложился на кровать, врубал зарубежные курсы по Ansible. Которые смотрел, записывал в блокнот и запоминал, пока не вырубался нафиг.

Короче я настолько Ansible, что Энсибл, Ансибл, Ансибль…
 
, № 1728964
+  2   ( 2)
Итак, сегодня продолжил с Ansible, шаблон уже умеет:
1. Ставить базовые пакеты в систему, вроде curl, wget, gpupg, sudo
2. Удалять CD-ROM из базового пакета apt, который блокирует потом установку софта
3. Добавляет все репозитории Debian 11, которые нужны
4. Обновляет систему
5. Добавляет двух пользователей
6. Меняет пароли пользователей, в том числе root пароль на убер сложные
7. Ставит всем пользователям свои SSH ключи авторизации
8. Удаляет в системе возможность гибернации или сна
9. Меняет стандартный SSH порт с 22 на нестандартный
10. Выключает возможность логина под root пользователем
11. Выключает возможность авторизации по паролю, только SSH ключи
12. Устанавливает NGINX, ставит его в автозагрузку, перезапускает

Дальше мне необходимо чтобы Ansible удалял стандартный default домен, который открывается и добавлял уже конкретные домены рабочих проектов.
Но этого мало, потом мы притягиваем PHP-FPM, со свом конфигом, который я буду регулировать и надеюсь найду конфиг связки PHP + NGINX не сильно хуже чем у Laravel Forge.
После всей этой мутатени мы добираемся до самого главного - MySQL в качестве базы данных на сервере. Вот с ней я вообще подохну разбираться. Там и root надо вроде как вырубать по стандарту. И сложные пароли генерировать. И базы данных создавать автоматом под каждый проект.

И если я сделаю эти "нехитрые" вещи то сразу же покупаю тестовый сервер и запускаю на нём скрипты Ansible. И потом сразу же продолжаю писать Логин/Регистрацию, с авторазвёртыванием на сервере.

Просто - кот.
 
Токс
, № 1728911
+  2   ( 2)
В общем Ansible рабочий и бесплатный инструмент. Сейчас гоняю настройки на тестовых машинах. Надеюсь еще день-два и допишу установку и настройку безопасных серверов с нуля.

И надо дальше верстать Куны и уже заливать микросервисы с базами данных.

Пока что нерешенных вопросов нет. Это радует.
 
, № 1728894
+  2   ( 2)
Откопал Ansible и Puppet, сейчас буду ставить и настраивать Ansible. Судя по описанию это всё, что мне нужно для управления хоть сотней серверов.
 
Серверный Сервер
, № 1728891
+  2   ( 2)
Изучил: RunCloud, ServerPilot, Laravel Forge, Tasksel LAMP - всё платное. Бесплатного аналога ещё не нарыл.

Laravel Forge лучше всего подготавливает сервера, 18 278 запросов в минуту
RunCloud на втором месте, выдерживает 17 710 запросов в минуту

Для сравнения можно так же взять стандартный сервер, который можно настроить руками. Он выдерживает 10 703 запросов в минуту. Т.е. если не шаришь как настраивать сервера, т.е. ты не DevOps и не сис. админ, то получаешь в два раза хуже производительность.

Я объясню в чём ещё гемор. Каждый раз когда ты покупаешь сервер у стандартного хостера он часто туда запихивает Control Panel, т.е. какую-то панель управления. И если у тебя 20 серверов то и 20 панелей управления, разбросанных по всему интернету. Мало того, что это сложно администрировать, так это ещё и не безопасно и каждая панель жрёт ресурсы на сервере изначально. Хотя она там и нафиг не нужна.

По этому лучший вариант это центральный сервер. Сервер серверов. Сервер, который управляет и настраивает другие сервера.

Буду рыть дальше.
 
, № 1728888
+  2   ( 2)
Сегодня я ставил и настраивал три сервера на Debian 11. Настройку ещё не закончил. Мне надо чтобы в них автоматически создавались домены в NGINX с определенными конфигурациями + создавалась база данных MySQL.

Это я делаю для того, чтобы микросервисы автоматом ставились на любой сервер. Ведь чтобы мне где-то запустить микросервис, который позволяет вам зайти надо:
1. Подключиться к серверу по SSH используя RSA 4096 bit ключ
2. Проверить все файлы, если их нет - залить, если изменились - обновить. Это сделает rsync
3. Проверить MySQL базу данных, если нет то создать и залить данные пользователей. Если есть то ничего не делать. Это сделает??? Без понятия что. Возможно прямое взаимодействие с командами MySQL.
4. В качестве сервера будет связка Nginx + PHP. Либо какой-то другой сервер для PHP. В любом случае необходимо будет создать файлы сервера, настройки Nginx на автомате.

Это все я пытаюсь реализовать с помощью Bash. Возможно есть какой-то инструмент готовый, чтобы управлять связкой серверов, но я его пока что не нарыл. Kubernetes не подходит, он требует минимум 2 гига оперативки только для себя. А ведь там ещё и сервисы должны работать. Так что сервера под Kubernetes будут по цене золота.

Для сравнения сервер за 200 руб. в месяц это 1 ядро процессора и 512 мб оперативки, 20 гигов места на жёстком.

Сервер с 2 гигами оперативки стоит 800 руб. 2 ядра, 2048 мб оперативки и 40 гигов места.

Задумка в том, что Куны спокойно будут работать на самом дешевом железе. Только железа этого будет много. Так что придётся дальше потеть и смотреть варианты управления этим монстром из кучи серверов.
 
Пупс
, № 1728805
+  2   ( 2)
Ну что, девочки и мальчики, разработка идёт полным ходом. На сегодня всё, пойду отдыхать.

https://toxic-cat.ru/

Дизайн текущего Куна кстати не так уж и плох. Много чего продумано.
 
, № 1728791
+  2   ( 2)
Срез за пол рабочих дня.

Работаю над шаблоном аКуна
https://toxic-cat.ru/

Работаю над движком Poseidon
https://github.com/MokhovEvgeniiGennadevich

Процесс идёт, проблем нет.
- Внедрил мультиязычность.
- Внедрил шифрование в адреса страниц, теперь они выглядят длинно и непонятно. Проверил что при смене ключей шифрования все страницы на порталах сразу же поменяются. Это нужно будет делать раз в какое-то время.
- Залил фон, проверил как проходят обновления. Внедрил версионность обновлений. Чтобы у всех подгружались новые данные, а не хранился кэш старого дизайна.

Пока что смотреть особо нечего, сейчас буду дальше уже сам шаблон верстать. В какой-то момент необходимо будет купить два сервера по 200 руб. и уже интегрировать связь с микросервисами, чтобы логин работал и регистрация работала.

Главное что теперь больше нет паники по поводу выбора технологий. Осталось просто писать много кода и всё. И много страниц и много функционала и логики. ОЧЕНЬ МНОГО.
 
Пнх
, № 1728752
+  2   ( 2)
Иду спать. Короче послал я всё в пизду, признался в том, что я лузер. Выложил часть того, что я делал до этого.

Тут логин и рега:
https://toxic-cat.ru/

Тут оба репозитория, FrontEnd и BackEnd:
https://github.com/MokhovEvgeniiGennadevich/Poseid…
https://github.com/MokhovEvgeniiGennadevich/Poseid…

В чём вся залупа то, скажете вы. В шифровании - отвечу я. Если вы заглянете в запрос браузере при клике на кнопку Login то вы увидите что ваш запрос зашифрован стандартом AES-256-CBC + SHA512 подписью. Плюс адрес страницы, куда идёт запрос так же зашифрован.

Вот так выглядит для провайдера ваш запрос, нихуя не понятно и это главное:
/api.php?a=0&b=896d2e53c656a4aa86663a80b31a1711d5caa8e6adc4041c007b72c9a4df18f66bd868896b03416e939b48f07f2507b937df939a9956159c9d13c0d22bc2af822b0d4f10b66e52a51f48e62f59e1331bd0e96c8803e54e81dc4f815f4e0c8b719e18593fa7ae733a7d08b657d8146cac62f770fafb3ff332e7fb827028e04101f9d6a1d6d55372a88839658f26f3fd60


А вот так выглядит ваш логин и пароль при отправке. Тоже нихуя не понятно.
a=0&b=03cb46d8ad9ef1c8fdcb9f08dd0ecbfc5438c5654080c806fc356acf86dc5322eb249eb8fcb7cb0130061450a5a80cb75830fa3848518dd65562da4633d51777ab67ab860f252232946714e74d5f1a90c5123643c26096c1eb8228281cc8c3f6e58bffb566af5583b379a3b5c71c27f9&c=1110ad5a15762bf29b82a53881b7068d398a6cf73ce121d72e50e0a9f534801c34993d9ed6a548b393256ecde1d1b926400e5bc63f8fcf392a647a15b59df17d72168de93556df796ba8a595759f64cc7798ccfe21a5974546be828432d466e9b4a234ff25cc35b208b3f10c541140d3eb15164956d8708d471bfcd30cb9d2def2b48c17b8d1564ed3623a6860c6d6cad2d41867f47e6930636197dec1df49aafe93de4381172a8046350f64c301bbacf20ed0de6271fec856f7962a2157ed39a26ea58004e4e161dd76a9b1608f4f5010972ed40097f6855a48cfa0b46427d3012e281a5fe1bb03831dcd38c47da4e0


Двойное шифрование, скажу я вам. Помимо того, что Poseidon в целом будет работать через SSL сертификаты, это уже шифрование. Но мы не доверяем никому. Это называется Zero Trust. Сервера даже не доверяют друг другу. По этому они так же шифруют все данные между собой и проверяют подписи.

Вот это я хотел сделать, в этом суть движка Poseidon. С учётом текущего Web 2.0, в котором мы живём, где нас могут выебать за любое высказывание я готов сидеть ТОЛЬКО на тех ресурсах, которые серьёзно обезопашивают мои данные. И они показывают только то, что я готов показать.

В новом движке Poseidon вообще нет логов IP адресов. Нет никаких ваших e-mail адресов. Вход только по Логину и Паролю. E-mail вы можете привязать, для того, чтобы иметь возможность восстановить пароль, иначе аккаунт будет утерян НАВСЕГДА как это и подобает всем анонимным системам. В криптовалютах такая же байда. Если вы потеряли пароль от кошелька, можете забить на ваши деньги. Нет никакой центральной системы, которая восстановит вам доступ. Ваша безопасность в ваших руках. Но это даёт и анонимность. Нет регулятора с палкой, который будет стучать в случае чего по бошке. Или будет следить за вашими действиями.

Именно из-за этой параноидальной системы шифрования мне и не подошёл тот же VueJS, потому, что ключи шифрования выдаёт сервер. А во VueJS я не смогу встроить PHP код. Да и вообще ничего не подошло, сорян. Я буду писать этот деpьмокод.

Сейчас я должен закончить авторизацию и регистрацию:
1. Регистрация нового пользователя, сразу логин на портал
2. Авторизация пользователя по логину/паролю
3. Шифрование cookie файла, который хранится на ПК пользователя, чтобы не вводить логин/пароль каждый раз при входе на порталы.
4. Система прав доступа. Доступ к чему и куда и когда и кому.

Вот это если я делаю, то дальше разработка пойдёт ГОРАЗДО проще и быстрее. Это по сути самый гемор. Чем качественнее я сделаю ПОЛЬЗОВАТЕЛЯ тем качественнее будет вся система. Потому, что остальные вещи, вроде изображений, постов, комментариев, персонажей, обзоров, лайков/дизлайков, это всё завязано на пользователя. Это всё исходит из него.
 
Вслух
, № 1728746
+  2   ( 2)
Просто заметка, чтобы развернуть всю эту махину мне надо:

1. Быть DevOps, т.е. специалистом по серверам. Ставить Linux (Ubuntu, Debian, CentOS). Настраивать NGINX, PHP, DNS, Почтовый сервер, Composer, Docker, NodeJS, NPM. Уметь подключать и настраивать CDN. Не забывать обновлять сервера, чинить всё, что ломается после обновлений. Следить за сводками безопасности. А серверов планируется не меньше 20 штук и объемы работ вы можете представить.
2. Быть FrontEnd Developer, т.е. специалистом по шаблонам. Шарить в NodeJS, VueJS, JavaScript, HTML, SCSS, Images (в том числе новомодные Avif, WebP), BootStrap, Fonts (шрифты это вообще отдельная тема), Icons (иконки различные на сайты).
3. Быть BackEnd Developer, т.е. специалистом по базам данных, api и работе с сущностями. Уметь легко в CRUD (Create, Read, Update, Delete). Шарить в PHP, Python, GoLoang. WebSocket, RestAPI.

1. DevOps легко заменяется платной штукой у Laravel, называется Laravel Forge, стоит $20/$40 в месяц и я хотя бы забываю о настройке серверов навсегда. Эта штука сама подключается к серверу и настраивает там PHP, Nginx, домены, почту и вообще весь кал, который только можно представить. Ставит обновления безопасности и т.д.
2. FrontEnd Developer, возможно я смогу это заменить всё-таки дособрав Gulp, но не факт. Возможно я выберу VueJS как препроцессор, возможно выберу Laravel MIX как препроцессор всяких CSS и JS файлов. Только фишка в том, что изображения обрабатывать умеет только Gulp. Но хуй с ним, допустим я вынесу все изображения шаблона на отдельный сервер CDN и с него буду раздавать и Avif и WebP конвертируя всё на лету с помощью ImageProxy на языке GoLang внутри Docker контейнера. Но пока что я в душе не ебу как это настраивать.
3. BackEnd Developer, это как раз сердце движка и порталов. Тут я могу взять монолитный Laravel в качестве API, которое будет раздавать данные на все порталы. Возможно мне надо сразу писать микросервисы на языке GoLang. В любом случае, что касается API, я уже не так сильно переживаю, потому, что это более-менее мой профиль. В отличии от двух предыдущих. Но тут есть и мои слабые стороны. Это балансер, я не шарю в них. Это Redis, который кэширует запросы, ни разу с ним не работал.

Короче, ребята, я думаю из всего этого зоопарка, напрашивается судя по всему одно решение. Почти везде Laravel заменяет вообще весь стэк. Т.е. на его базе я могу полностью заменить системного администратора (DevOps), верстальщика (FrontEnd Dev) и программиста (BackEnd Dev). Только это ПЛАТНО. $20 это 1400р., $40 это 2800 руб., что эквивалентно аренде 4 или 8 серверов соответственно.

Чем вообще крут этот парашный Laravel. Да тем, что он всегда будет держать движок Poseidon свежим. Если я напишу свой код, он сразу же начнёт устаревать. Прямо в день выхода движка. И его надо постоянно поддерживать, десятки серверов надо обновлять, надо следить за безопасностью. Это огромная работа на ближайшие 10 лет. И если я где-то проебусь то сервера взломают и попортят всем кровь. А Laravel обновляет команда программистов, движку будет достаточно обновлять сам Laravel и не переживать за устаревание кода или ещё что.

В чем же минусы Laravel. Он жирный, там десятки тысяч файлов, он медленный по сравнении с чистым кодом, значит он больше будет жрать ресурсов и потребует чуть более мощных серверов. Плюс его решения отчасти платные, что тоже не айс, во первых потому, что я из РФ их оплатить не могу вовсе. Во вторых потому, что цена может меняться, где гарантии что завтра они не сделают вместо $20/$40 в месяц - $200/$400? Нигде. По этому это в любом случае ЗАВИСИМОСТЬ от Laravel и её инфраструктуры, зависимость от этого фреймворка.

Сейчас я сидел и смотрел всё по Laravel Mix, смотрел по шифрованию во VueJS. И ничего не написал. Возможно сейчас сяду и начну всё-таки хотя бы старый шаблон кунов переносить в Laravel. Надо уже стартовать, хоть с чего-то. Но я не могу, я потный, потерянный и ничего не понимающий. Есть два стула, на какой же мне из них присесть?
 
Недоверстальщик
, № 1728725
+  2   ( 2)
И вот я думал над этим всем и вспоминал как Ло постоянно хотела чтобы мы перезапустили движок White у Кунов. Чтобы я переделал этого монстра по новому. И вот прошло уже много лет, а я так ничего и не запустил.

Прошло уже много месяцев начиная с того, как я вообще углубленно изучаю Go, PHP, JavaScript, Go. Но я так ничего и не запустил. Объём знаний растёт. Количество запущенных проектов НОЛЬ.

И я это понимал и знал, даже в то время я начинал смотреть разработку и я не понимал её. Я не понимал нахуя они это делают, зачем так сложно. Зачем блять ебучий Docker, который жрёт ресурсы. Зачем все эти установщики пакетов, которые в итоге не работают нехера. Потому, что вы попадаете в ловушку dependecies hell (АД зависимостей) когда один пакет зависит от 10 пакетов и эти пакеты еще от 10 пакетов и в итоге у тебя ставится в систему 2000 пакетов, а ты ещё не начал работу.

И не дай Бог, ребята, у вас все эти монструозные штуки не захотят работать. Что-то из этих 2000 пакетов баганёт. Можете смело выкидывать свой ПК в окно и забивать. Забивать до тех пор, пока разработчик пакета не починит баг. А это ОпенСорс, а значит он вам ничем не обязан и может чинить этот баг хоть тысячу лет.

Короче, хватит пиздеть, пошёл я дальше искать Билд. Думаю это Laravel + Mix. Тем более Laravel я ковырял последние пол года.

В любом случае, если я обосрусь во всех программах я напишу Посейдона на чистом PHP. На котором я могу писать без проблем хоть в ебучем блокноте и мне не нужен Microsoft Visual Studio Code. Мне вообще нихуя не нужно, чтобы писать Куны на чистом коде.

Но не забывайте, что если я пишу на чистом PHP то я пидор, чмо и лох. И я нахуй пошёл сразу же. И я не разработчик а долбаёб. Так что ковыряем гигабайтные пакеты дальше. А эту идею отложим на самый крайний вариант
 
Недоверстальщик
, № 1728723
+  2   ( 2)
Итак, срез за сегодня, ещё не закончил работу.

Вот этот виновник:
https://github.com/MokhovEvgeniiGennadevich/FrontE…

Два дня работы забрал, это как раз тот функционал, который позволяет разрабатывать современные шаблоны. Но я его так и не смог запустить.

Вот эти две команды просто виснут. NPM не ставит эти пакеты. Они ставятся "бесконечно". Я уже и ждал и не ждал, искал варианты решения проблемы. Ничего так и не помогло.
sudo npm i -D gulp-imagemin
sudo npm i -D gulp-webp


На GitHub я выложил рабочий билд без поддержки изображений. Он не доработан до финального функционала. Но как есть так и есть. Пофигу.

И что дальше? Дальше я могу попробовать уйти в Laravel + Mix. Или ещё что делать… Пздц полный.
 
Верстальщик
, № 1728683
+  2   ( 2)
Просидел всю ночь за NodeJS + NPM, собирал билд под FrontEnd разработку.
Что он включает:
1. SCSS это новый CSS, который компилируется, старый движок написан с обычным CSS. Этот CSS так же автоматически минифицируется style.min.css
2. Images, они же изображения. Старый движок поддерживает все обычные форматы: jpg, gif, png. Но сейчас распространен такой формат как webp, вот его поддержку я внедрил. Причём конвертация всех изображений происходит автоматически. Обычный JPG -> минифицируется в JPG -> создаётся так же WebP -> у тех браузеров у которых нет поддержки WebP показывается JPG
3. Сборка HTML файлов дизайна движка в единый HTML файл, оптимизированный, сжатый. Что тоже удобно, всё на автомате.
4. Сборка всех JavaScript файлов в единый app.js -> потом мы его так же сжимаем, минифицируем

Но давайте теперь подумаем. На выходе я получаю HTML файл нового дизайна, всякие Картинки, JavaScript и CSS стили. Всё отлично. Только, бля, это нехера не внедрено в PHP

Именно PHP будет отвечать за некоторый функционал сайта, соответственно мне этот дизайн, клёвый и готовый ещё надо портировать в движок. Окей, я его портировал, типо.

А дальше мне надо сделать какое-то изменение. Я опять лезу в NodeJS + NPM, меняю дизайн, потом мне опять надо этот дизайн-шаблон перенести в PHP файлы в движок.

И это похоже на полную ебанину. Я буду дальше рыть билд, мне надо всё это деpьмо автоматизировать. Да, я уже далеко зашёл, это действительно последние технологие, которые используются в Web разработке и которые я в жизни не применял. Но это всё надо ещё раз мозговать.

Ну а теперь финалочка. Застрял то я на том, что NodeJS + NPM сломались на ровном месте. Я уже переустановил их раза 4, они всё-равно каждый раз ломаются. Т.е. проект не компилируется, не билдится, он не собирается. И в чём проблема - одному богу известно.

Так что давайте будем честны. Я установил половину необходимых программ для разработки ФронтЭнда, т.е. фасада сайта. На данный момент это 19 164 файла и 200 mb места. И я не написал ни единой строки самого дизайна кунов. А уже проект из почти 20 000 файлов. Мне кажется что если собрать все порталы, которые я делал на движке White, по играм, по медицине, по психологии, любую хуйню за 10 лет последние, там не наберётся столько файлов.

Вот основная причина, почему я так ненавижу Фреймворки и я так ненавижу современную разработку. Потому, что если что-то ломается, то ты имеешь дело с машиной на 20 тыс. файлов, написанных другими программистами.

Но это стандарт и если я не соблюдаю этот стандарт то я чмо, лох и пидор. Причём это не мои выдумки, это написано на сайтах вакансий и это скажет любой ХэдХантер, который будет меня нанимать. Что либо я программирую на тяжеловестных системах, либо я нахуй иду.

Завтра продолжу.
 
Верстальщик
, № 1728666
+  2   ( 2)
Итак, внезапно весь процесс сейчас переключился на одно направление - вёрстка порталов. Что такое вёрстка? Это стили сайта, оформление, его примитивный html код, расположение элементов и т.д. и т.п. Т.е. внешний вид.

И на данный момент я переношу дизайн ТЕКУЩИЙ кунов. Зачем заново изобретать велосипед, т.е. делать ещё один такой же дизайн? Ответ прост. Люди не любят резких перемен и изменений, по этому новый движок начнётся с того, что на эту платформу мы перенесем старый, привычный всем дизайн.

Естественно дизайн и вёрстка, они не будут тупо скопированы мною, они будут ЗАНОВО разработаны.
По факту сейчас с BackEnd и DevOps я ушёл во FrontEnd разработку. Вот именно столько дерьма мне приходится совмещать, хотя это совершенно разные направления.

Что я сейчас делаю:
1. Адаптивный дизайн.
2. Mobile First методология. Это значит что изначально я делаю Куны под мобильный, а потом расширяю отображение до планшетов и ПК. Это идеальный подход для оптимизации. Ведь на мобильном устройстве порталы должны работать МОЛНИЕНОСНО, а не лагать.

Сейчас изучаю настройку какого-то gulp внутри npm, без понятия что это, но попытаюсь впихнуть в текущую реализацию самые современные frontend разработки. Чтобы всё само рендерилось, обрабатывалось, сжималось, оптимизировалось.

В старом движке Кунов был файл optimise.php который сжимал .js, .css файлы, но он морально устарел. И от подобных идей надо отказываться, потому что меня одного не хватает на то, чтобы писать программный код, верстать, потом писать ещё и программы по оптимизации. В итоге я на что-то из этого забью и это начинает "устаревать". Лучше взять готовые решения от людей, которые каждый день верстают и вкурсе как оптимизировать и минимизировать тот же JavaScript.
 
Без понятия кто я
, № 1728595
+  2   ( 2)
Итак, новости на сегодня. Я в основном проветривал мозги, поздно вернулся, но сразу накидал AutoDeploy скрипт. Короче, объясняю, автодеплой этот отвечает за то, что когда я сделал какие-то изменения, он должен автоматом разослать эти изменения на ВСЕ сервера.

И решение я нашёл простое до нельзя, это банально deploy.sh скрипт, в котором куча комманд rsync, который подключается по ssh с ключём rsa 4096

Т.е. я сижу, работаю. Заливаю всё на GitHub. И мне по факту на этот ГитХаб насрать. Потом в конце работы я просто ввожу одну команду: "bash deploy.sh" и файлы улетают на сервера, сколько бы их не было.

Удобно, сухо и комфортно.

А теперь, помимо кодинга, я должен разобраться с тестами. Желательно чтобы перед релизом обновления у меня были написаны ВСЕ тесты на все части движка, на любые страницы, на любые запросы, на api команды. Чтобы я точно знал, что после деплоя движок не поломается и ничего не слетит. Эта задача так же из разряда "в душе не ебу как это делать".

В теории софт должен проверять:
1. Есть ли база данных, верно ли она указана, есть ли коннект к ней
2. Можно ли развернуть там тестовые таблицы, разворачиваются ли они без ошибок
3. Проверить КАЖДЫЙ вариант страницы сайта. Т.е. главную, пользователей, категории, страницы, поиск, сортировки и т.д. Думаю там штук 100-200 наберётся вариантов.
4. Проверить каждую возможную команду в api интерфейсе. Думаю там будут их тысячи для порталов.

И это нужно сделать обязательно. Так что буду рыть инструмент, ci/cd или просто phpunit или ещё что. И писать гору тестов прямо во время того, как я пишу код.

Так что GitHub репозеторий пока что оставляем, пусть живёт:
https://github.com/MokhovEvgeniiGennadevich

И работаем дальше. Я очень рад что решил вопрос с деплоем проекта через bash. Потому, что эта проблема гемороила меня годами. Почему мне так нравится именно этот вариант? Да потому, что никакой Гитхаб или любая другая залупа не знает на какие сервера льётся код. А это супер безопасно. Код льётся прямо с моего рабочего ПК туда, куда надо, через всякие VPN, а в дальнейшем и TOR.

Параллельно ищу работу прогером. Мне нужен рублёвый КЭШ чтобы из-за трат не сдохнуть с голоду и не обанкротиться.
 
Страницы

Дополнительные поля (не обязательны):




Смайлики:   Аниме    Кролики    Мишки    Колобки    Мэмы    K-Pop Девочка    Скрыть