Annotate

tools/build-env/here.sh @ 13323:7bfd6db52528

tools/build-env: Tools for building and testing in a container ./tools/build-env/build.sh Creates a container image based on Debian or Ubuntu ./tools/build-env/here.sh Starts a container and mounts in the current working directory, from where one can ./configure; make; make test etc
author Kim Alvefur <zash@zash.se>
date Sun, 12 Nov 2023 13:02:38 +0100
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
13323
7bfd6db52528 tools/build-env: Tools for building and testing in a container
Kim Alvefur <zash@zash.se>
parents:
diff changeset
1 #!/bin/sh -eux
7bfd6db52528 tools/build-env: Tools for building and testing in a container
Kim Alvefur <zash@zash.se>
parents:
diff changeset
2
7bfd6db52528 tools/build-env: Tools for building and testing in a container
Kim Alvefur <zash@zash.se>
parents:
diff changeset
3 tag="testing"
7bfd6db52528 tools/build-env: Tools for building and testing in a container
Kim Alvefur <zash@zash.se>
parents:
diff changeset
4
7bfd6db52528 tools/build-env: Tools for building and testing in a container
Kim Alvefur <zash@zash.se>
parents:
diff changeset
5 if [ "$#" -gt 0 ]; then
7bfd6db52528 tools/build-env: Tools for building and testing in a container
Kim Alvefur <zash@zash.se>
parents:
diff changeset
6 tag="$1"
7bfd6db52528 tools/build-env: Tools for building and testing in a container
Kim Alvefur <zash@zash.se>
parents:
diff changeset
7 shift
7bfd6db52528 tools/build-env: Tools for building and testing in a container
Kim Alvefur <zash@zash.se>
parents:
diff changeset
8 fi
7bfd6db52528 tools/build-env: Tools for building and testing in a container
Kim Alvefur <zash@zash.se>
parents:
diff changeset
9
7bfd6db52528 tools/build-env: Tools for building and testing in a container
Kim Alvefur <zash@zash.se>
parents:
diff changeset
10 containerify="$(command -v podman docker)"
7bfd6db52528 tools/build-env: Tools for building and testing in a container
Kim Alvefur <zash@zash.se>
parents:
diff changeset
11
7bfd6db52528 tools/build-env: Tools for building and testing in a container
Kim Alvefur <zash@zash.se>
parents:
diff changeset
12 $containerify run -it --rm \
7bfd6db52528 tools/build-env: Tools for building and testing in a container
Kim Alvefur <zash@zash.se>
parents:
diff changeset
13 -v "$PWD:$PWD" \
7bfd6db52528 tools/build-env: Tools for building and testing in a container
Kim Alvefur <zash@zash.se>
parents:
diff changeset
14 -w "$PWD" \
7bfd6db52528 tools/build-env: Tools for building and testing in a container
Kim Alvefur <zash@zash.se>
parents:
diff changeset
15 -v "$HOME/.cache:$PWD/.cache" \
7bfd6db52528 tools/build-env: Tools for building and testing in a container
Kim Alvefur <zash@zash.se>
parents:
diff changeset
16 --entrypoint /bin/bash \
7bfd6db52528 tools/build-env: Tools for building and testing in a container
Kim Alvefur <zash@zash.se>
parents:
diff changeset
17 --userns=keep-id \
7bfd6db52528 tools/build-env: Tools for building and testing in a container
Kim Alvefur <zash@zash.se>
parents:
diff changeset
18 --network \
7bfd6db52528 tools/build-env: Tools for building and testing in a container
Kim Alvefur <zash@zash.se>
parents:
diff changeset
19 host "prosody.im/build-env:$tag" "$@"