Статьи

Учебник по Openshift: пример размещения презентаций Awestruct в облаке

Никогда еще не было так просто объединить отличную облачную технологию и технологию JBoss, например
Ruby , чем изящный инструмент для создания презентаций под названием strike.js , инструмент для 
создания сайтов, известный как
awestruct , и облачный хостинг от
OpenShift, чтобы поразить вас на следующей презентации.

Вступление

Пример, который я собираюсь привести, в конечном итоге будет выглядеть так же, как и этот сайт, где вы найдете некоторые из моих презентаций за последний год, развернутые в облачном экземпляре OpenShift на основе Ruby, написанные с помощью strike.js и сгенерированные awestruct.

Обратите внимание, что вы можете просматривать презентации, использовать стрелки в правом нижнем углу для просмотра слайдов, встраивать свой сайт и презентации в любом месте в формате HTML (просто используйте iframe), и что он автоматически доступен на всех мобильных устройствах. устройства без каких-либо дополнительных настроек с вашей стороны.

Начиная

Вам понадобятся Git, Ruby, редактор, учетная запись OpenShift и awestruct, вы знаете основы. Я не собираюсь проходить через все это с вами, но предполагаю, что вы можете следовать этим руководствам по началу работы.

Что я сделал, так это собрал быстрый старт, чтобы настроить ваш сайт, как показано выше, и запустить его, который затем является шаблоном для добавления в ваши собственные презентации. Это дает вам преимущество, чтобы сэкономить время. Следуйте инструкциям, которые я проведу самостоятельно, сначала из консоли веб-администратора из OpenShift, а затем из командной строки с помощью инструментов OpenShift (rhc).

Веб-консоль OpenShift.

Вам нужно будет войти в OpenShift (
http://openshift.com).) с вашим пользователем и создайте картридж Ruby 1.9 (а не старые, которые вы могли бы там увидеть). Просто назовите его
presos и оставьте остальные настройки по умолчанию.


Создание картриджа Ruby 1.9.

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

$ git clone ssh://5242ecxxxxxxxxx0000aa@presos-inthe.rhcloud.com/~/git/presos.git/

Теперь перейдите в каталог presos, и мы будем копировать в ваш репозиторий настройку, которую я подготовил для вас в моем репозитории (
https://github.com/eschabell/openshift-presos-awstruct/tree/v0.3 ).

Запустите следующие команды.

$ cd presos
$ git remote add upstream -m master git://github.com/eschabell/openshift-presos-awstruct.git
$ git pull -s recursive -X theirs upstream master
$ git push

Это втянет мой код в ваш проект, объединит результаты, а затем вы добавите его в свой экземпляр OpenShift. Смотрите консольный вывод , как она сливается в новом коде, устанавливает необходимые awestruct зависимости, удар запускает сервер, и вы готовы проверить ваш проект в Интернете по адресу
HTTP: //presos-$yourdomain.rhcloud.com

командной строки инструментов

Once вы установили инструментарий командной строки OpenShift (просто команду gem install RHC для машин на основе Unix), вы можете выполнить следующие действия, чтобы настроить экземпляр Ruby и заполнить его моим проектом быстрого старта.

$ rhc app create -a presos -t ruby-1.9 --from-code=https://github.com/eschabell/openshift-presos-awstruct.git

Это втянет мой код в ваш проект, объединит результаты, а затем вы отправите его в свой экземпляр OpenShift. Наблюдайте за выводом консоли, когда она сливается с новым кодом, устанавливает необходимые зависимости awestruct, запускает сервер, и вы готовы проверить свой проект в Интернете по адресу
http: //presos-$yourdomain.rhcloud.com.

Принеси это к жизни

Вы заметите, что просматриваемый вами сайт находится в
presos / lib / * , здесь вам нужно будет разместить свои собственные презентации. Каждая презентация представлена
файлом
.haml . Это используется для генерации возможного
файла
.html .

---
layout: judconbase
---

.slides
  %section.title(data-state="judcon2013" )
    .title-information
      %h2 Do you want
      %h4 to be a
      %h2 JBoss Rock Star
      %h5
    .title-author
      Eric D. Schabell
      %br
        JBoss Technology Evangelist (Integration & BPM)
      %a{ :href=>"http://twitter.com/ericschabell"}@ericschabell

  %section(data-state="judcon2013" )
    .title-information
    %h1 What does it take?

Если мы более внимательно посмотрим на файл haml презентации rockstar, мы увидим, что он начинается с
макета, ссылающегося на
базовый файл, в данном случае под названием
judconbase . Мы находим, что это просто включенный файл haml, расположенный в
каталоге
_layouts . Просмотрите это для вещей, которые вы, возможно, захотите настроить для своей презентации, но вы заметите важную строку, которая ссылается на файл CSS, где мы будем настраивать любые изображения, которые мы хотим использовать.

%link{ :rel=>'stylesheet', :type=>'text/css', :href=>"#{site.base_url}/css/theme/judcon.css", :id=>'theme'}

Затем вы найдете
линию
.slides, которая запускает слайды, здесь мы показываем только два слайда, которые определены с помощью уценки.
Данные состояния атрибут является ссылкой на CSS файл мы уже упоминали выше, где , если вы смотрите там вы найдете изображения , используемые в установке слайдов для отображения в качестве фона, крышки, или где — то внутри области слайда холста.

Самый простой способ определить, как ваши изменения влияют на макет слайдов, — это запустить команду awestruct из каталога lib и в режиме демона. Это предоставит вам доступ к локальному серверу по адресу
http: // localhost: 4242 , и он автоматически обновляется при каждом сохранении файла в каталоге lib.

$ cd presos/lib
$ awestruct -d

По умолчанию сборка, которую создает awestruct, предназначена для localhost, но вы можете настроить файл в
presos / lib / _config / site.yml, чтобы иметь несколько профилей. Просто запустите awestruct с
флагом
-P и укажите один из ваших профилей для создания нового целевого сайта в
_site .

Код, разверните, наслаждайтесь

Девиз — код, разверните, наслаждайтесь! Я надеюсь, что эта статья поможет вам начать публиковать свои презентации в Интернете.