Merge branch 'develop' into feature/highlighter

This commit is contained in:
Oliver Davies 2015-08-08 10:27:27 +01:00
commit 251695990d
27 changed files with 79 additions and 15 deletions

View file

@ -1,6 +1,8 @@
<?php <?php
class SculpinKernel extends \Sculpin\Bundle\SculpinBundle\HttpKernel\AbstractKernel use Sculpin\Bundle\SculpinBundle\HttpKernel\AbstractKernel;
class SculpinKernel extends AbstractKernel
{ {
protected function getAdditionalSculpinBundles() protected function getAdditionalSculpinBundles()
{ {

View file

@ -3,7 +3,7 @@ subtitle: Drupal Developer & System Administrator
description: Oliver Davies, Drupal Developer description: Oliver Davies, Drupal Developer
author: Oliver Davies author: Oliver Davies
email: oliver@oliverdavies.uk email: oliver+website@oliverdavies.uk
twitter: twitter:
url: http://twitter.com/opdavies url: http://twitter.com/opdavies

8
scripts/redirects.csv Normal file
View file

@ -0,0 +1,8 @@
From,To
about,/
cv,https://gist.github.com/opdavies/d096d553b80140a342d4
drupalgive,https://www.drupal.org/u/opdavies
projects,/services/
portfolio,/services/
speaking,/talks/
work,/services/
1 From To
2 about /
3 cv https://gist.github.com/opdavies/d096d553b80140a342d4
4 drupalgive https://www.drupal.org/u/opdavies
5 projects /services/
6 portfolio /services/
7 speaking /talks/
8 work /services/

33
scripts/redirects.php Normal file
View file

@ -0,0 +1,33 @@
#!/usr/bin/env php
<?php
$csv = __DIR__ . '/redirects.csv';
$template = <<<EOS
---
layout: redirect
destination: %DESTINATION%
---
EOS;
$row = 0;
if (($handle = fopen($csv, 'r')) !== FALSE) {
while (($data = fgetcsv($handle, filesize($csv))) !== FALSE) {
$row++;
if ($row > 1) {
$templateData = [
'%DESTINATION%' => $data[1],
];
$output = strtr($template, $templateData);
file_put_contents("source/{$data[0]}.html", $output);
echo "Written to {$data[0]}.html\n";
}
}
}
fclose($handle);

View file

@ -5,6 +5,10 @@
<!--[if !IE]><!--> <html> <!--<![endif]--> <!--[if !IE]><!--> <html> <!--<![endif]-->
{% include 'head' %} {% include 'head' %}
<body class="{% block body_classes %}{% endblock %}"> <body class="{% block body_classes %}{% endblock %}">
<!--[if lt IE 7]>
<p class="browsehappy">You are using an <strong>outdated</strong> browser. Please <a href="http://browsehappy.com/">upgrade your browser</a> to improve your experience.</p>
<![endif]-->
{% include 'navbar' %} {% include 'navbar' %}
<div class="container"> <div class="container">

View file

@ -0,0 +1 @@
{% extends "base.html.twig" %}

View file

@ -1,4 +1,4 @@
{% extends 'default' %} {% extends 'base.html.twig' %}
{% block body_classes 'page--blog page--blog__post' %} {% block body_classes 'page--blog page--blog__post' %}

View file

@ -1,4 +1,4 @@
{% extends 'default' %} {% extends 'base.html.twig' %}
{% block body_classes %}page--talks page--talks__talk{% endblock %} {% block body_classes %}page--talks page--talks__talk{% endblock %}

View file

@ -90,3 +90,23 @@ I set this to `@daily` (the same `H H * * *` - `H` is a Jenkins thing), so that
This workflow works great for one site, but as I roll out more Sculpin sites, I'd like to reduce duplication. I see this mainly as Ill end up creating a separate `sculpin_build` item thats decoupled from the site that its building, and instead passing variables such as environment, server name and docroot path as parameters in a parameterized build. This workflow works great for one site, but as I roll out more Sculpin sites, I'd like to reduce duplication. I see this mainly as Ill end up creating a separate `sculpin_build` item thats decoupled from the site that its building, and instead passing variables such as environment, server name and docroot path as parameters in a parameterized build.
I'll probably also take the raw shell script out of Jenkins and save it in a text file that's stored locally on the server, and execute that via Jenkins. This means that Id be able to store this file in a separate Git repository with my other Jenkins scripts and get the standard advantages of using version control. I'll probably also take the raw shell script out of Jenkins and save it in a text file that's stored locally on the server, and execute that via Jenkins. This means that Id be able to store this file in a separate Git repository with my other Jenkins scripts and get the standard advantages of using version control.
## Update
Since publishing this post, I've added some more items to the original build script.
### Updating Sculpin Dependencies
if [ -f sculpin.json ]; then
sculpin update
fi
Runs `sculpin update` on each build if the sculpin.json file exists, to ensure that the required custom bundles and dependencies are installed.
### Managing Redirects
if [ -f scripts/redirects.php ]; then
/usr/bin/php scripts/redirects.php
fi
I've been working on a `redirects.php` script that generates redirects from a .csv file, after seeing similar things in the [Pantheon Documentation](https://github.com/pantheon-systems/documentation) and [That Podcast](https://github.com/thatpodcast/thatpodcast.io) repositories. This checks if that file exists, and if so, runs it and generates the source file containing each redirect.

View file

@ -1,4 +0,0 @@
---
layout: redirect
destination: https://gist.github.com/opdavies/d096d553b80140a342d4
---

View file

@ -19,15 +19,15 @@ meta:
<img src="{{ site.gravatar.url }}?s=85" alt="Picture of Oliver" class="img-circle"> <img src="{{ site.gravatar.url }}?s=85" alt="Picture of Oliver" class="img-circle">
Hi, I'm Oliver Davies, a <a href="{{ site.drupalorg.nice }}">Drupal Developer</a> and System Administrator based in Newport, South Wales. Hi, I'm Oliver Davies, a Web Developer and System Administrator based in Newport, South Wales. I specialise in PHP development with <a href="{{ site.drupalorg.nice }}">Drupal</a> and <a href="http://sculpin.io">Sculpin</a>, and Linux system administration. Im also currently learning Symfony2 framework and Silex.
Im a Senior Developer at [Microserve](https://microserve.io), while also occassionally working freelance on Drupal websites and Linux servers in my spare time. I previously worked for the [Drupal Association](https://assoc.drupal.org), as well as other UK agencies such as [Precedent](http://precedent.com) and [Nomensa](http://www.nomensa.com). Im currently a Senior Developer at [Microserve](https://microserve.io) - a specialist technical Drupal agency based in Bristol. I previously worked for the [Drupal Association](https://assoc.drupal.org), and for other UK agencies such as [Precedent](http://precedent.com) and [Nomensa](http://www.nomensa.com), in permanent and contract positions. I still occasionally work on freelance projects in my spare time - please [get in touch](/contact/) for any more information.
An active community member, I organise Drupal user groups in <a href="{{ site.meetups.swdug.url }}">South Wales</a> and <a href="{{ site.meetups.drupalbristol.url }}">Bristol</a>, and am a founding member of the [DrupalCamp Bristol](http://2015.drupalcampbristol.co.uk) organising committee (we held our first conference in July 2015). I also regularly attend and speak at other events and conferences related to Drupal, PHP, Linux and web accessibility. I'm a contributor to <a href="http://cgit.drupalcode.org/drupal/log/?h=7.x&qt=grep&q={{ site.drupalorg.name }}">Drupal 7</a> and <a href="http://cgit.drupalcode.org/drupal/log/?h=8.0.x&qt=grep&q={{ site.drupalorg.name }}">Drupal 8</a> core, as well as to other open-source projects including [COD](http://usecod.io) (the conference organising distribution, built on Drupal), Sculpin (a static site generator written in PHP), various Puppet modules and Ansible roles, and the [Drupal VM](http://www.drupalvm.com) project. I maintain several contrib projects on Drupal.org, and have contributed to numerous others - including several relating to Drupal.org itself, such as [Bluecheese](http://cgit.drupalcode.org/bluecheese/log/?qt=author&q=Oliver+Davies) (the Drupal.org theme) and the [Drupal.org customisations](http://cgit.drupalcode.org/drupalorg/log/?qt=author&q=Oliver+Davies) module.
I'm a contributor to <a href="http://cgit.drupalcode.org/drupal/log/?h=7.x&qt=grep&q={{ site.drupalorg.name }}">Drupal 7</a> and <a href="http://cgit.drupalcode.org/drupal/log/?h=8.0.x&qt=grep&q={{ site.drupalorg.name }}">Drupal 8</a> core and [COD](http://usecod.io) (the conference organising distribution), and I <a href="{{ site.drupalorg.url }}/people-mentored">mentor new contributors</a> online and in person at local sprints, DrupalCamps and DrupalCons. I maintain several projects on Drupal.org, and have contributed to numerous others. <a href="{{ site.drupalorg.url }}/people-mentored">I mentor new Drupal contributors</a> online and in person at local sprints, DrupalCamps and DrupalCons, and have helped several new contributors to get their first commits to Drupal core. I'm also the [Git Documentation Maintainer](https://www.drupal.org/node/2248627#comment-8887789) for the Drupal project, and a provisional member of the [Drupal Security team](https://www.drupal.org/security-team).
I'm also the Git Documentation Maintainer for the Drupal project, and a provisional member of the [Drupal Security team](https://www.drupal.org/security-team). I organise Drupal user group events such as talk nights and code sprints in <a href="{{ site.meetups.swdug.url }}">South Wales</a> and <a href="{{ site.meetups.drupalbristol.url }}">Bristol</a>, and am a founding [DrupalCamp Bristol](http://2015.drupalcampbristol.co.uk) organising committee member. I also regularly attend and speak at other meetups and conferences related to Drupal, PHP, Linux, DevOps, and web deveopment and accessibility.
You can follow me on <a href="{{ site.twitter.url }}">Twitter</a> and <a href="{{ site.linkedin.url }}">LinkedIn</a>, and you can view my code on <a href="{{ site.drupalorg.url }}/track/code">Drupal.org</a> and <a href="{{ site.github.url }}?tab=activity">GitHub</a>. You can follow me on <a href="{{ site.twitter.url }}">Twitter</a> and <a href="{{ site.linkedin.url }}">LinkedIn</a>, and you can view my code on <a href="{{ site.drupalorg.url }}/track/code">Drupal.org</a> and <a href="{{ site.github.url }}?tab=activity">GitHub</a>.
{% endblock %} {% endblock %}

View file

@ -41,7 +41,8 @@ talks:
location: PHPSW location: PHPSW
- title: Test Drive Twig with Sculpin - title: Test Drive Twig with Sculpin
date: 2015-07-24 title_link: https://speakerdeck.com/opdavies/test-drive-twig-with-sculpin
date: 2015-07-25
location: DrupalCamp North location: DrupalCamp North
- title: Building Static Websites with Sculpin - title: Building Static Websites with Sculpin

View file

@ -1,5 +1,4 @@
--- ---
layout: post
title: title:
tags: tags:
- -