diff --git a/080_ci_cd/scripting/alternatives.md b/080_ci_cd/scripting/alternatives.md new file mode 100644 index 00000000..8a0473a9 --- /dev/null +++ b/080_ci_cd/scripting/alternatives.md @@ -0,0 +1,9 @@ +## Alternatives + + + +High-level programming language + +Abstraction (consume logic from existing tools) + +XXX \ No newline at end of file diff --git a/080_ci_cd/scripting/errors.md b/080_ci_cd/scripting/errors.md index d036e467..d1c47324 100644 --- a/080_ci_cd/scripting/errors.md +++ b/080_ci_cd/scripting/errors.md @@ -2,7 +2,7 @@ -set -o errexit +set -o errexit (all you need? No!) set -o nounset (?) diff --git a/080_ci_cd/scripting/performance.md b/080_ci_cd/scripting/performance.md index d997536a..9e4c5d8e 100644 --- a/080_ci_cd/scripting/performance.md +++ b/080_ci_cd/scripting/performance.md @@ -12,6 +12,16 @@ XXX +### Interpreted language + +XXX + +--- + +## Performance + + + ### Avoid excessive forking O(n), ~100 processes, 13 seconds: diff --git a/080_ci_cd/scripting/portability.md b/080_ci_cd/scripting/portability.md index ce7690e9..f87d6800 100644 --- a/080_ci_cd/scripting/portability.md +++ b/080_ci_cd/scripting/portability.md @@ -41,4 +41,6 @@ cat file | grep --quiet "pattern" # Works on both cat file | grep -q "pattern" -``` \ No newline at end of file +``` + +Decreases readability \ No newline at end of file diff --git a/080_ci_cd/scripting/readability.md b/080_ci_cd/scripting/readability.md index f7c700b2..5b5d4905 100644 --- a/080_ci_cd/scripting/readability.md +++ b/080_ci_cd/scripting/readability.md @@ -1,7 +1,7 @@ -## Readability - +## Readability + ### Avoid Oneliners ```bash @@ -11,16 +11,11 @@ curl -sSLf https://launchermeta.mojang.com/mc/game/version_manifest.json | jq -r ... or... -```bash -# Latest version of Docker Desktop -curl -sSf https://desktop.docker.com/linux/main/amd64/appcast.xml | xq -j | jq -r '.rss.channel.item.enclosure."@shortVersionString"' -``` - -... or... - ```bash # Tools supported by uniget -regctl manifest get ghcr.io/uniget-org/tools/metadata:main -p local --format=raw-body | jq -r '.layers[0].digest' | xargs regctl blob get ghcr.io/uniget-org/tools/metadata | tar -xzO metadata.json +regctl manifest get ghcr.io/uniget-org/tools/metadata:main -p local --format +raw-body | jq -r '.layers[0].digest' | xargs regctl blob get +ghcr.io/uniget-org/tools/metadata | tar -xzO metadata.json ``` --- diff --git a/080_ci_cd/scripting/when_to_avoid.md b/080_ci_cd/scripting/when_to_avoid.md index 54f9c4cc..682e069b 100644 --- a/080_ci_cd/scripting/when_to_avoid.md +++ b/080_ci_cd/scripting/when_to_avoid.md @@ -3,11 +3,18 @@ length +- https://github.com/nicholasdille/docker-setup/blob/v1.7.47 +- script of ~900 lines +- 4 sources files of ~1000 lines complexity +- https://github.com/nicholasdille/docker-setup/blob/v1.7.47 +- 4 sources files of ~1000 lines readability maintainability -performance (process forks) \ No newline at end of file +performance (process forks) + +logic (make or buy) \ No newline at end of file diff --git a/2025-11-20_ContainerConf-shell-code.html b/2025-11-20_ContainerConf-shell-code.html index 7ab87dcf..e0020943 100644 --- a/2025-11-20_ContainerConf-shell-code.html +++ b/2025-11-20_ContainerConf-shell-code.html @@ -4,15 +4,15 @@
-