19
Automatyzacja w tworzeniu aplikacji opartych o platformę Drupal Grzegorz Bartman www.droptica.com

Automatyzacja w tworzeniu aplikacji opartych Drupala

Embed Size (px)

DESCRIPTION

Drush, Jenkins CI, PHPUnit. Prezentacja z konferencji DrupalCamp Wrocław 2013

Citation preview

Page 1: Automatyzacja w tworzeniu aplikacji opartych Drupala

Automatyzacja w tworzeniu aplikacji opartych o platformę Drupal

Grzegorz Bartman www.droptica.com

Page 2: Automatyzacja w tworzeniu aplikacji opartych Drupala

●2002 – pierwsza instalacja systemu Linux (Mandrake 9), pierwszy kontakt z Open Source●2003 – rozpoczęcie studiów na Politechnice Wrocławskiej●2008 – założenie openBIT – pierwsze strony na Drupalu●2009 – napisanie pracy magisterskiej dotyczącej oprogramowania Open Soruce i jego wykorzystania w firmie●2011 – Rozpoczęcie współpracy z Telefonią DIALOG, dla której robimy m.in. system intranetowy wyróżniony w ogólnopolskim konkursie na najlepszy intranet INTERNALE 2011●2011 – Rozpoczęcie współpracy z NATO●2011 – OpenBIT zostaje członkiem Drupal Association oraz partnerem Acquia●2011 – pierwszy moduł opublikowany na drupal.org (Popup Message, na dzień 2013-04-12 z modułu korzysta 994 strony, moduł został pobrany 3075 razy)●2012 – Pierwsza w Polsce konferencja o Drupalu - DrupalCamp Wrocław●2012 – Rozpoczęcie współpracy pomiędzy openBIT i Advanteo●2013 – połączenie openBIT oraz Advanteo i utworzenie spółki Droptica

Grzegorz Bartmanhttps://www.facebook.com/grzegorz.bartmanhttp://twitter.com/grzegorzbartman

Page 3: Automatyzacja w tworzeniu aplikacji opartych Drupala

Dlaczego powinniśmy Dlaczego powinniśmy automatyzować automatyzować

procesy związane z procesy związane z tworzeniem aplikacji tworzeniem aplikacji (opartych o platformę (opartych o platformę

Drupal)?Drupal)?

Page 4: Automatyzacja w tworzeniu aplikacji opartych Drupala

Oszczędność czasu

Mniejsze koszty tworzenia aplikacji

Page 5: Automatyzacja w tworzeniu aplikacji opartych Drupala

Mniejsze Mniejsze ryzyko ryzyko

wdrożenia wdrożenia wersji z wersji z błędamibłędami

Page 6: Automatyzacja w tworzeniu aplikacji opartych Drupala

Jakość i solidność

Page 7: Automatyzacja w tworzeniu aplikacji opartych Drupala

Od czego zacząć?

Page 8: Automatyzacja w tworzeniu aplikacji opartych Drupala

Keep it in Code

Page 9: Automatyzacja w tworzeniu aplikacji opartych Drupala

Moduł Features

Page 10: Automatyzacja w tworzeniu aplikacji opartych Drupala

Dla nowego projektu przygotuj profil instalacyjny

Page 11: Automatyzacja w tworzeniu aplikacji opartych Drupala

Dla istniejącej aplikacji zmiany w bazie danych wprowadzaj za

pomocą Features oraz

hook_update_N

Page 12: Automatyzacja w tworzeniu aplikacji opartych Drupala

Używaj Drusha do budowania aplikacji

drush site-installdrush updatedbdrush fra

Page 13: Automatyzacja w tworzeniu aplikacji opartych Drupala

Utwórz skrypt, w którym będą komendy budujące aplikację

#/bin/shParams..Mysql commands...Drush commands..Results...

Source: http://dev2ops.org

Page 14: Automatyzacja w tworzeniu aplikacji opartych Drupala

Użyj narzędzi do Continuous_integration aby zautomatyzować uruchamianie skryptu

http://en.wikipedia.org/wiki/Continuous_integration#Software

Page 15: Automatyzacja w tworzeniu aplikacji opartych Drupala

Dev Workflow

GIT Jenkins 1

Wersja Programisty

1

Wersja Programisty

2

Wersja Programisty

3

Wersja Dev

Wersja Test

Wersja Stg

Jenkins buduje wersje Dev po każdej zmianie w repozytorium. Testy automatyczne..

Informacja dla Programistów o błędachPrzy budowaniu aplikacji

Tester może w dowolnej chwili jednym kliknięciem zbudować sobie wersje aplikacji z aktualnego kodu

Po zatwierdzeniu przez testera wystawiamy jednym kliknięciem wersję aplikacji dla Klienta

Wersje aplikacji możemy robić dla każdego brancha w repozytorium

Page 16: Automatyzacja w tworzeniu aplikacji opartych Drupala

Production Workflow

GIT

Jenkins 2

Aegir

/var/aegir/platforms

Jenkins pobiera najnowszy tag z

repozytorium i buduje na jego podstawie nową platformę w systemie

Aegir.

Następnie strona jest migrowana na nową

platformę.

Tags

Page 17: Automatyzacja w tworzeniu aplikacji opartych Drupala

Oprogramowanie

Page 18: Automatyzacja w tworzeniu aplikacji opartych Drupala

Obraz Virtualbox do pobrania na stronie

http://www.droptica.com/pl/droptica-devserver

Page 19: Automatyzacja w tworzeniu aplikacji opartych Drupala

Dziękuję za uwagę

Grzegorz Bartman

www.droptica.com