Your Site Master

Главная | Actual Topics | Обратная связь | Guest Book | В избранное | Сделать домашней
Категории
 Новости разработчиков CMS
 Новости форумов
 Скрипты для сайтов
 Новости разработчиков сайтов
 Новости дизайнеров
 CMS Блоги
 Блоги о сайтостроении
Календарь

January, 2018
ПнВтСрЧтПтСбВс
1234567
891011121314
15161718192021
22232425262728
293031
Опросы
Какую CMS Вы используете для Вашего сайта?

SLAED
Drupal
WordPress
DataLife Engine
1С-Битрикс
TYPO3
Ucoz
Joomla
Amiro CMS
HostCMS
CMS Made Simple
NetCat


Результаты
Другие опросы

Всего голосов: 244
Комментарии: 0
Ссылки

Архив Новостей
  January 2018 (3)
  December 2017 (15)
  November 2017 (13)
  October 2017 (14)
  September 2017 (20)
  August 2017 (15)
  July 2017 (1)
  June 2017 (1)
  April 2017 (3)
  February 2017 (13)
  January 2017 (15)
  December 2016 (23)
  November 2016 (19)
  October 2016 (19)
  September 2016 (19)
  August 2016 (19)
  July 2016 (17)
  June 2016 (23)
  May 2016 (11)
  April 2016 (18)
  March 2016 (20)
  February 2016 (19)
  January 2016 (16)
  December 2015 (22)
  November 2015 (19)
  October 2015 (21)
  September 2015 (14)
  August 2015 (16)
  July 2015 (22)
  June 2015 (22)
  May 2015 (9)
  April 2015 (6)
  March 2015 (6)
  February 2015 (9)
  January 2015 (8)
  December 2014 (8)
  November 2014 (7)
  October 2014 (7)
  September 2014 (8)
  August 2014 (8)
  July 2014 (8)
  June 2014 (7)
  May 2014 (7)
  April 2014 (11)
  March 2014 (8)
  February 2014 (9)
  January 2014 (7)
  December 2013 (17)
  November 2013 (20)
  October 2013 (25)
  September 2013 (20)
  August 2013 (20)
  July 2013 (27)
  June 2013 (25)
  May 2013 (28)
  April 2013 (32)
  March 2013 (24)
  February 2013 (25)
  January 2013 (28)
  December 2012 (33)
  November 2012 (36)
  October 2012 (29)
  September 2012 (36)
  August 2012 (38)
  July 2012 (31)
  June 2012 (35)
  May 2012 (30)
  April 2012 (41)
  March 2012 (57)
  February 2012 (38)
  January 2012 (43)
  December 2011 (63)
  November 2011 (41)
  October 2011 (39)
  September 2011 (63)
  August 2011 (62)
  July 2011 (52)
  June 2011 (48)
  May 2011 (66)
  April 2011 (54)
  March 2011 (51)
  February 2011 (63)
  January 2011 (45)
  December 2010 (73)
  November 2010 (62)
  October 2010 (59)
  September 2010 (69)
  August 2010 (63)
  July 2010 (48)
  June 2010 (50)
  May 2010 (58)
  April 2010 (84)
  March 2010 (95)
  February 2010 (83)
  January 2010 (55)
  December 2009 (99)
  November 2009 (104)
  October 2009 (98)
  September 2009 (100)
  August 2009 (73)
  July 2009 (97)
  June 2009 (106)
  May 2009 (79)
  April 2009 (36)
  March 2009 (30)
  February 2009 (15)
  January 2009 (20)
  December 2008 (21)
  November 2008 (23)
  October 2008 (15)
  September 2008 (11)
  August 2008 (6)
  July 2008 (12)
  June 2008 (9)
  May 2008 (6)
  April 2008 (18)
  March 2008 (28)
  February 2008 (4)
  December 2007 (4)
  November 2007 (1)
  September 2007 (2)
  August 2007 (2)
  July 2007 (6)
  June 2007 (3)
  May 2007 (7)
  April 2007 (2)
  March 2007 (1)
  February 2007 (2)
  December 2006 (1)
  November 2006 (2)
  October 2006 (3)
  September 2006 (2)
  July 2006 (2)
  June 2006 (3)
  May 2006 (1)
  April 2006 (1)
  March 2006 (1)
  February 2006 (2)
  January 2006 (2)

Прощай Drush Make, Привет Composer!

