Місцевий розвиток Ляльковий з Geppetto і VMware

У даній статті описуються місцеві середовище розробки і робочий процес, який я використовую для розробки та тестування декількох конфігурацій системи, які управляються лялькового. VMWare Workstation використовується для запуску локального ляльковод і тест вузла з '/ і т.д. / маріонетка »на Майстра зіставлений робочої станції Geppetto, розташованому на моєму локальному комп'ютері.

Цілі

Ефективне і дієве розвиток ляльок-налаштовані системи вимагає частої інтеграції та тестування: Ляльковий написаний вами код повинен негайно з'явитися на Ляльковий Майстер і бути застосовані до різних вузлів містить тест-системи.

Як це працює?

Я використовую Windows, як мій локальної робочої станції. Маріонеткового проявляється зберігаються в репозиторії коду, таких як Subversion або Git. Geppetto є IDE. VMware Workstation забезпечує віртуальні сервери для локального Господаря Маріонеток і одного або декількох вузлів тестування, що імітують конфігурації з декількома комп'ютерної системи.

Використання Geppetto, Ляльковий код витягли в локальній робочої області на моєї робочої станції для Windows. VMware Workstation робить це "Geppetto Workspace" доступних для лялькового майстра віртуального сервера. Це монтаж виробляється "тільки для читання", як особисті уподобання. Я СОФТЛІНК на '/ і т.д. / ляльковий' каталог на майстер ляльок на це змонтованої файлової системи.

Будь-які зміни в коді, що я тепер встановити за допомогою редактора Geppetto відразу з'явиться на місцевому Господарем Маріонеток. Зверніть увагу, що я ще не зареєструвалися будь-якого коду. Вся ця робота розвитку є локальною для моєї робочої станції.

Регрес і функціонального тестування здійснюється запуск Ляльковий агентів на різних вузлах випробувань. Я часто відновити перевірки вузла до базової знімка для того, щоб перевірити Ляльковий маніфест ретельно.

У цьому підході, Код-перевірка завершилася швидко і дає більше гарантій того, що я врешті-решт код реєстрації буде досягти успіху в обох голими сценарієм металу, а також додаткових патч для вже запущеного середовища.

Після реєстрації, Код розгортається на якості навколишнього середовища і в кінцевому підсумку на робочому сервері.

Як його будувати

Загального доступу до папок VMware є єдиним важким кроком у досягненні цієї місцевої середовища розробки. Ось як це зробити.

Створення віртуального сервера на роль місцевого майстра лялькового

Я створюю базі Debian віртуальній машині використовувати як ляльковод. Створення ляльок Каталог значні ресурси пам'яті, так що я виділити більш ніж достатньо пам'яті, 2Гігабайт.

Налаштування локальної робочої Geppetto в
Enable "Folder Sharing" in the Options tab for the Puppet master virtual machine.

Включити "Загального доступу до папок" на вкладці Параметри для лялькового майстра віртуальної машини.

Ляльковий репозиторій коду витягнутий Geppetto до локальної робочої області на робочій станції. Цей каталог буде використовуватися на наступній стадії, налаштування загального доступу до папок.

Включення загального доступу до папок на VMworkstation

Включення загального доступу до папок на вкладці Параметри ляльковод віртуальної машини і виберіть ту ж папку, що використовуються Geppetto коли він створює свою локальну робочу репозиторій коду.

Встановіть VMware Tools в Puppet Master Virtual Machine

Після запуску ляльковод віртуальної машини, Ви побачите повідомлення з нагадуванням нижче:

VMware Reminder Message to Install Tools in Guest OS

VMware нагадування Повідомлення установці засобів в гостьовій ОС

Монтувати компакт-диски за допомогою 'гора / Dev / компакт-диск /' команду зсередини гостя, розпакувати архів VMwareTools а потім виконайте команду. / VMware-install.pl '.

Якщо ви бачите повідомлення про помилку нижче, то вам необхідно вжити додаткових заходів, щоб зробити установку, GCC і заголовки ядра для гостя.

Required Packages Preventing the Installation of VMware Tools.

Необхідні пакети перешкоджає установці VMware Tools.

У Debian ці пакети встановлюються за допомогою команди:

здатність установки GCC libglib2.0-0 зробити Linux-заголовків-UNAME ``-R-Y

При використанні VMware Workstation 7, Вам може знадобитися вказати повний шлях до GCC-4.3 пакета, як показано нижче:

Specifying the full path to gcc-4.3: /usr/bin/gcc-4.3 in Debian.

Вказівка ​​повного шляху до GCC-4.3: /usr/bin/gcc-4.3 в Debian.

Також, Вам може знадобитися вручну вказати розташування заголовків ядра. У моїй віртуальній машині, вони знаходяться в "/ usr/src/linux-headers-2.6.32-5-686/include '. Це буде різним для вашого комп'ютера:

KernelHeaders

Розміщення заголовків ядра

VMware Tools Тепер можна скомпілювати і відображення повідомлення про успішне показано нижче:

Successful Compilation of VMware Tools.

Успішної компіляції VMware Tools.

Зв'язок / і т.д. / маріонетка файлсістем

Щоб дозволити ляльковод використовувати модулі зберігаються на загальній папці, Найпростіше замінити '/ і т.д. / ляльковий' каталог з СОФТЛІНК до змонтованої файлової системи, як показано на нижче команду:

Replacing the Puppet Directory with a Softlink to the Mounted Filesystem.

Заміна Ляльковий ДОВІДНИК підприємств з м'яку посилання на змонтованої файлової системи.

Тепер ми можемо підтвердити, що '/ і т.д. / ляльковий' Каталог на ляльок майстер віртуальної машини виявляється тільки для читання монтаж робочої області Geppetto на локальній робочої станції, як показав тест нижче:

Testing the Setup

Тестування установки

18 червня, 2013 Опубліковано Джон Jaroker Поданий в: Лялькові Робочі процеси