Зачем нам нужен ci/cd? Не знаю. Спрошу Chat GPT 3.5. Действительно, без CI/CD задача развертывания кода выглядит не так уж просто. Нужно каждый раз при вношении изшменений заходить на сервер, подтягивать и перезапускать. Простая реализация Для демонстрации процесса ci/cd я решил развернуть простое nodejs приложение с github actions. Эту платформу я выбрал как решение от самого популярного сервиса для хранения кода. Репозиторий: https://github.com/aintproud/node_ci Делаем приложение const http = require('http');
const server = http.createServer((req, res) => {
res.statusCode = 200;
res.setHeader('Content-Type', 'text/plain');
res.end('Hello, World! Finnaly? Yeah!');
});
const port = 3000;
server.listen(port, () => {
console.log(`Server running at http://localhost:${port}/`);
}); Это самый простой сервер на nodejs. Запускаем на localhost:3000, на запрос получаем Hello, World! Finnaly? Yeah! Пишем deploy.yml Делаем папку .github/workflows и в ней deploy.yml name: Self-Hosted