Новости разработчиков программного обеспечения (CMS) для построения сайтов

немного вольный перевод статьи:
https://www.lullabot.com/articles/goodbye-drush-make-hello-composer
от Karen Stevenson
Karen Stevenson

Чтоб попробовать новые модули, темы Drupal 8, экспериментировать с новым функционалом, таким как миграции, мною строено-перестроено множество демо-сайтов на Drupal 8. После длительных ручных установок Drupal 8, решено было сеть и выяснить - как упростить это, создавая новые Drupal сайты с помощью Composer.
Это на самом деле очень удобный путь, подобный тому, как мы использовали Drush Make раньше; что-бы не хранить у себя код ядра и сопутствующих модулей Drupal, вы просто указываете, какие их версии вам нужны, и получаете их автоматически

Меня немного беспокоила перспектива смены привычного процесса, но мои опасения не оправдались. Тем, кто привык к Drush, скорей всего будет просто разобраться и с этим.

МНОГАБУКВ-НИЧИТАЛ*: Как в чистой директории, парой команд развернуть полностью функциональный Drupal сайт.

composer create-project drupal-composer/drupal-project:~8.0 drupal --stability dev --no-interaction
cd drupal/web && ../vendor/bin/drush site-install --db-url=mysql://{username}:{password}@localhost/{database}

Установка Composer
Первый шаг - это установка Composer в вашей локальной системе.
Поглядите https://getcomposer.org/download/ для получения информации о том, как установить Composer.

Настройка проекта с Composer
Для создания нового Drupal проекта используя Composer, выполните следующие команды, где /var/drupal требуемое месторасположение кода:

cd /var
composer create-project drupal-composer/drupal-project:~8.0 drupal --stability dev --no-interaction

В процессе сборки загрузятся все модули ядра, Drush и Drush Console, затем весь Drupal код будет помещен в поддиректорию web. Сторонний код будет помещен в vendor вне корневой web директории. Новая файловая структура выглядит следующим образом:

файловая структура

В конечном итоге, вы получаете в основе проекта composer.json файл, который выглядит следующим образом.

{
    "name": "drupal-composer/drupal-project",
    "description": "Project template for Drupal 8 projects with composer",
    "type": "project",
    "license": "GPL-2.0+",
    "authors": [
        {
            "name": "",
            "role": ""
        }
    ],
    "repositories": [
        {
            "type": "composer",
            "url": "https://packagist.drupal-composer.org"
        }
    ],
    "require": {
        "composer/installers": "^1.0.20",
        "drupal/core": "8.0.*",
        "drush/drush": "8.*",
        "drupal/console": "~0.8",
    },
    "minimum-stability": "dev",
    "prefer-stable": true,
    "scripts": {
        "post-install-cmd": "scripts/composer/post-install.sh"
    },
    "extra": {
        "installer-paths": {
            "web/core": ["type:drupal-core"],
            "web/modules/contrib/{$name}": ["type:drupal-module"],
            "web/profiles/contrib/{$name}": ["type:drupal-profile"],
            "web/themes/contrib/{$name}": ["type:drupal-theme"],
            "web/drush/commands/{$name}": ["type:drupal-drush"]
        }
    }
}

Как вы видите в начале списка модулей в секции "зависимости" - Drush и Drush console включены по умолчанию. Так-же вы видите, что согласно правил, сопутствующие модули расположены в подкаталоге /contrib.

Такая организация сайта происходит отсюда: https://github.com/drupal-composer/drupal-project/tree/8.x. README.md содержит описание процесса и действий, таких как обновление ядра. Сопутствующие модули получаются из Packagist а не из Drupal.org. Это обусловлено тем, что существующая система версионирования Drupal, не квалифицируется как семантическое версионирование, необходимое системе. Дискуссия по поводу как это исправить, продолжается: https://www.drupal.org/node/1612910.

Установка Drupal
Свежая версия Drupal 8 собрана уже в коробке. Если у вас есть пустая база данных, вы можете сразу-же установить Drupal, пользуясь коробочной версией Drush:

cd drupal/web
../vendor/bin/drush site-install --db-url=mysql://{username}:{password}@localhost/{database}

Если вы не производите установку с помощью Drush, вам придется вручную сделать все, что Drush делает за вас. Ручной процесс установки Drupal8 следующий:

  • Скопировать default.settings.php в settings.php, и открыть для записи.
  • Скопировать default.license.yml в license.yml , и открыть для записи.
  • Создать и открыть для записи директорию sites/files
  • Перейти по адресу EXAMPLE.COM/install для предоставления данных доступа к базе данных и следовать дальнейшим инструкциям.

