Compare commits

..

2 Commits

Author SHA1 Message Date
david
199050122b Testing whereis
Some checks failed
continuous-integration/drone/pr Build is failing
2024-05-20 10:51:46 +02:00
david
97b3ca67e3 Using bash in Dockerfile run step
Some checks failed
continuous-integration/drone/pr Build is failing
2024-05-20 10:49:17 +02:00
2 changed files with 32 additions and 38 deletions

View File

@ -5,5 +5,7 @@ RUN apt-get update && apt-get install -y \
unzip \ unzip \
zip \ zip \
&& rm -rf /var/lib/apt/lists/* && rm -rf /var/lib/apt/lists/*
RUN "$(curl -fsSL https://git.phoenix.ipv64.de/public/warp4j/raw/branch/feature/update_install_script/install)" RUN whereis bash
RUN whereis env
RUN ["/usr/bin/bash", "-c", "$(curl -fsSL https://git.phoenix.ipv64.de/public/warp4j/raw/branch/feature/update_install_script/install)"]
ENTRYPOINT [ "/usr/local/bin/warp4j" ] ENTRYPOINT [ "/usr/local/bin/warp4j" ]

64
install
View File

@ -6,7 +6,7 @@ LOCATION=/usr/local/bin
# exit top level program from subshell # exit top level program from subshell
trap "exit 1" TERM trap "exit 1" TERM
export TOP_PID=$$ export TOP_PID=$$
fail() { function fail() {
kill -s TERM $TOP_PID kill -s TERM $TOP_PID
} }
@ -24,7 +24,7 @@ X64=x64
AARCH64=aarch64 AARCH64=aarch64
# returns this platform ID # returns this platform ID
get_this_platform() { function get_this_platform() {
local this_platform="$(uname -s)" local this_platform="$(uname -s)"
case $this_platform in case $this_platform in
Linux*) echo $LIN ;; Linux*) echo $LIN ;;
@ -37,7 +37,7 @@ get_this_platform() {
} }
# returns this platform architecture # returns this platform architecture
get_this_architecture() { function get_this_architecture() {
local this_machine="$(uname -m)" local this_machine="$(uname -m)"
case $this_machine in case $this_machine in
x86_64) echo $X64 ;; x86_64) echo $X64 ;;
@ -55,7 +55,7 @@ THIS_PLATFORM=$(get_this_platform)
THIS_ARCHITECTURE=$(get_this_architecture) THIS_ARCHITECTURE=$(get_this_architecture)
# fetches latest release download link for the platform # fetches latest release download link for the platform
get_warp_link() { function get_warp_link() {
local this_platform=$1 local this_platform=$1
local this_architecture=$2 local this_architecture=$2
@ -72,13 +72,13 @@ get_warp_link() {
} }
# downloads and installs single binary # downloads and installs single binary
install() { function install() {
local name=$1 local name=$1
local link=$2 local link=$2
local temp_location="/tmp/$name" local temp_location="/tmp/$name"
echo "Downloading $name..." echo "Downloading $name..."
curl -fsSL -o $temp_location $link curl -fsSL -o $temp_location $link
if [ $? != 0 ]; then if [[ $? != 0 ]]; then
echo "Error: Failed to download $name" >&2 echo "Error: Failed to download $name" >&2
fail fail
fi fi
@ -88,7 +88,7 @@ install() {
--owner=root \ --owner=root \
--group=root \ --group=root \
"$temp_location" "$LOCATION" "$temp_location" "$LOCATION"
if [ $? != 0 ]; then if [[ $? != 0 ]]; then
echo "Error: Failed to install $name" >&2 echo "Error: Failed to install $name" >&2
fail fail
fi fi
@ -96,34 +96,23 @@ install() {
} }
# returns missing dependencies # returns missing dependencies
get_missing_deps() { function get_missing_deps() {
if ! command -v awk > /dev/null 2<&1; then local deps=(
echo -n "awk " "awk" \
fi "curl" \
if ! command -v curl > /dev/null 2<&1; then "file" \
echo -n "curl " "grep" \
fi "sed" \
if ! command -v file > /dev/null 2<&1; then "sort" \
echo -n "file " "tar" \
fi "unzip" \
if ! command -v grep > /dev/null 2<&1; then "zip" \
echo -n "grep " )
fi for d in ${deps[@]}; do
if ! command -v sed > /dev/null 2<&1; then if ! command -v $d &> /dev/null ; then
echo -n "sed " echo -n "$d "
fi
if ! command -v sort > /dev/null 2<&1; then
echo -n "sort "
fi
if ! command -v tar > /dev/null 2<&1; then
echo -n "tar "
fi
if ! command -v unzip > /dev/null 2<&1; then
echo -n "unzip "
fi
if ! command -v zip > /dev/null 2<&1; then
echo -n "zip"
fi fi
done
} }
WARP4J_LINK="https://git.phoenix.ipv64.de/public/warp4j/raw/branch/master/warp4j" WARP4J_LINK="https://git.phoenix.ipv64.de/public/warp4j/raw/branch/master/warp4j"
@ -136,11 +125,14 @@ MISSING_DEPS=$(get_missing_deps)
install "warp-packer" "$WARP_LINK" && \ install "warp-packer" "$WARP_LINK" && \
install "warp4j" "$WARP4J_LINK" install "warp4j" "$WARP4J_LINK"
if [ -z "$MISSING_DEPS" ]; then if [[ -z $MISSING_DEPS ]]; then
echo "Successfully installed" echo "Successfully installed"
else else
echo "Main tools successfully installed" echo "Main tools successfully installed"
echo "Please install following with your package manager:" echo "Please install following with your package manager:"
echo $MISSING_DEPS for d in ${MISSING_DEPS[@]}; do
echo -n "$d "
done
echo
exit 1 exit 1
fi fi