Asdqwert
Всем привет есть пара баш скриптов и yaml файлы для разворачивания K3s и всяких сервисов в нём.
Есть задача запаковать всё это в какой-то один пакет, который потом можно переслать, возможно ещё и передавать ему на вход какие-то параметры для конфигурации, но никак не соображу во что лучше запаковать.
В идеале мне это видится, как Go бинарник, который при его запускее распаковывает содержимое в /tmp и запускает всё это оттуда, но что-то не пойму как это всё упаковать в такое и вообще можно ли.
Какие ещё могут быть варианты или если можно в тот же Go, то как это реализовать?
Запокавать всё своё добро(файлы, пакеты, скрипты и т.д.) в один bash скрипт.
Упрощенно.
1. просто навсего берешь архивируешь что надо развернуть, например в формате gz.
2. Делаешь bash скрипт
instal.sh, в котором расписываешь как и что будет разворачиваться.
3. cat ./archiv.gz >> дописываешь в конец
install.sh4. Возвращаясь к пункту 2 скрипт
Install.sh читает самого себя, и с какой то строки перенапрявляет в файл archiv.gz, далее уже распаковка и всё остальное что ты хотел бы.
Например инсталятор Acronis для linux сделан точно также, это один bash-файл, в конец которого запакованы файлы.