Добавление дополнительных модулей из Packagist

Добавление дополнительных модулей происходит немного иначе. Вместо добавления модулей используя drush dl, дополнительные модули добавляются путем выполнения composer команд из корня проекта. (это на один уровень выше корневой директории Drupal):

composer require drupal/migrate_upgrade 8.1.*@dev
composer require drupal/migrate_plus 8.1.*@dev

По мере выполнения этих команд, каждый модуль будет загружен из Packagist, а
composer.json файл будет обновлен с добавлением соответствующей строки в список модулей.
Вы можете взглянуть на содержимое composer.json файла и увидеть, как эволюционирует секция зависимостей.
Делайте так, пока не добавите все необходимые дополнительные модули.
Такой composer.json файл будет эквивалентом Drush make файла, документирующего все ваши модули.

Для достижения еще большего паритета с Drush Make, вы также можете добавлять в composer.json сторонние библиотеки, и используя плагин, указывать необходимые патчи. Более подробно обо всех этих вариантах читайте https://www.drupal.org/node/2471553.

Фиксация файлов в репозитории

Зафиксируйте изменения composer.json в репозитории. Файлы, загруженные Composer, не нужны в репозитории. Гляньте содержимое .gitignore полученного из коробки. В вашем git репозитории будут сохранены только composer.json, .gitignore, код в /web/modules/custom и контент в /web/sites подкаталоге (кроме директории files).

# Ignore directories generated by Composer
vendor
web/core
web/modules/contrib
web/themes/contrib
web/profiles/contrib

# Ignore Drupal's file directory
web/sites/default/files

Обновление файлов

Для получения обновленных версий файлов в любое время, перейдите в корневую директорию Drupal и выполните в командной строке:

composer update

Для добавления дополнительных модулей, тем и библиотек, в любое время, выполните в корневой директории проекта используемую ранее команду:

composer require drupal/module_name 8.1.*@dev

Это добавит еще одну строку в composer.json для соответствующего нового модуля. Теперь изменение composer.json должно быть зафиксировано и отправлено в репозиторий. Остальные инсталляции, в последствии будут принимать эти изменения, и получать новые модули в результате выполнения composer update.

Команда composer update должна быть запушена после каждой отправки или получения изменений от git репозитория. Таким образом, стандартная процедура для обновления из репозитория может быть следующей:

git pull
composer update
drush updb

Новый чекаут

В процессе нового обращения к этому репозитотию на другой машине, он просто клонируется, затем нужно будет перейти в созданную директорию и загрузить все зависимые модули, файлы и библиотеки следующим образом:

composer install

Это все
Итак, это все. По началу было немного стремно, но, как оказалось, этим очень легко управлять.
Вы можете использовать этот-же метод, с незначительными изменениями, для Drupal 7 сайтов.
Для своих нужд - измените 8.1.*@dev из примера, на необходимые вам актуальные стабильные версии ядра и дополнительных модулей.

multpix: Конец статьи и мое небольшое дополнение

*TLDR (а также tldr и тлдр) — сокращение от too long; didn’t read (слишком длинно; не читал). Аналог фразы «многа букаф, ниасилил». Часто замещает «Резюмируя» после пространных объяснений, которые, как справедливо считает автор этих объяснений, не вся аудитория возжелает прочитать целиком, либо, наоборот, идет первым абзацем.

Полезные ссылки по теме:
Drupal Composer рецепты
Освоение Composer: советы и приемы использования
Drupal Packagist
https://github.com/drupal-composer/drupal-project
https://www.drupal.org/docs/develop/using-composer/using-composer-with-drupal
Drupal Composer

И помните главное правило:
Где не работает голова - там работают руки

Тип материала: 
Ключевые слова: 
8 Спасибо




  


Разместил: Drupal Россия | Дата: 14.11.2016 | Прочитано: 222 | Раздел: Новости разработчиков программного обеспечения (CMS) для построения сайтов   

Рейтинг статьи

Средняя оценка: 0.00/0Средняя оценка: 0Всего голосов:0

Отлично
Хорошо Нормально Пойдёт Плохо


Смотрите также связанные темы

