Archive Working with Workspace
This commit is contained in:
parent
3f3260764e
commit
9b9d15a0e0
17 changed files with 0 additions and 0 deletions
222
archive/working-with-workspace/slides.rst
Normal file
222
archive/working-with-workspace/slides.rst
Normal file
|
@ -0,0 +1,222 @@
|
|||
.. footer:: @opdavies
|
||||
|
||||
Working with Workspace
|
||||
######################
|
||||
|
||||
|
|
||||
|
||||
.. class:: titleslideinfo
|
||||
|
||||
Oliver Davies, Inviqa
|
||||
|
||||
.. raw:: pdf
|
||||
|
||||
TextAnnotation "Full stack Developer and Systems Administrator"
|
||||
TextAnnotation "Organiser of PHP South Wales"
|
||||
|
||||
.. 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 "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
|
||||
========
|
||||
|
||||
* Commands
|
||||
* Functions
|
||||
* Attributes
|
||||
* Encrypting/decrypting secrets
|
||||
* Generating configuration files
|
||||
* Global services: logging, mail, proxy
|
||||
|
||||
.. raw:: pdf
|
||||
|
||||
TextAnnotation "Generating settings.php files, Dockerfiles and Docker Compose from a central set of attributes."
|
||||
TextAnnotation "Logging with kibana, mailhog, Traefik proxy."
|
||||
|
||||
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
|
||||
|
||||
.. raw:: pdf
|
||||
|
||||
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!
|
||||
=======
|
||||
|
||||
References:
|
||||
|
||||
* https://github.com/my127/workspace
|
||||
* https://oliverdavies.link/workspace-demo
|
||||
* https://oliverdavies.link/workspacing-site
|
||||
|
||||
|
|
||||
|
||||
Me:
|
||||
|
||||
* https://www.oliverdavies.uk
|
Loading…
Add table
Add a link
Reference in a new issue