Делаешь скрипт, в котором перечисляешь все операции от рута
Добавляешь в судоерс права пользователю деплой на запуск данного скрипта
deployer ALL = (root) NOPASSWD: /path/to/my/program
Дергаешь скрипт из CI
Тут другое плохо - можешь "не заметить", что скрипт криво отработал и у тебя на продакшене ничего нет
Так что руками делать все равно придется