01.05.2009 Make Friends with BuddyPress
What if there was software with the elegance and extensibility of WordPress but all the features you’ve come to expect from social networks like Facebook? Now there is: check out BuddyPress. BuddyPress is an official sister project of WordPress. The idea behind it was to see what would happen to the web if it was as [...]
28.04.2009 Design Tweaks Vote
Comps for the header/nav design tweaks are in, and the results are mixed. Some people just moved a few things around, while others proposed a new style altogether. We won’t make any major changes to style in 2.8, but if the vote leans toward a submission that proposes it, we’ll do some user testing and [...]
22.07.2009 Improving your plugin – Changelogs
We’ve recently made some changes to help improve the communication between plugin authors and plugin users about the changes that are made between versions. We feel that all software should have a changelog that details, at a high level, what changes have been made in each version so that the user can make an informed decision [...]
07.08.2009 Upcoming WordCamps
Every now and then I see someone ask in the dev channel how they can meet up with other local WordPress developers. We’re thinking about ways to make WordPress.org more of a resource to facilitate local connections, but in the meantime, I thought it might be helpful to publicize some upcoming WordCamps, the [...]
21.10.2009 WordPress 2.8.5: Hardening Release
As you know over the past couple of months we have been working on the new features for WordPress 2.9. We have also been working on trying to make WordPress as secure as possible and during this process we have identified a number of security hardening changes that we thought we worth back-porting to the [...]
28.10.2009 Plugin Compatibility Beta
The number one reason people give us for not upgrading to the latest version of WordPress is fear that their plugins won’t be compatible. As part of our continuing efforts to make WordPress core, plugin, and theme upgrades as painless as possible, Michael Adams developed and launched a beta of a new “Compatibility” feature in [...]
06.11.2009 Upcoming WordCamps
There are six WordCamps coming up before the end of the year, and since I like to make sure people know about it when there’s a WordCamp near them, here’s the list, with some personal commentary thrown in. If you just want the list without my asides, check out the full schedule at WordCamp.org. WordCamp Phoenix [...]
19.12.2009 WordPress 2.9, oh so fine
I want to make you mine, all the time… oh wait. Hello. I’m here on behalf of the entire WordPress development team and community to announce the immediate availability of WordPress version 2.9 “Carmen” named in honor of magical jazz vocalist Carmen McRae (whom we’ve added to our Last.fm WP release station). You can upgrade [...]
17.12.2009 2.9 Release Candidate 1
We’re at that exciting point in WordPress development where the dev team feels like version 2.9 is complete and ready for the world. If you’ve been waiting for your moment to pitch in, it’s now. First we need tech savvy testers to upgrade their blogs and kick the tires, make sure everything is rolling like you [...]
25.12.2009 Setting Scope
Merry Christmas! One of the things that was discussed at the core commit team meetup was release scope (and scope creep). Now that 2.9 is out and it’s time to start thinking about 3.0, we think it would be appropriate to stop and take a breath before diving in, and make a plan in advance. [...]
Нет комментариев. Почему бы Вам не оставить свой?
Вы не можете отправить комментарий анонимно, пожалуйста зарегистрируйтесь.
Google Search
Google

Web yoursitemaster.com

Топ Новостей
1: Опубликован список золотых, серебряных и бронзовых дилеров системы управления сайтом HostCMS по итогам 2015 года
Hot NEWS!
Просмотров - 1092


2: TYPO3 Agency Meetup Days 2015 – A report on the Hamburg meeting
Просмотров - 472

3: Submit your 2016 budget application
Просмотров - 438

4: DataLife Engine (DLE) v.10.6 Final Release
Просмотров - 434

5: Положительный пример: портал Правительства Мурманской области стал первым в рейтинге «Госмонитор»
Просмотров - 421

6: WordPress 4.3 “Billie”
Просмотров - 415

7: WordPress 4.3.1 Security and Maintenance Release
Просмотров - 407

8: Новинки Маркетплейс: выпуск #18.2015
Просмотров - 406

9: «1С-Битрикс» провела технологическую конференцию FailOver Conference 2016
Просмотров - 404

10: Обновление 6.5.2. Бонусы и частичная оплата с лицевого счета
Просмотров - 400

Google 120X240
Ссылки

Главная | Actual Topics | Статьи | Обратная связь | Guest Book
Генерация: 0.217 сек. и 11 запросов к базе данных за 0.146 сек.
Powered by SLAED CMS © 2005-2007 SLAED. All rights reserved.