summaryrefslogtreecommitdiff
path: root/topics/ci-cd
diff options
context:
space:
mode:
Diffstat (limited to 'topics/ci-cd')
-rw-r--r--topics/ci-cd/cd-logs.gmi6
-rw-r--r--topics/ci-cd/ci-rethink-slides.gmi28
2 files changed, 34 insertions, 0 deletions
diff --git a/topics/ci-cd/cd-logs.gmi b/topics/ci-cd/cd-logs.gmi
new file mode 100644
index 0000000..fbf0941
--- /dev/null
+++ b/topics/ci-cd/cd-logs.gmi
@@ -0,0 +1,6 @@
+# Continuous Deployment logs
+
+The logs of the continuously deployed development instances of genenetwork may be found at /export2/guix-containers/genenetwork-development/var/log/cd in tux02.
+
+This documentation may be out of date. So, if you can't find the logs on that path, read the container building script and look in the path that is mounted at /var/log/cd in the container.
+=> https://github.com/genenetwork/genenetwork-machines/blob/main/genenetwork-development-deploy.sh
diff --git a/topics/ci-cd/ci-rethink-slides.gmi b/topics/ci-cd/ci-rethink-slides.gmi
new file mode 100644
index 0000000..e8cb601
--- /dev/null
+++ b/topics/ci-cd/ci-rethink-slides.gmi
@@ -0,0 +1,28 @@
+# CI Rethink slides
+
+## Background
+* guix-forge is an independent general purpose project that powers our CI
+* guix-forge is built on laminar
+* CI jobs are just simple scripts
+* scripts are written in G-expressions, but don't have to be
+
+## So far
+* purpose-written scripts that were executed in profiles with the necessary dependencies
+* dependencies are from current Guix
+* container had to be rebuilt to update dependencies
+* jobs did not have access to high-level Guix features (package definitions, build systems, manifests, etc.)
+* jobs only understood low-level features (profile paths, store paths, etc.)
+* One advantage: job runs were fast
+
+## What's new?
+* jobs have access to the full expressive power of Guix
+* project repositories are channels
+* jobs pull from the channels and build all packages defined therein
+* job script definitions now in package definitions from channels
+* container need not be rebuilt each time dependencies change
+* Perfect reproducibility: Make Fred's life easier
+* One disadvantage: job runs will take a while
+
+## Why now?
+* Ludo's blog post “From development environments to continuous integration”
+* realization that project repositories could be channels \ No newline at end of file