В настоящее время я нахожусь в состоянии, что тестирование стоит мне денег и много времени ...
Предыстория: я развертываю виртуальные машины на программном уровне и использую сценарий после развертывания (bash), который установит все необходимые мне программы после того, как виртуальная машина будет готова. Проблема в том, что я могу протестировать этот сценарий только путем развертывания одной виртуальной машины, и в настоящее время для завершения сценария требуется около 4 часов ... Таким образом, каждое внесенное мной изменение требует создания новой виртуальной машины (стоит денег) и ожидания около 4 часа, чтобы увидеть, сломан сценарий или нет ... Это становится хаотичным, и я не смогу двигаться вперед, если останусь таким.
Мне нужен новый подход к такой ситуации и возможность быстрее тестировать сценарий инициализации, не требуя каждый раз развертывать новую виртуальную машину.
Ребята, вы знаете какой-нибудь инструмент, который поможет мне в этом сценарии?
источник
Ответы:
Я вижу несколько вариантов:
Все эти инструменты делают гораздо больше, чем вам нужно, но все они дают вам возможность постепенно выполнять свою работу. Насколько мне известно, Vagrant, Ansible и Docker довольно просты в изучении (пока вы находитесь в режиме Dev / Test, «интересные» части начинаются, когда вы начинаете работать). Ansible очень минималистичен и не требует ничего, кроме ssh-соединения. Вы скоро увидите, что Vagrant и Docker могут оказаться неосуществимыми в вашей инфраструктуре.
источник
http://www.vagrantup.com
Вы можете использовать vagrant для развертывания виртуальных машин на локальном ноутбуке.
Вы также можете проверить, можно ли разбить скрипт на более мелкие части, чтобы его тестирование не заняло четырех часов.
источник
Если локальное тестирование не вариант, то самым простым подходом было бы использовать моментальные снимки / резервные копии тома диска в ваших интересах. Они все равно будут стоить $$$, но сэкономят ваше время в долгосрочной перспективе. Затем вы должны разделить ваш bash-скрипт на разные рабочие сегменты / скрипты, которые можно протестировать индивидуально. Как только ваш сервер подготовлен, запустите скрипт, а затем сделайте снимок. Если все прошло успешно, запустите следующий скрипт, сделайте снимок, затем промойте и повторите. В случае сбоя сценария измените сценарий, вернитесь к последнему удачному снимку и повторите попытку.
ПРИМЕЧАНИЕ: я не уверен, что вы можете делать снимки дисков виртуальных машин в IBM Cloud / Softlayer, но похоже, что вы можете создать образ виртуальной машины довольно легко.
https://www.ibm.com/support/knowledgecenter/en/SST55W_4.1.0/liacb/liacbsaverestorevsvmw.html
источник