summaryrefslogtreecommitdiffstats
path: root/examples
diff options
context:
space:
mode:
authorMatthias Beyer <mail@beyermatthias.de>2021-02-10 19:14:55 +0100
committerMatthias Beyer <mail@beyermatthias.de>2021-02-11 18:22:38 +0100
commitc2fb88e4ea953d4dbc01ffc6341ccb4e9e59290c (patch)
tree8b6d21dd6a91a6e014beecb58bff32cd08542d06 /examples
parentf1eca4972dafc3e5eeb63a1efd65f76d2d7c6ed4 (diff)
Remove simple examples, add complex one
This patch removes the many simple examples and replaces them with one big example repository with 26 packages that have a complex dependency setup. This is nice for testing. Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
Diffstat (limited to 'examples')
-rw-r--r--examples/packages/1/Makefile62
-rw-r--r--examples/packages/1/README.md60
-rw-r--r--examples/packages/1/repo/a/pkg.toml14
-rw-r--r--examples/packages/1/repo/b/pkg.toml41
-rw-r--r--examples/packages/1/repo/c/pkg.toml15
-rw-r--r--examples/packages/1/repo/config.toml41
-rw-r--r--examples/packages/1/repo/d/pkg.toml14
-rw-r--r--examples/packages/1/repo/e/pkg.toml11
-rw-r--r--examples/packages/1/repo/f/pkg.toml11
-rw-r--r--examples/packages/1/repo/g/pkg.toml11
-rw-r--r--examples/packages/1/repo/h/pkg.toml14
-rw-r--r--examples/packages/1/repo/i/pkg.toml11
-rw-r--r--examples/packages/1/repo/j/pkg.toml11
-rw-r--r--examples/packages/1/repo/linterscript3
-rw-r--r--examples/packages/1/repo/pkg.toml71
-rw-r--r--examples/packages/1/sources/a-1.source1
-rw-r--r--examples/packages/1/sources/b-2.source1
-rw-r--r--examples/packages/1/sources/c-3.source1
-rw-r--r--examples/packages/1/sources/d-4.source1
-rw-r--r--examples/packages/1/sources/e-5.source1
-rw-r--r--examples/packages/1/sources/f-6.source1
-rw-r--r--examples/packages/1/sources/g-7.source1
-rw-r--r--examples/packages/1/sources/h-8.source1
-rw-r--r--examples/packages/1/sources/i-9.source1
-rw-r--r--examples/packages/1/sources/j-10.source1
-rw-r--r--examples/packages/Makefile (renamed from examples/packages/chain-dependencies/Makefile)11
-rw-r--r--examples/packages/README.md69
-rw-r--r--examples/packages/chain-dependencies/README.md25
-rw-r--r--examples/packages/chain-dependencies/repo/b/pkg.toml9
-rw-r--r--examples/packages/chain-dependencies/repo/c/pkg.toml9
-rw-r--r--examples/packages/diamond-dependencies/Makefile33
-rw-r--r--examples/packages/diamond-dependencies/README.md20
-rw-r--r--examples/packages/diamond-dependencies/repo/a/pkg.toml7
-rw-r--r--examples/packages/diamond-dependencies/repo/config.toml52
-rw-r--r--examples/packages/diamond-dependencies/repo/pkg.toml20
-rw-r--r--examples/packages/diamond-dependencies/sources/a-1/src-e5fa44f2b31c1fb553b6021e7360d07d5d91ff5e.source1
-rw-r--r--examples/packages/diamond-dependencies/sources/b-2/src-7448d8798a4380162d4b56f9b452e2f6f9e24e7a.source1
-rw-r--r--examples/packages/diamond-dependencies/sources/c-3/src-a3db5c13ff90a36963278c6a39e4ee3c22e2a436.source1
-rw-r--r--examples/packages/example_tmux/Makefile38
-rw-r--r--examples/packages/example_tmux/README.md4
-rw-r--r--examples/packages/example_tmux/config.toml46
-rw-r--r--examples/packages/example_tmux/pkg.toml60
-rw-r--r--examples/packages/repo/a/pkg.toml (renamed from examples/packages/chain-dependencies/repo/a/pkg.toml)3
-rw-r--r--examples/packages/repo/b/pkg.toml (renamed from examples/packages/diamond-dependencies/repo/b/pkg.toml)3
-rw-r--r--examples/packages/repo/c/pkg.toml (renamed from examples/packages/diamond-dependencies/repo/c/pkg.toml)3
-rw-r--r--examples/packages/repo/config.toml (renamed from examples/packages/chain-dependencies/repo/config.toml)8
-rw-r--r--examples/packages/repo/d/pkg.toml (renamed from examples/packages/diamond-dependencies/repo/d/pkg.toml)3
-rw-r--r--examples/packages/repo/e/pkg.toml10
-rw-r--r--examples/packages/repo/f/pkg.toml10
-rw-r--r--examples/packages/repo/g/pkg.toml10
-rw-r--r--examples/packages/repo/h/pkg.toml7
-rw-r--r--examples/packages/repo/i/pkg.toml10
-rw-r--r--examples/packages/repo/j/pkg.toml10
-rw-r--r--examples/packages/repo/k/pkg.toml10
-rw-r--r--examples/packages/repo/l/pkg.toml10
-rw-r--r--examples/packages/repo/m/pkg.toml7
-rw-r--r--examples/packages/repo/n/pkg.toml7
-rw-r--r--examples/packages/repo/o/pkg.toml10
-rw-r--r--examples/packages/repo/p/pkg.toml10
-rw-r--r--examples/packages/repo/pkg.toml (renamed from examples/packages/chain-dependencies/repo/pkg.toml)0
-rw-r--r--examples/packages/repo/q/pkg.toml10
-rw-r--r--examples/packages/repo/r/pkg.toml7
-rw-r--r--examples/packages/repo/s/pkg.toml7
-rw-r--r--examples/packages/repo/t/pkg.toml7
-rw-r--r--examples/packages/repo/u/pkg.toml7
-rw-r--r--examples/packages/repo/v/pkg.toml10
-rw-r--r--examples/packages/repo/w/pkg.toml10
-rw-r--r--examples/packages/repo/x/pkg.toml10
-rw-r--r--examples/packages/repo/y/pkg.toml10
-rw-r--r--examples/packages/repo/z/pkg.toml7
-rw-r--r--examples/packages/sources/a-1/src-e5fa44f2b31c1fb553b6021e7360d07d5d91ff5e.source (renamed from examples/packages/chain-dependencies/sources/a-1/src-e5fa44f2b31c1fb553b6021e7360d07d5d91ff5e.source)0
-rw-r--r--examples/packages/sources/b-2/src-7448d8798a4380162d4b56f9b452e2f6f9e24e7a.source (renamed from examples/packages/chain-dependencies/sources/b-2/src-7448d8798a4380162d4b56f9b452e2f6f9e24e7a.source)0
-rw-r--r--examples/packages/sources/c-3/src-a3db5c13ff90a36963278c6a39e4ee3c22e2a436.source (renamed from examples/packages/chain-dependencies/sources/c-3/src-a3db5c13ff90a36963278c6a39e4ee3c22e2a436.source)0
-rw-r--r--examples/packages/sources/d-4/src-9c6b057a2b9d96a4067a749ee3b3b0158d390cf1.source (renamed from examples/packages/diamond-dependencies/sources/d-4/src-9c6b057a2b9d96a4067a749ee3b3b0158d390cf1.source)0
-rw-r--r--examples/packages/sources/e-5/src-5d9474c0309b7ca09a182d888f73b37a8fe1362c.source1
-rw-r--r--examples/packages/sources/f-6/src-ccf271b7830882da1791852baeca1737fcbe4b90.source1
-rw-r--r--examples/packages/sources/g-7/src-d3964f9dad9f60363c81b688324d95b4ec7c8038.source1
-rw-r--r--examples/packages/sources/h-8/src-136571b41aa14adc10c5f3c987d43c02c8f5d498.source1
-rw-r--r--examples/packages/sources/i-9/src-b6abd567fa79cbe0196d093a067271361dc6ca8b.source1
-rw-r--r--examples/packages/sources/j-10/src-4143d3a341877154d6e95211464e1df1015b74bd.source1
-rw-r--r--examples/packages/sources/k-11/src-dd71038f3463f511ee7403dbcbc87195302d891c.source1
-rw-r--r--examples/packages/sources/l-12/src-ad552e6dc057d1d825bf49df79d6b98eba846ebe.source1
-rw-r--r--examples/packages/sources/m-13/src-feee44ad365b6b1ec75c5621a0ad067371102854.source1
-rw-r--r--examples/packages/sources/n-14/src-030514d80869744a4e2f60d2fd37d6081f5ed01a.source1
-rw-r--r--examples/packages/sources/o-15/src-587b596f04f7db9c2cad3d6b87dd2b3a05de4f35.source1
-rw-r--r--examples/packages/sources/p-16/src-3596ea087bfdaf52380eae441077572ed289d657.source1
-rw-r--r--examples/packages/sources/q-17/src-ad48103e4fc71796e9708cafc43adeed0d1076b7.source1
-rw-r--r--examples/packages/sources/r-18/src-24b9c1f3fddff79893e5304f998f2f95ebebd149.source1
-rw-r--r--examples/packages/sources/s-19/src-ba9f376fa71904ccde2a756a24a4e47ec014ee0a.source1
-rw-r--r--examples/packages/sources/t-20/src-d0758565fd06c37aa66b071160d156f5628cd518.source1
-rw-r--r--examples/packages/sources/u-21/src-8eecbb71d418ef8c7d583dd506a994b1bc1c3f7b.source1
-rw-r--r--examples/packages/sources/v-22/src-a66ca4290ebaf525721fc670ea53476a15957f9e.source1
-rw-r--r--examples/packages/sources/w-23/src-aec46dc0de48f39f98f9572b6560ca3f0916b715.source1
-rw-r--r--examples/packages/sources/x-24/src-b31990eea1cee9f421c933461a2f3c3dd741a58b.source1
-rw-r--r--examples/packages/sources/y-25/src-c6e4ffdb7e1f4c736fb7ab897162332b4619d9ca.source1
-rw-r--r--examples/packages/sources/z-26/src-a0361d509d714f50e954ffeb49ac18222609cf2a.source1
96 files changed, 306 insertions, 738 deletions
diff --git a/examples/packages/1/Makefile b/examples/packages/1/Makefile
deleted file mode 100644
index 9de0fb9..0000000
--- a/examples/packages/1/Makefile
+++ /dev/null
@@ -1,62 +0,0 @@
-.PHONY: all
-all: directories copyrepo
-
-directories: ${BUTIDO_RELEASES} ${BUTIDO_STAGING} ${BUTIDO_SOURCE_CACHE} ${BUTIDO_LOG_DIR} ${BUTIDO_REPO}
-
-
-# to start a webserver for serving the source files.
-webserver: ./sources ${BUTIDO_SOURCE_CACHE}
- devd -A 127.0.0.1 -p 8180 -T ./sources
-
-
-copyrepo: ${BUTIDO_REPO} check-env
- cp -rv ./repo/* ${BUTIDO_REPO}/
- cd ${BUTIDO_REPO}/ && git init && git add . && git commit -m init
-
-${BUTIDO_RELEASES}: check-env
- mkdir -p "${BUTIDO_RELEASES}"
-
-${BUTIDO_STAGING}: check-env
- mkdir -p "${BUTIDO_STAGING}"
-
-${BUTIDO_SOURCE_CACHE}: check-env
- mkdir -p "${BUTIDO_SOURCE_CACHE}"
-
-${BUTIDO_LOG_DIR}: check-env
- mkdir -p "${BUTIDO_LOG_DIR}"
-
-${BUTIDO_REPO}: check-env
- mkdir -p "${BUTIDO_REPO}"
-
-
-check-env:
-ifndef BUTIDO_RELEASES
- $(error BUTIDO_RELEASES is undefined)
-endif
-ifndef BUTIDO_STAGING
- $(error BUTIDO_STAGING is undefined)
-endif
-ifndef BUTIDO_SOURCE_CACHE
- $(error BUTIDO_SOURCE_CACHE is undefined)
-endif
-ifndef BUTIDO_LOG_DIR
- $(error BUTIDO_LOG_DIR is undefined)
-endif
-ifndef BUTIDO_REPO
- $(error BUTIDO_REPO is undefined)
-endif
-ifndef BUTIDO_DATABASE_HOST
- $(error BUTIDO_DATABASE_HOST is undefined)
-endif
-ifndef BUTIDO_DATABASE_PORT
- $(error BUTIDO_DATABASE_PORT is undefined)
-endif
-ifndef BUTIDO_DATABASE_USER
- $(error BUTIDO_DATABASE_USER is undefined)
-endif
-ifndef BUTIDO_DATABASE_PASSWORD
- $(error BUTIDO_DATABASE_PASSWORD is undefined)
-endif
-ifndef BUTIDO_DATABASE_NAME
- $(error BUTIDO_DATABASE_NAME is undefined)
-endif
diff --git a/examples/packages/1/README.md b/examples/packages/1/README.md
deleted file mode 100644
index 4c680d2..0000000
--- a/examples/packages/1/README.md
+++ /dev/null
@@ -1,60 +0,0 @@
-# Example 1
-
-This is an example of packages.
-
-It contains only scripts that are packaged and not real packages, but it tries
-to resemble a real packaging process cleanly, including downloads and even
-failing builds (configurable via ENV variables).
-
-
-## Setup
-
-The top-level `shell.nix` file contains a list of environment variables that are
-required for butido and the Makefile to automagically find the right locations.
-
-The `shell.nix` file can be called with
-`nix-shell ./shell.nix --argstr example 1` to explicitely select the environment
-for example 1.
-
-
-## Downloads
-
-The downloads are done from localhost, where a (python) web server has to serve
-the files.
-Butido can download from there.
-
-
-## Packages
-
-The packages are dependend on eachother like this:
-
-```
-a
- `- b
- | `- d
- | | `- i
- | `- e
- | `- f
- `- c
- `- g
- `- h
- `- j
-```
-
-## Database
-
-The database host is to be expected to run with the settings specified in the
-`shell.nix` file (see `example_1_env`).
-
-See `/scripts/dev-pg-container.sh` for how to start the container.
-Use `diesel db reset` to setup the database.
-
-
-## Build
-
-The actual build is done in /tmp, where directories are created for the sources,
-staging packages, released packages, the repository of package definitions and
-the logs.
-
-The `Makefile` can be used to do this.
-
diff --git a/examples/packages/1/repo/a/pkg.toml b/examples/packages/1/repo/a/pkg.toml
deleted file mode 100644
index 6261999..0000000
--- a/examples/packages/1/repo/a/pkg.toml
+++ /dev/null
@@ -1,14 +0,0 @@
-name = "a"
-version = "1"
-
-[sources.src]
-url = "http://localhost:8180/a-1.source"
-hash.hash = "eb68d0823f7047958133e66ebedc923825e8a8fe"
-
-[dependencies]
-runtime = ["b =2", "c =3"]
-
-[phases]
-build.script = '''
- echo "Building {{name}} in version {{version}}"
-'''
diff --git a/examples/packages/1/repo/b/pkg.toml b/examples/packages/1/repo/b/pkg.toml
deleted file mode 100644
index df8cd3f..0000000
--- a/examples/packages/1/repo/b/pkg.toml
+++ /dev/null
@@ -1,41 +0,0 @@
-name = "b"
-version = "2"
-
-[sources.src]
-url = "http://localhost:8180/b-2.source"
-hash.hash = "89cad6f574693c02c8ecf94983ec20ffad43af0b"
-
-[dependencies]
-build = ["f =6"]
-runtime = ["d =4", "e =5"]
-
-[environment]
-FOO = "123"
-BAR = "bla"
-
-[phases]
-build.script = '''
- echo "Look my pretty variables: $FOO"
- if [[ -z "$FOO" ]]; then
- {{state "ERR" "Failed to find variable FOO"}}
- exit 1
- fi
-
- if [[ "$FOO" != "123" ]]; then
- {{state "ERR" "FOO is not equal to '123'"}}
- exit 1
- fi
-
- echo "Look my pretty variables: $BAR"
- if [[ -z "$BAR" ]]; then
- {{state "ERR" "Failed to find variable BAR"}}
- exit 1
- fi
-
- if [[ "$BAR" != "bla" ]]; then
- {{state "ERR" "BAR is not equal to 'bla'"}}
- exit 1
- fi
-
- echo "Building {{name}} in version {{version}}"
-'''
diff --git a/examples/packages/1/repo/c/pkg.toml b/examples/packages/1/repo/c/pkg.toml
deleted file mode 100644
index 67533fb..0000000
--- a/examples/packages/1/repo/c/pkg.toml
+++ /dev/null
@@ -1,15 +0,0 @@
-name = "c"
-version = "3"
-
-[sources.src]
-url = "http://localhost:8180/c-3.source"
-hash.hash = "ee4110c6e42791861e5720646c965580a0ddae8d"
-
-[dependencies]
-runtime = ["g =7", "h =8"]
-
-
-[phases]
-build.script = '''
- echo "Building {{name}} in version {{version}}"
-'''
diff --git a/examples/packages/1/repo/config.toml b/examples/packages/1/repo/config.toml
deleted file mode 100644
index 79f9fc8..0000000
--- a/examples/packages/1/repo/config.toml
+++ /dev/null
@@ -1,41 +0,0 @@
-# Configuration file for BUTIDO for this repository
-
-# In the example, these are configured via the environment.
-# See README.md
-#releases = "/tmp/example-1-releases"
-#staging = "/tmp/example-1-staging"
-#source_cache = "/tmp/example-1-sources"
-#log_dir = "/tmp/example-1-logs"
-#database_host = "localhost"
-#database_port = 5432
-#database_user = "pgdev"
-#database_password = "password"
-#database_name = "butido"
-
-script_highlight_theme = "Solarized (dark)"
-
-script_linter = "linterscript"
-
-# Phases which can be configured in the packages
-available_phases = [ "checksource", "unpack", "build", "package" ]
-
-[docker]
-# Images which can be used to build
-# images not listed here are automatically rejected
-images = [ "debian:bullseye" ]
-verify_images_present = true
-
-# List of docker endpoints
-[[docker.endpoints]]
-name = "localhost"
-uri = "http://0.0.0.0:8095"
-endpoint_type = "http"
-speed = 1
-maxjobs = 10
-
-[containers]
-# environment variables which are allowed during container start
-# This way, errors (typos) when passing environment to a build can be prevented
-check_env_names = true
-allowed_env = [ "FOO", "BAR" ]
-
diff --git a/examples/packages/1/repo/d/pkg.toml b/examples/packages/1/repo/d/pkg.toml
deleted file mode 100644
index ff4430d..0000000
--- a/examples/packages/1/repo/d/pkg.toml
+++ /dev/null
@@ -1,14 +0,0 @@
-name = "d"
-version = "4"
-
-[sources.src]
-url = "http://localhost:8180/d-4.source"
-hash.hash = "e8332116d7a7104f4affc10b6c65a93027441437"
-
-[dependencies]
-build = ["i =9"]
-
-[phases]
-build.script = '''
- echo "Building {{name}} in version {{version}}"