Slide 1

Slide 1 text

Développer sur le cloud ou comment tout construire à partir de rien Eric BREHAULT

Slide 2

Slide 2 text

Le cloud pour le développeur Les services les plus connus

Slide 3

Slide 3 text

GitHub http://github.com ● Gestion du code source ● mais surtout réseau social de développement

Slide 4

Slide 4 text

Travis-CI https://travis-ci.org ● Intégration continue ● Éxécution sur une VM vierge ● Intégré avec GitHub

Slide 5

Slide 5 text

Coveralls.io https://coveralls.io ● Couverture des tests ● Intégré avec GitHub

Slide 6

Slide 6 text

Readthedocs https://readthedocs.org/ ● Publication de la documentation ● Intégré avec GitHub

Slide 7

Slide 7 text

Heroku Plateform as a Service (Python, Java, Rails, Node.js) $ heroku create sushi Creating sushi... done http://sushi.herokuapp.com/ | [email protected]:sushi.git $ git push heroku master ----> Heroku receiving push ----> Rails app detected ----> Compiled slug size is 8.0MB http://sushi.herokuapp.com deployed to Heroku

Slide 8

Slide 8 text

GitHub Pages ● GitHub publie les contenus web des branches nommées gh-pages, ● sites statiques uniquement, ● mais utilisation native de Jekyll.

Slide 9

Slide 9 text

Pelican sur GitHub Pages http://www.makina-corpus.org/blog/publish-your-pelican-blog-github- pages-travis-ci

Slide 10

Slide 10 text

Prose.io ● Facilite la modification des pages Jekyll publiées sur GitHub Pages, ● envoie les modifications sur GitHub directement.

Slide 11

Slide 11 text

Cas pratiques

Slide 12

Slide 12 text

VuDuCiel http://vuduciel.loire-atlantique.fr/ ● Le frontal est servi par GitHub Pages. ● Modifié via Prose.io. ● Validé avec Travis.

Slide 13

Slide 13 text

VuDuCiel On a créé nous-même les services manquants: ● recherche d'adresses, ● impressions / screenshots, ● serveur de tuiles. et le frontal reste statique.

Slide 14

Slide 14 text

Album des territoires en Dordogne http://album-des-territoires.cauedordogne.com/ http://album-des-territoires.cauedordogne.com/#1/urbanisme ● Le frontal est servi par GitHub Pages et modifié via Prose.io. ● Mise à disposition des images et des données cartographiques dans une arborescence de répertoires.

Slide 15

Slide 15 text

OK mais pourquoi ?

Slide 16

Slide 16 text

Pas d'infrastructure On ne s'occupe pas de maintenir des serveurs.

Slide 17

Slide 17 text

Puissance des back-end GitHub, Amazon S3, Google Docs sont des services solides, difficiles à égaler par nos propres moyens.

Slide 18

Slide 18 text

Pas (ou peu) de frais Beaucoup de ces services sont gratuits. Les formules payantes sont progressives.

Slide 19

Slide 19 text

Les sites statiques, c'est simple Les CMS sont intéressants pour gérer des grandes quantités d'information. Mais en contre-partie, ils imposent de nombreuses contraintes et manquent de flexibilité.

Slide 20

Slide 20 text

Les APIs

Slide 21

Slide 21 text

OAuth.io OAuth.initialize('Public key'); OAuth.popup('facebook', function(err, result) { result.get('/me').done(function(data) { // data is the API call's response. // e.g. data.name for your facebook's fullname. }); });

Slide 22

Slide 22 text

Yahoo!QL http://developer.yahoo.com/yql/console select * from html where url="http://makina-corpus.com"

Slide 23

Slide 23 text

GitHub API GET /repos/:owner/:repo/git/commits/:sha POST /repos/:owner/:repo/git/commits GET /search/repositories

Slide 24

Slide 24 text

Exemple d'utilisation https://github.com/makinacorpus/github-pages-editor Extension Chrome client-side pour modifier un site GitHub Pages.

Slide 25

Slide 25 text

Makina Corpus For all questions related to this talk, please contact Éric Bréhault [email protected] Tel : +33 534 566 958 www.makina-corpus.com