понедельник, 17 мая 2010 г.

Заметки по Oracle VM

Запуск виртуальной машины:
 $ $ xm create имя_файла_конфига
Например:
 $ xm create /OVS/running_pool/nb/nb.cfg  

Остановка виртуальной машины:
 $ xm shutdown имя_машины
Например:
 $ xm shutdown nb

Запущенные виртуальные машины:
 $ xm list 

Запущенные виртуальные машины (с метриками):
 $ xm top

Для создания новой виртуальной машины выполнить команду и ввести все запрашиваемые конфигурационные данные:
 $ virt-install

Для развертывания виртуальной машины из gz в LVM:
 $  gunzip -d < путь_к_файлу_gz | dd bs=1048576 of=LVM_volume
Например:
 $ gunzip -d < /software/oracle_vm/win2k3_ready_for_apps/ng.20090526.gz | dd bs=1048576 of=/dev/vg0/lv2

Для загрузки виртуальной машины с ISO необходимо изменить конфигурационный файл виртуальной машины:
1. Значение переменной disk:
 disk = [ 'phy:/dev/vg0/lv2,hda,w','file:/путь_к_iso,hdc:cdrom,r']
например:
 disk = [ 'phy:/dev/vg0/lv2,hda,w','file:/software/Acronis/Acronis.iso,hdc:cdrom,r']
2. Добавить параметр boot:
 boot='d' #(если cdrom в параметре disk идёт за hda)
3. Запустить виртуальную машину и подключиться к ней по VNC.

Для уменьшения диска на гостевой Windows-машине расположенной в LVM:
1. Уменьшить раздел так чтобы на диске(внутри гостевой машины) в конце осталась неразмеченная область(не должно быть вообще разделов) - на её размер можно и уменьшать.
2. Выключить виртуальную машину.
3. Зайти в lvm и выполнить изменение раздела:
 $ lvm
 $ lvresize -L итоговый_размер_раздела раздел
Например:
 $ lvresize -L 20G /dev/vg0/lv4
4. Запустить виртуальную машину.

Для увеличения диска на гостевой Windows-машине расположенной в LVM:
1. Выключить виртуальную машину.
2. Зайти в lvm и выполнить изменение раздела:
 $ lvm 
 $ lvresize -L итоговый_размер_раздела раздел
Например:
 $ lvresize -L 90G /dev/vg0/lv4
3. Запустить виртуальную машину.
4. С помощью утилит (например: Paragon Partion Manager или GParted) увеличить существующий раздел за счёт неразмеченного в конце диска.

четверг, 15 апреля 2010 г.

Динамические события в Application Express 4.0 (на пошаговом примере приложения)

Динамические события - одна из новинок Oracle Application Express 4.0. Декларативный интерфейс для JavaScript-событий (например: скрыть и показать элемент, активировать и деактивировать его, выполнить JavaScript-функцию при наступлении определённого события).

  1. Создадим страницу с тремя элементами: textfield, date picker и textarea:
  2. Создадим динамическое событие. Для этого:
  3. Выбираем тип динамического события - Standard:
  4. Назначаем событию имя:
  5. Определяем условие при котором будет выполняться событие:
    где событие (Event) элемента (Selection Type->Item, Region,jQuery Selector, DOM Object) при котором будет выполнено условие (Condition);
  6. Определяем тип события (например: Enable / Disable):
  7. Определяем к какому элементу(региону...) применяем данный тип события и создаем событие:
  8. Запускаем страницу:
  9. Вводим "No" в поле X1 и переходин на другое поле:
    Динамическое событие отработало и поле X2 стало активным.
  10. Аналогично создаем ещё одно динамическое событие, только выбираем тип Advanced (см. шаг 3), имя (например: Action2) и условие при котором будет выполняться событие:
  11. Выбираем тип события (в advanced их несколько больше) - в нашем случае выбираем JavaScript Code:
  12. Вводим имя функции (мы для теста будем использовать стандартную alert()):

  13. Завершаем создание динамического события и запускаем страницу.
  14. Вводим в поле X3 значение "testing..." и переходин на другое поле:
    Динамическое событие отработало и видим сообщение(результат функции alert)

Возможности командной разработки в Application Express 4.0

Разработчик отслеживает features, to do's, milestones и bugs. Конечный пользователь оставляет feedbacks, которые могут быть собираться и конвертироваться в features, to do's и bugs.

Основные компоненты:

  • News (Новости)
  • Features
  • Milestones (Контрольные точки)
  • To do's (Задачи)
  • Feedback (Отзывы)
  • Bugs (Баги)

News (Новости)



News предоставляет место для общедоступной информации в Workspace. Новости отображаются на домашней странице Workspace. Разработчик может как просмотривать, так и проводить поиск по новостям.

Features


Features отслеживают имплементацию функциональности приложения. Features могут быть организованны по релизам, назначенны на разработчика, теггированны (tagged) и ассоциированны с контрольными точками. Все изменения в features логгируются, так что можно посмотреть «Что изменено?», «Кто изменил?», «Когда изменил?», старое и новое значение(-я).
  • Отслеживание features по релизам
  • Назначениие features на разработчиков
  • Ассоциация статуса с контрольными точками
  • Ассоциация features с задачами (to do’s)

Milestones (Контрольные точки)

Milestones (контрольные точки) используются для определения сроков(дат) в каждой фазе проекта. Контрольные точки являются опциональными, но однако являются крайне полезными средствам для отслеживания прогресса разработки. To do’s, bugs и features могут быть ассоциированны с milestones.
  • Огранизация контрольных точек каждой фазы проекта и проекта в целом
  • Ассоциация и отслеживание контрольных точек совмесно с bugs, features и to do’s

To do's (Задачи)

Задачи – это элементы, которые могут быть назначенны, приоритизированны (prioritized), тэггированны(tagged) и отслеживаемы.
  • Назначение и отслеживание задач по разработчикам
  • Ассоциация задач по страницам приложения
  • Управление задачами требуется для завершения feature

Feedback (Отзывы)


  • Интегрирован в APEX приложения
  • Автоматически сохраняет session state пользователя написавшего feedback
  • Трансформация в Features, To-Dos или Bugs
 

Bugs (Баги)



Встроенный в APEX багтрекер.
  • Отслеживание багов по разработчикам, релизам, контрольным точкам и страницам приложения
  • Создание багов на основе feedback предоставляемых конечными пользователями
  • Управление и отчетность по багам