Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/AndyGaskell/Joomla_Day_UK_2017

Slides and examples from my talk at Joomla Day UK 2017
https://github.com/AndyGaskell/Joomla_Day_UK_2017

Last synced: 3 days ago
JSON representation

Slides and examples from my talk at Joomla Day UK 2017

Awesome Lists containing this project

README

        

# Joomla Day UK 2017 talk - DevOps for Joomla

## What?

Slides and examples from my talk at Joomla Day UK 2017
* If you'd like to simply view the slides, go to http://www.ssofb.co.uk/slides/Joomla_Day_UK_2017
* You can watch the talk on YouTube at https://youtu.be/w5ORPXt6W_o

## Intro: DevOps for Joomla

The talk is about DevOps for Joomla, from a practical perspective. It is based on a talk given at J & Beyond 2017, but adapted to contain more balanced and slightly less technical content. It is intended to cover the whole area, with specific details pulled out and drilled into.

Aspects covered in the talk include
- The convergence of development and operations to form DevOps
- An introduction to continuous integration and continuous delivery
- Deployment automation
- Using Joomla docker containers
- Automated deployment with Akeeba UNiTE
- Scripting options and choosing between node.js, shell and php
- Headless browser options like Casper, PhantomJS and Zombie.js
- CI platform options, like GitLab, Bamboo, Travis, Jenkins and GoCD
- Simple monitoring solutions
- Diagnostic tools

The talk will be supported by a repository of examples code and notes in GitHub.

See also http://www.joomla-day.uk and http://www.joomla-day.uk/component/timetable/event/devops-for-joomla

## Running the slides
The slides are done in Reveal.js so that is needed to run the slidedeck. See https://github.com/hakimel/reveal.js for more info.

## Useful links

* Joomla - https://joomla.org
* Joomla CLI - https://github.com/joomla-projects/cli-update
* Akeeba - https://www.akeebabackup.com
* Joomlatools Vagrant - https://github.com/joomlatools/joomlatools-vagrant

* Overview of Git Hooks - https://www.atlassian.com/git/tutorials/git-hooks
* git-ftp - https://github.com/git-ftp/git-ftp
* CasperJS - https://github.com/casperjs/casperjs
* Codeception - http://www.codeception.com/
* CodeceptJS - http://www.codecept.io/ and https://github.com/Codeception/CodeceptJS

* Docker - https://www.docker.com/ & https://hub.docker.com/_/joomla/
* Vagrant - https://www.vagrantup.com/

* GitLab - https://gitlab.com/
* Bitbucket - https://bitbucket.org/
* Assembla - https://assembla.com/
* Github - https://github.com/
* Jenkins - https://jenkins.io
* Travis - https://travis-ci.org
* Go.cd - https://go.cd
* Circle.ci - https://circleci.com

* phpservermon - https://github.com/phpservermon/phpservermon
* Cacti
* Datadog
* New relic - https://newrelic.com
* UptimeRobot - http://www.uptimerobot.com/
* Montastic - http://www.montastic.com/
* MyJoomla - http://www.myjoomla.com/
* Watchfully - http://www.watchful.li/

## Get in touch

If you've any queries about anything mentioned in the slidedeck or examples, let me know. https://twitter.com/AndyGasman

## Git cheatsheet

Clone the repo from github to local...

`git clone https://github.com/AndyGaskell/Joomla_Day_UK_2017.git`

Add a file...

`git add dist/blah.php`

Commit...

`git commit -m "updates"`

Commit...

`git commit -a -m "updates"`

Send updates to master...

`git push -u origin master`

Get updates from master...

`git fetch origin`

`git pull`