mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager
synced 2024-10-14 20:18:39 +00:00
contrib,tools: move "nm-in-container.sh" script to "tools"
This script seems very useful to me. Give it a more prominent place and move it out from "contrib/scripts". Also do some further renaming.
This commit is contained in:
parent
b3583ec69c
commit
2c9faea63c
8
tools/nm-in-container/README.md
Normal file
8
tools/nm-in-container/README.md
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
Run NetworkManager in Container for Development
|
||||||
|
===============================================
|
||||||
|
|
||||||
|
Run `nm-in-container` script for running NetworkManager in a podman container.
|
||||||
|
This is useful for testing NetworkManager for development.
|
||||||
|
|
||||||
|
Try `./nm-in-container --help` to see options. See the bash history inside the
|
||||||
|
container for useful commands.
|
|
@ -44,7 +44,7 @@ if [ -z "$BASE_IMAGE" ]; then
|
||||||
fi
|
fi
|
||||||
|
|
||||||
BASEDIR_NM="$(readlink -f "$(dirname "$(readlink -f "$0")")/../..")"
|
BASEDIR_NM="$(readlink -f "$(dirname "$(readlink -f "$0")")/../..")"
|
||||||
BASEDIR="$BASEDIR_NM/contrib/scripts/nm-in-container.d"
|
BASEDIR_DATA="$BASEDIR_NM/tools/nm-in-container/data"
|
||||||
|
|
||||||
BASEDIR_NM_CI=
|
BASEDIR_NM_CI=
|
||||||
if [ -d "$BASEDIR_NM/.git/NetworkManager-ci" ] ; then
|
if [ -d "$BASEDIR_NM/.git/NetworkManager-ci" ] ; then
|
||||||
|
@ -124,10 +124,10 @@ create_dockerfile() {
|
||||||
local CONTAINERFILE="$1"
|
local CONTAINERFILE="$1"
|
||||||
local BASE_IMAGE="$2"
|
local BASE_IMAGE="$2"
|
||||||
|
|
||||||
cp "$BASEDIR_NM/contrib/scripts/NM-log" "$BASEDIR/data-NM-log"
|
cp "$BASEDIR_NM/contrib/scripts/NM-log" "$BASEDIR_DATA/data-NM-log"
|
||||||
CLEANUP_FILES+=( "$BASEDIR/data-NM-log" )
|
CLEANUP_FILES+=( "$BASEDIR_DATA/data-NM-log" )
|
||||||
|
|
||||||
cat <<EOF | tmp_file "$BASEDIR/data-motd"
|
cat <<EOF | tmp_file "$BASEDIR_DATA/data-motd"
|
||||||
*** nm-in-container:
|
*** nm-in-container:
|
||||||
|
|
||||||
find NetworkManager bind mounted at $BASEDIR_NM
|
find NetworkManager bind mounted at $BASEDIR_NM
|
||||||
|
@ -205,7 +205,7 @@ Run NM-ci tests after creating eth1 with
|
||||||
\`nm-env-prepare.sh --prefix eth -i 1 && sleep 1 && nmcli device connect eth1\`.
|
\`nm-env-prepare.sh --prefix eth -i 1 && sleep 1 && nmcli device connect eth1\`.
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
cat <<EOF | tmp_file "$BASEDIR/data-bashrc.my"
|
cat <<EOF | tmp_file "$BASEDIR_DATA/data-bashrc.my"
|
||||||
alias m="make -j 8"
|
alias m="make -j 8"
|
||||||
alias n="ninja -C build"
|
alias n="ninja -C build"
|
||||||
|
|
||||||
|
@ -254,7 +254,7 @@ if test "\$SHOW_MOTD" != 0; then
|
||||||
fi
|
fi
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
cat <<EOF | tmp_file "$BASEDIR/data-90-my.conf"
|
cat <<EOF | tmp_file "$BASEDIR_DATA/data-90-my.conf"
|
||||||
[main]
|
[main]
|
||||||
no-auto-default=*
|
no-auto-default=*
|
||||||
debug=RLIMIT_CORE,fatal-warnings
|
debug=RLIMIT_CORE,fatal-warnings
|
||||||
|
@ -272,10 +272,10 @@ match-device=interface-name:net*,interface-name:eth*
|
||||||
managed=1
|
managed=1
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
cat <<EOF | tmp_file "$BASEDIR/data-95-user.conf"
|
cat <<EOF | tmp_file "$BASEDIR_DATA/data-95-user.conf"
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
cat <<EOF | tmp_file "$BASEDIR/data-bash_history" 600
|
cat <<EOF | tmp_file "$BASEDIR_DATA/data-bash_history" 600
|
||||||
NM-log
|
NM-log
|
||||||
NM-log /tmp/nm-log.txt
|
NM-log /tmp/nm-log.txt
|
||||||
behave -f html --stop -t ipv4_method_static_with_IP ./features/scenarios/ipv4.feature
|
behave -f html --stop -t ipv4_method_static_with_IP ./features/scenarios/ipv4.feature
|
||||||
|
@ -305,17 +305,17 @@ systemctl daemon-reload ; systemctl restart NetworkManager
|
||||||
systemctl status NetworkManager
|
systemctl status NetworkManager
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
cat <<EOF | tmp_file "$BASEDIR/data-gdbinit"
|
cat <<EOF | tmp_file "$BASEDIR_DATA/data-gdbinit"
|
||||||
set history save
|
set history save
|
||||||
set history filename ~/.gdb_history
|
set history filename ~/.gdb_history
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
cat <<EOF | tmp_file "$BASEDIR/data-gdb_history" 600
|
cat <<EOF | tmp_file "$BASEDIR_DATA/data-gdb_history" 600
|
||||||
run
|
run
|
||||||
run --debug 2>&1 | tee /tmp/nm-log.txt
|
run --debug 2>&1 | tee /tmp/nm-log.txt
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
cat <<EOF | tmp_file "$BASEDIR/data-behaverc" 600
|
cat <<EOF | tmp_file "$BASEDIR_DATA/data-behaverc" 600
|
||||||
[behave.formatters]
|
[behave.formatters]
|
||||||
html = behave_html_formatter:HTMLFormatter
|
html = behave_html_formatter:HTMLFormatter
|
||||||
EOF
|
EOF
|
||||||
|
@ -547,7 +547,7 @@ do_clean() {
|
||||||
do_build() {
|
do_build() {
|
||||||
container_image_exists "$CONTAINER_NAME_REPOSITORY:$CONTAINER_NAME_TAG" && return 0
|
container_image_exists "$CONTAINER_NAME_REPOSITORY:$CONTAINER_NAME_TAG" && return 0
|
||||||
|
|
||||||
CONTAINERFILE="$BASEDIR/containerfile"
|
CONTAINERFILE="$BASEDIR_DATA/containerfile"
|
||||||
create_dockerfile "$CONTAINERFILE" "$BASE_IMAGE"
|
create_dockerfile "$CONTAINERFILE" "$BASE_IMAGE"
|
||||||
podman build --squash-all --tag "$CONTAINER_NAME_REPOSITORY:$CONTAINER_NAME_TAG" -f "$CONTAINERFILE"
|
podman build --squash-all --tag "$CONTAINER_NAME_REPOSITORY:$CONTAINER_NAME_TAG" -f "$CONTAINERFILE"
|
||||||
}
|
}
|
Loading…
Reference in a new issue