Some minor copy edits now that I'm off the bus 💩
This commit is contained in:
parent
534c4209e1
commit
7f510dc544
|
@ -70,20 +70,21 @@ strive to meet the following requirements:
|
||||||
|
|
||||||
|
|
||||||
Quite the laundry list! The two biggest departures from what Jenkins Pipeline
|
Quite the laundry list! The two biggest departures from what Jenkins Pipeline
|
||||||
would be the ability to model external interactions and determinism.
|
can somewhat model would be: the ability to model external interactions and
|
||||||
|
determinism.
|
||||||
|
|
||||||
Modeling external interactions is something which I think _many_ approaches to
|
Modeling external interactions is something which I think _many_ approaches to
|
||||||
modeling continuous delivery simply fail to acknowledge. Every tool wants to
|
modeling continuous delivery simply fail to acknowledge. Every tool wants to
|
||||||
act as if it is the center of the universe, and they can't _all_ be the center!
|
act as if it is the center of the universe but they can't _all_ be the center!
|
||||||
In order to effectively model external interactions, the language alone is
|
In order to effectively model external interactions in a pipeline the language alone is
|
||||||
insufficient, the runtime must participate. Imagine a scenario where
|
insufficient, the runtime must also participate. Imagine a scenario where
|
||||||
validation of a deployment occurs via an external system. The pipeline would
|
validation of a deployment occurs via an external system. The pipeline would
|
||||||
necessarily be paused, pending an external callback or something along those
|
necessarily be paused, pending an external callback or something along those
|
||||||
lines. This means the language itself has to represent the callback in some
|
lines. This means the language itself has to represent the callback in some
|
||||||
way, but the runtime has to allow for an event to continue the pipeline's
|
way, but the runtime has to allow for an event to continue the pipeline's
|
||||||
execution. All without consuming resources, like a VM or container in the meantime.
|
execution. All without consuming resources, like a VM or container in the meantime.
|
||||||
|
|
||||||
The approach for most current systems is:
|
The approach in most current systems is:
|
||||||
|
|
||||||
* provision VM
|
* provision VM
|
||||||
* install dependencies
|
* install dependencies
|
||||||
|
@ -165,8 +166,7 @@ managed externally. The two most common examples I can think of are:
|
||||||
pipeline, but still hugely relevant to the process.
|
pipeline, but still hugely relevant to the process.
|
||||||
|
|
||||||
|
|
||||||
In both scenarios, the commonalities that I see and feel warrant modeling would
|
In both scenarios I see commonalities which warrant modeling, such as:
|
||||||
be:
|
|
||||||
|
|
||||||
* Deployment credentials, different signing keys or API tokens.
|
* Deployment credentials, different signing keys or API tokens.
|
||||||
* Compile flags
|
* Compile flags
|
||||||
|
@ -174,11 +174,12 @@ be:
|
||||||
up or be pushed to.
|
up or be pushed to.
|
||||||
|
|
||||||
|
|
||||||
The big difference between the two examples of environments above is how one
|
The big difference between these two kinds of environments is how one
|
||||||
progresses from on environment to the next. It could be a simple automated
|
progresses from an environment to the next. It could be a simple automated
|
||||||
check, an external set of synthetic transactions, feedback from a monitoring
|
check, an external set of synthetic transactions, feedback from a monitoring
|
||||||
tool, or a manual intervention by a developer/QE/etc. The latter is especially
|
tool, or a manual intervention by a developer/QE/etc. The latter is especially
|
||||||
common with mobile or desktop applications.
|
common with mobile or desktop applications, and frequently underserved by
|
||||||
|
existing modeling syntaxes.
|
||||||
|
|
||||||
Imagining a single declarative `.otto` file with:
|
Imagining a single declarative `.otto` file with:
|
||||||
|
|
||||||
|
@ -189,17 +190,16 @@ Imagining a single declarative `.otto` file with:
|
||||||
|
|
||||||
I'm not sure modeling with environments _needs_ to be much more complex than
|
I'm not sure modeling with environments _needs_ to be much more complex than
|
||||||
that. The way an operations team might conceive of an environment may be
|
that. The way an operations team might conceive of an environment may be
|
||||||
different from an application team. They both conceive however when it comes to
|
different from an application team. Their mental models converge however when
|
||||||
hostnames, settings, and credentials.
|
it comes to hostnames, settings, and credentials.
|
||||||
|
|
||||||
I won't share a syntax snippet for environments at the moment since I'm not yet
|
I won't share a syntax snippet for environments at the moment since I'm not yet
|
||||||
happy with it. But I'm very interested in how other people think of modeling
|
happy with it. I am very interested in how other people think of modeling
|
||||||
environments, and what characteristics of those environments are important for
|
environments, and what characteristics of those environments are important for
|
||||||
their continuous delivery process.
|
their continuous delivery process.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
||||||
My work thus far includes a full grammar for the description language that I've
|
My work thus far includes a full grammar for the description language that I've
|
||||||
been exploring, and with each passing week the parser and runtime to support
|
been exploring, and with each passing week the parser and runtime to support
|
||||||
it come a little bit closer to reality. I've got a clear model in my head of
|
it come a little bit closer to reality. I've got a clear model in my head of
|
||||||
|
|
Loading…
Reference in New Issue