Skip to content

Commit 3058eb4

Browse files
committed
fix: address feedback from @JulienMalka
1 parent ec0113f commit 3058eb4

File tree

3 files changed

+22
-19
lines changed

3 files changed

+22
-19
lines changed

resources/typst/configuration-management-summary.typ

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -18,25 +18,23 @@
1818
[
1919
- Shell commands
2020
],
21-
[
22-
- Shell scripts
23-
],
21+
[],
2422
table.cell(align: horizon + center)[*Convergent*],
2523
table.hline(stroke: .5pt),
2624
[
27-
- Ansible #cite(<ansible>,form:"normal")
28-
- Chef #cite(<chef>,form:"normal")
29-
- Docker #cite(<docker>,form:"normal")
25+
- Ansible #cite(<ansible>, form: "normal")
26+
- Chef #cite(<chef>, form: "normal")
27+
- Docker #cite(<docker>, form: "normal")
3028
],
3129
[
32-
- Puppet #cite(<puppet>,form:"normal")
33-
- Terraform #cite(<terraform>,form:"normal")
30+
- Puppet #cite(<puppet>, form: "normal")
31+
- Terraform #cite(<terraform>, form: "normal")
3432
],
3533
table.hline(stroke: .5pt),
3634
table.cell(align: horizon + center)[*Congruent*],
3735
[],
3836
[
39-
- Guix #cite(<guixwebsite>,form:"normal")
40-
- Nix #cite(<nix>,form:"normal")
37+
- Guix #cite(<guixwebsite>, form: "normal")
38+
- Nix #cite(<nix>, form: "normal")
4139
],
4240
)

src/thesis/2-reproducibility.typ

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1412,7 +1412,7 @@ entirely achievable, we will delve deeper into these challenges by exploring the
14121412
impact of non-deterministic compilers and the strategies to mitigate these
14131413
challenges using different methods.
14141414

1415-
== Deterministic Builds And Environments
1415+
== Deterministic Builds And Environments <ch2-deterministic-builds-and-environments>
14161416

14171417
In this section, we will explore the concept of deterministic builds, and the
14181418
potential sources of non-determinism in software builds.
@@ -1470,9 +1470,9 @@ and at any point in the past or future​​​​.
14701470

14711471
Reproducibility relies on stable, consistent and well-maintained codebases but
14721472
also heavily depends on stable, consistent and well-maintained environments as
1473-
seen in (add ref to ch2-environments). In addition, a critical component is
1473+
seen in #ref(<ch2-deterministic-builds-and-environments>). In addition, a critical component is
14741474
environment configuration management. Configuration management plays a critical
1475-
role inensuring reproducibility by mitigating the non-deterministic behaviours
1475+
role in ensuring reproducibility by mitigating the non-deterministic behaviours
14761476
introduced by configuration drifts.
14771477

14781478
#info-box[
@@ -1524,9 +1524,9 @@ if not impossible. Environments may progressively "converge" towards a common
15241524
state, but subtle differences can persist, introducing variability. To
15251525
illustrate this model, we could think of an arbitrary environment that needs to
15261526
be configured in a specific way, reach a particular well known state. For
1527-
example, some specific dependencies has to be installed to run a particular
1527+
example, some specific dependencies have to be installed to run a particular
15281528
service. Tools like Puppet #cite(<puppet>, form: "normal"), Chef
1529-
#cite(<chef>, form: "normal"), Terraform #cite(<terraform>,form: "normal")
1529+
#cite(<chef>, form: "normal"), Terraform #cite(<terraform>, form: "normal")
15301530
and Ansible #cite(<ansible>, form: "normal") might help to achieve this goal.
15311531

15321532
While convergent management offers flexibility in responding to unforeseen
@@ -1570,7 +1570,7 @@ approaches based on the environment's needs.
15701570
#info-box[
15711571
Immutable environments ((add ref to ch2-environments)) are environments that are designed
15721572
to be unchangeable once they are created. They are often used in containers
1573-
#eg[Docker #cite(<docker>,form:"normal")], where the ability to quickly create
1573+
#eg[Docker #cite(<docker>, form: "normal")], where the ability to quickly create
15741574
and destroy environments is essential. Immutable environments enhance
15751575
reproducibility and reliability, making them an ideal choice for environments
15761576
that require high levels of predictability and stability.
@@ -1623,15 +1623,19 @@ configuration can be applied multiple times without altering the environment
16231623
beyond its intended state. This abstraction simplifies understanding and
16241624
maintenance by allowing the system to determine the necessary actions to achieve
16251625
the desired state. Tools such as Puppet #cite(<puppet>, form: "normal"),
1626-
Kubernetes #cite(<kubernetes>,form: "normal"),
1627-
Terraform #cite(<terraform>,form: "normal") and, under some conditions,
1626+
Kubernetes #cite(<kubernetes>, form: "normal"),
1627+
Terraform #cite(<terraform>, form: "normal") and, under some conditions,
16281628
Docker #cite(<docker>, form: "normal") are used to specify the desired end
16291629
state. These tools typically feature their own specific #gls("DSL") to create
16301630
high-level descriptions of the expected environment's state, as opposed to
16311631
issuing imperative and procedural commands. The declarative approach mitigates
16321632
the risk of configuration drift by prioritising idempotence, maintaining
16331633
explicit dependency graphs, and ensuring a strong awareness of the current state
1634-
of the environment​​ #cite(<HunterGCP>,form:"normal", supplement: [p. 348]).
1634+
of the environment​​ #cite(<HunterGCP>, form: "normal", supplement: [p. 348]).
1635+
1636+
// This doesn't really convince me, you classify a shell command as
1637+
// "declarative" when they are in shell scripts, which is not much different
1638+
// to me as a Dockerfile
16351639

16361640
#info-box(kind: "note")[
16371641
In @ch2-table-configuration-mgmt, Docker #cite(<docker>, form: "normal") and

src/thesis/imports/preamble.typ

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,5 +5,6 @@
55
#import "@preview/xarrow:0.3.1": xarrow, xarrowSquiggly, xarrowTwoHead
66
#import "@preview/hydra:0.6.1": *
77
#import "@preview/cetz:0.3.4"
8+
#import "@preview/cetz-plot:0.1.1": *
89
#import "colors.typ": *
910
#import "workarounds.typ": *

0 commit comments

Comments
 (0)