среда, 22 января 2014 г.

Drupal 7 - добавляем новый сайт к мультисайтингу

В Апаче подкрутим конфиги для нового сайта (выходит за тему статьи - поэтому кратко)
В /etc/apache2/sites-available скопируем конфиг какого-нибудь сайта под новым именем и отредактируем его и т.д. и т.п. Добавим симлинк в sites-enabled и скажем апачу перечитать конфиги.

Создаем новую базу под новый сайт и пользователя. Либо из консоли mysql, либо какой-нибудь php-утилитой.
CREATE DATABASE `_новая_база_` CHARACTER SET utf8 COLLATE utf8_general_ci;
GRANT ALL PRIVILEGES ON _новая_база_.*  TO _пользователь_@localhost IDENTIFIED BY '_пароль_';

Идем по ssh на сервере (ftp и пр. будет немного отличаться - но суть одна) в ваш друпаловский public/sites и дальше два варианта:

1. Копируем какой-нибудь каталог с подходящим сайтом под именем нового домена.
cp -r  _имеющийся_сайт_    _новый_сайт_
затем заходим в каталог с новым сайтом и вычищаем все лишнее кроме settings.php, его открываем на редактирование и правим в соотв. со своими желаниями. Чаще всего это секция databases и параметры database, username, password, prefix. Остальное меняется по мере желания и понимания происходящего.

2. Создаем каталог для нового сайта (имя домена) и туда копируем default.settings.php после чего его переименовываем в settings.php и редактируем как в способе 1.

Теперь по сути далее пошла работа с друпалом.
Открываем в браузере http://_новый_сайт_/install.php и понеслось по инструкциям, коих хватает в сети.
Standard + Save and continue
English (built-in) + Save and continue
возможно потребуется вручную создать каталог sites/_новый_сайт_/files 
Заполняем данные о сайте и готово!

понедельник, 20 января 2014 г.

IntelliJ IDEA и Git

Все это актуально для IntelliJ IDEA 13

Скачать имеющийся на сервере репо достаточно легко

VCS -> Checkout from Version Control - выбираем Git

В "Git Repository URL"  вбиваем урл до git-репо - что-то вроде git@_сервер_:_репо_
Можно для верности протестировать кнопочкой тест - после возможного вопроса о добавлении сервера должно написать:
Connection to repository .... has been successful.
Значит все гут.

Далее проверяем/заполняем/исправляем Parent Directory и Directory Name - т.е. где собственно говоря будет лежать проект.

Затем жмем кнопку Clone
Нас спросят хотим ли мы создвать проект из клона:
Would you like to create an IDEA project for the sources you have checked out to
Жмем Yes - иначе зачем нам вообще все это нужно.

Далее откроется окно Import Project и в нем Create project from existing sources
жмем Next если нужно меняем имя проекта и его расположение и снова Next

На следующем шаге выбираем каталог с исходниками и снова Next

Теперь корректируем библиотеки - Next

Теперь модули - Next

Выбор SDK - Next

Фрэймворки - Next

Вопрос в каком окне открыть вновь созданный проект
И на этом все, закончили.


Теперь как создать в IDEA новый репозиторий и закачать его на сервер.


Как добавить новый репозиторий в конфиги git на сервере и пользователя - оставим за рамками данной статьи - примем за данность, что оно (репо, ключи и т.п.) у нас уже все есть.

Итак у нас имеется проект в IDEA - надо добавить ему поддержку git

Необходимо выбрать в меню VCS -> Enable Version Control Integration... затем в выпадающем списке выбрать Git и Ok.

Добавим файлы нашего проекта в локальный репо
меню - VCS -> Git -> Add или Ctrl+Alt+A

теперь можно создать коммит изменений в локальном репо
меню - VCS -> Git -> Commit Directory
тут можно выбрать что из всего мы будем добавлять, добавляем осмысленный комментарий в Commit Message и затем жмем кнопку Commit
может выскочить сообщение от Code Analysis - если криминала нет - жмем опять же Commit

можно посмотреть историю коммитов
меню - VCS -> Git -> Show History

Осталось лишь настроить выгрузку (push) на сервер. И вот тут IDEA спасовала, во всяком случае Community Edition - нет такой настройки вообще.

Для случая с linux идем в каталог с проектом и уже там выполняем:
git remote add origin git@_сервер_:_репо_
git push origin master

Теперь уже из IDEA можно выполнять push - при первом выполнении создаст нужные записи о master  и т.п. или сначала выполнить настройку через меню VCS -> Git -> Branches... -> Remote Brances -> origin/master -> Checkout as new local branch

воскресенье, 19 января 2014 г.

Gitolite и Debian 7

Устанавливаем и настраиваем.

apt-get install git-core gitolite

заводим пользователя под именем git

adduser git

берем наш ключик на локальной машине из ~/.ssh/id_rsa.pub и копируем его на сервер в /home/git под именем gitadmin.pub

переключаемся на сервере на пользователя git

su - git

и запускаем установку


gl-setup gitadmin.pub
(в новых версиях gitolite setup -pk gitadmin.pub)

откроется редактор - если хочется что-то изменить - меняем.

теперь с локальной машины можно проверить подключение

ssh git@_ваш_сервер_ -T

в ответ должно быть что-то вроде

hello gitadmin, this is gitolite 2.3-1 (Debian) running on git 1.7.10.4
the gitolite config gives you the following access:
     R   W     gitolite-admin
    @R_ @W_    testing

удаляем на сервере ранее скопированный ключик gitadmin.pub - он уже добавлен и больше не нужен.

Дальше как обычно почти так же как и для gitosis получаем конфиги на локальной машине и работаем с ними

git clone git@_ваш_сервер_:gitolite-admin

правим конфиг - добавляем пользователей, репо и т.п. и все это заталкиваем обратно на сервер

git commit -am "комментарии и пояснения"
git push