Update Workspace slides for PHPNW

This commit is contained in:
Oliver Davies 2021-02-01 02:21:44 +00:00
parent 398fa3c547
commit fdd5b3138f
16 changed files with 331 additions and 26 deletions

View file

@ -11,22 +11,27 @@ Oliver Davies, Inviqa
.. raw:: pdf
TextAnnotation "Full stack Developer and Systems Administrator"
TextAnnotation "Full stack Developer and Systems Administrator"
TextAnnotation "Organiser of PHP South Wales"
PageBreak standardPage
.. page:: standardPage
What is Workspace?
==================
* A tool that we use and maintain at Inviqa
* Primarily for building and managing Docker Compose environments
* Built on Symfony
* Create custom commands for your project environments
* Alternative to a bash script or a Makefile
* And more...
.. raw:: pdf
TextAnnotation "Available on GitHub, MIT licensed."
TextAnnotation "Useful for simplifying long, complicated commands, e.g. Docker, Ansible."
TextAnnotation "Available on GitHub, MIT licensed."
TextAnnotation "Uses Config, Console, Dependency Injection, Expression Language, Finder and YAML components, as well as Twig."
TextAnnotation "Replacement for commands like 'make build'"
TextAnnotation "Useful for simplifying long, complicated commands, e.g. Docker, Ansible."
Features
========
@ -34,21 +39,172 @@ Features
* Commands
* Functions
* Attributes
* Managing secrets
* Configuration files
* Encrypting/decrypting secrets
* Generating configuration files
* Global services: logging, mail, proxy
.. Change to a title page
.. raw:: pdf
PageBreak titlePage
TextAnnotation "Generating settings.php files, Dockerfiles and Docker Compose from a central set of attributes."
TextAnnotation "Logging with kibana, mailhog, Traefik proxy."
Demo
====
Installation
============
.. code-block:: bash
:include: code/installation.txt
.. page:: imagePage
.. image:: images/output-simple.png
:width: 15cm
.. page:: titlePage
.. class:: centredtitle
Replacing your Makefile
.. page:: standardPage
Running simple commands
=======================
.. code-block:: yaml
:include: code/simple-command.txt
:linenos:
.. page:: imagePage
.. image:: images/output-command.png
:width: 15cm
.. page:: standardPage
'run' vs. 'passthru'
====================
.. code-block:: yaml
:include: code/run-passthru.txt
.. image:: images/helper-run.png
:width: 20cm
.. image:: images/helper-passthru.png
:width: 20cm
Attributes
==========
.. code-block:: yaml
:include: code/attributes.txt
:linenos:
Arguments
=========
.. code-block:: yaml
:include: code/arguments.txt
:linenos:
Environment variables
=====================
.. code-block:: yaml
:include: code/environment-variables.txt
:linenos:
Managing secrets
================
.. code-block:: yaml
:include: code/secrets.txt
.. Change to a standard page
.. raw:: pdf
PageBreak standardPage
TextAnnotation "Shortened for slides"
TextAnnotation "Store default key in an overrides file that's ignored from Git, and somewhere secure like a password manager."
.. page:: titlePage
.. class:: centredtitle
Example: building slides from rst2pdf
.. page:: standardPage
Attributes
==========
.. code-block:: yaml
:include: code/workspace-talks.txt
:end-before: command('pdf generate <talk>'): |
Generating PDFs
===============
.. code-block:: yaml
:include: code/workspace-talks.txt
:start-at: command('pdf generate <talk>'): |
:end-before: command('thumbnail <talk>'):
Generating thumbnails
=====================
.. code-block:: yaml
:include: code/workspace-talks.txt
:start-at: command('thumbnail <talk>'):
.. page:: titlePage
.. class:: centredtitle
Configuration files
.. page:: standardPage
Using confd
===========
.. code-block:: yaml
:include: code/confd.txt
:linenos:
.. raw:: pdf
TextAnnotation ".twig file extension is assumed."
vhost.conf.twig
===============
The source file.
|
.. code-block:: twig
:include: code/nginx-vhost.txt
:end-before: # output
:linenos:
default.conf
============
The generated file.
|
.. code-block:: nginx
:include: code/nginx-vhost.txt
:start-after: # output
:linenos:
.. page:: titlePage
.. class:: centredtitle
Demo: "Workspacing" my site
.. page:: standardPage
Thanks!
=======
@ -56,7 +212,8 @@ Thanks!
References:
* https://github.com/my127/workspace
* https://github.com/opdavies/working-with-workspace-demo
* https://oliverdavies.link/workspace-demo
* https://oliverdavies.link/workspacing-site
|