1
0
mirror of https://github.com/falk-werner/webfuse synced 2024-10-27 20:34:10 +00:00
falk-werner_webfuse/bin/get_container_id.sh
nosamad b19a54d2f9 Squashed 'build/dobuild/' content from commit b017db7
git-subtree-dir: build/dobuild
git-subtree-split: b017db7c22e7c0ca6cee3f0f5ac1dd50f3b68eb9
2020-05-25 23:24:23 +02:00

40 lines
866 B
Bash
Executable File

#!/bin/sh
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
# This file is part of dobuild.
# Copyright (c) 2019 Contributors as noted in the AUTHORS file.
#
# SPDX-License-Identifier: MPL-2.0
set -e
container_id() {
if [ "$#" -le 0 ]; then
container_id_by_cgroup < /proc/self/cgroup
else
container_id_by_object "$@"
fi
}
container_id_by_object() {
"$DOCKER" inspect --format='{{.Id}}' "$@"
}
container_id_by_cgroup() {
while IFS= read -r cmd; do
id="$(echo "$cmd" | sed -n -e 's/[^:]*:[^:]*:.*\/\([0-9a-fA-F]\+\)$/\1/p')"
if container_id_by_object "$id" >/dev/null 2>&1; then
echo "$id"
return 0
fi
done
return 3
}
DOCKER="${DOCKER:-docker}"
container_id "$@"