Здесь показаны различия между двумя версиями данной страницы.
eaze:установка [2011/09/12 00:19] sergeyfast создано |
eaze:установка [2011/09/12 13:07] (текущий) sergeyfast |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
====== Установка ====== | ====== Установка ====== | ||
- | * Перейти в каталог D:\documents\projects\php | ||
- | * Выполнить svn checkout http://svn.1adw.com/репозиторий/проект (слова репозиторий и проект заменить на нужные) | ||
- | * Перейти в папку проекта D:\documents\projects\php\имя_проекта | ||
- | * Создать в этой папке, папку docs; | ||
- | * Скопировать в папку docs файл create-from-template.sh; | ||
- | * Запустить create-from-template.sh ( __для запуска необходим Cygwin__ ) c параметром mysql или pgsql; команда для запуска ./create-from-template.sh pgsql ( создаст проект для работы с базой Postgress ) | ||
- | //Ошибка : "svn: Repository moved temporarily to 'https://svn.1adw.com/Eaze/weblib/Project.site' please relocate" – проверьте правильность написания команды, чтобы в ней не было лишних пробелов.// | ||
- | //Ошибка : "Сопоставление между именами пользователей и идентификаторами безопасности не было произведено". Необходимо в ручную выставить права для папок:// | + | ===== Создание проекта из шаблона ===== |
- | a) Cache | + | Существует несколько вариантов развертывания проекта, самый распространенный - это создание проекта из стандартного проекта в svn. |
- | b) Shared/temp | + | |
- | c) Shared/files | + | * Перейти в каталог ''D:\Documents\Projects\PHP'' |
+ | * Выполнить ''svn checkout http://path/to/repo/project'' | ||
+ | * Перейти в папку проекта ''D:\Documents\Projects\PHP\<Project>'' | ||
+ | * Создать в этой папке папку ''docs'' | ||
+ | * Скопировать в папку docs файл ''create-from-template.sh'' ((Если вы хотите, чтобы проект работал без svn, запустите файл create-from-template-imports.sh)) из Eaze/trunk/docs/create-from-template.sh; | ||
+ | * Запустить create-from-template.sh ( __для запуска необходим Cygwin__ ) c параметром mysql или pgsql; команда для запуска ''./create-from-template.sh pgsql'' (создаст проект для работы с базой PostgreSQL) | ||
+ | |||
+ | Если возникла ошибка //"Сопоставление между именами пользователей и идентификаторами безопасности не было произведено"//, то необходимо в ручную выставить права для папок | ||
+ | * cache | ||
+ | * shared/temp | ||
+ | * shared/files | ||
- | **Для этих папок выставить права для пользователя:** | + | Для этих папок выставить права для пользователя: |
<code> | <code> | ||
Everyone - RW ( чтение и запись ) – англ. Windows; | Everyone - RW ( чтение и запись ) – англ. Windows; | ||
Строка 20: | Строка 23: | ||
</code> | </code> | ||
| | ||
+ | После удачного запуска скрипта развертывания проекта, необходимо настроить файл settings.xml | ||
+ | |||
**Внести изменения в файл settings.xml в папке docs;** | **Внести изменения в файл settings.xml в папке docs;** | ||
Строка 42: | Строка 47: | ||
%mail_charset % - кодировка писем; | %mail_charset % - кодировка писем; | ||
</code> | </code> | ||
- | * Запустить Eaze.PrepareProject.exe | + | * Запустить ''Eaze.PrepareProject.exe'' |
- | * Выполнить svn commit проекта | + | * Удалить в папке web/etc/locale ненужные файлы. Оставить ru.xml |
- | * Выполнить update проекта | + | * Выполнить ''svn commit'' проекта |
- | * Перйти в каталог docs; | + | * Выполнить ''svn update'' проекта |
- | * Отредактировать, а затем запустить create-hosts.bat; | + | * Перйти в каталог ''docs''; |
- | * Отредактировать, а затем запустить rebuild-database.bat; | + | * Отредактировать, а затем запустить ''create-hosts.bat'' (если у вас не стандартная установка); |
- | * Заполнить: | + | * Отредактировать, а затем запустить ''rebuild-database.bat'' (если у вас не стандартная установка); |
- | * PGSQL_ROOT = “%db_root%” путь к каталогу bin СУБД; | + | |
- | * DATABASE_NAME = “%db_name%” – имя бд; | + | |
- | * DATABASE_USER = “%db_user%” – пользователь | + | |
- | * Удалить в папке web/etc/locale не нужные файлы. Оставить ru_u.xml | + | |
===== Развертывание системы на удаленной машине ===== | ===== Развертывание системы на удаленной машине ===== | ||
- | ==== Удаленная машина ==== | + | На удаленной машине должен быть установлен rsync + ssh или rsyncd. |
- | * rsync + ssh или rsyncd | + | |
==== Развертывание проекта с нуля ==== | ==== Развертывание проекта с нуля ==== | ||
Строка 67: | Строка 66: | ||
- Перейти в каталог Deploy и взять проект из репозитория | - Перейти в каталог Deploy и взять проект из репозитория | ||
* cd Deploy | * cd Deploy | ||
- | * cvs -d :pserver:LOGIN@HOST:REPOSITORY login | + | * svn checkout http://path/to/repository/project |
- | * cvs -d :pserver:LOGIN@HOST:REPOSITORY checkout MODULE | + | |
- | * cvs -d :pserver:LOGIN@HOST:REPOSITORY checkout -r BRANCH MODULE //(опционально)// | + | |
- Перейти в папку с файлом Makefile | - Перейти в папку с файлом Makefile | ||
- | * cd MODULE | + | * cd <project> |
* ls | * ls | ||
- | * cd current | ||
- Совершить deploy | - Совершить deploy | ||
* make sync deploy layout=devel | * make sync deploy layout=devel | ||
Строка 79: | Строка 75: | ||
==== Проблемы с выливкой ==== | ==== Проблемы с выливкой ==== | ||
- | Здравствуйте, коллеги. | + | Иногда возникают проблемы с выливкой по rsync - после выливаний хосты ложатся на лопатки... |
- | + | ||
- | У некоторых из нас бывают проблемы с выливанием по rsync. | + | |
- | После наших выливаний хосты ложатся на лопатки... | + | |
Проблема заключается в правах у папки проекта в папке deploy. | Проблема заключается в правах у папки проекта в папке deploy. | ||
- | + | К примеру, если Вы хотите вылить вылить Switch: | |
- | К примеру, хочу вылить проект Switch. Делаю: | + | |
Administrator@nancy /cygdrive/d/www/deploy | Administrator@nancy /cygdrive/d/www/deploy | ||
$ svn checkout http://svn.1adw.com/ifmo/Switch | $ svn checkout http://svn.1adw.com/ifmo/Switch | ||
- | В итоге права у меня на папку выглядят так: "drwxr-xr-x+" (все нормально). | + | В итоге права на папку выглядят так: "drwxr-xr-x+" (все нормально). |
- | Если же я сделаю checkout через TortoiseSVN, то права будут такими: | + | Если же сделать checkout через TortoiseSVN, то права будут такими: |
"d---------+" (все ужасно). | "d---------+" (все ужасно). | ||
- | Решение №1 - правильное: | + | === Решение №1 - правильное: === |
Чекаутить проекты в deploy через консоль. | Чекаутить проекты в deploy через консоль. | ||
- | Решение №2 - приемлимое: | + | === Решение №2 - приемлимое: === |
Проставить правильные права. | Проставить правильные права. | ||
Строка 104: | Строка 97: | ||
$ chmod -R 777 Switch/ | $ chmod -R 777 Switch/ | ||
- | Решение №3 - для задротов: | + | === Решение №3 - для задротов: === |
- | 1. Открываем makefile в проекте | + | |
- | 2. Ищем вызов команды "rsync -Cavuz -e " | + | - Открываем makefile в проекте |
- | 3. Добавляем туда параметр "--chmod=ugo=rwX" | + | - Ищем вызов команды "rsync -Cavuz -e " |
- | 4. Коммитим файл. | + | - Добавляем туда параметр "--chmod=ugo=rwX" |
+ | - Коммитим файл. | ||