mirror of
https://code.forgejo.org/actions/setup-forgejo.git
synced 2024-11-30 10:11:03 -05:00
no longer use /usr/local/bin
This commit is contained in:
parent
f147de9c79
commit
418489ad4f
4 changed files with 15 additions and 13 deletions
|
@ -48,7 +48,7 @@ jobs:
|
||||||
LXC_IP_PREFIX=10.0.10 forgejo-dependencies.sh
|
LXC_IP_PREFIX=10.0.10 forgejo-dependencies.sh
|
||||||
|
|
||||||
forgejo-binary.sh ensure_user forgejo
|
forgejo-binary.sh ensure_user forgejo
|
||||||
chown forgejo $DIR /usr/local/bin
|
chown forgejo $DIR
|
||||||
su -c "DIR=$DIR bash -x forgejo-binary.sh setup root admin1234 ${{ matrix.binary }}" forgejo
|
su -c "DIR=$DIR bash -x forgejo-binary.sh setup root admin1234 ${{ matrix.binary }}" forgejo
|
||||||
|
|
||||||
su -c "DIR=$DIR bash -x forgejo-runner.sh setup" forgejo
|
su -c "DIR=$DIR bash -x forgejo-runner.sh setup" forgejo
|
||||||
|
|
|
@ -98,7 +98,7 @@ runs:
|
||||||
fi
|
fi
|
||||||
if test "${{ inputs.binary }}"; then
|
if test "${{ inputs.binary }}"; then
|
||||||
forgejo-binary.sh ensure_user forgejo
|
forgejo-binary.sh ensure_user forgejo
|
||||||
chown forgejo $(pwd) /usr/local/bin
|
chown forgejo $(pwd)
|
||||||
su -c "DIR=$(pwd) forgejo-binary.sh setup ${{ inputs.user }} ${{ inputs.password }} ${{ inputs.binary }}" forgejo
|
su -c "DIR=$(pwd) forgejo-binary.sh setup ${{ inputs.user }} ${{ inputs.password }} ${{ inputs.binary }}" forgejo
|
||||||
su -c "DIR=$(pwd) forgejo-runner.sh setup ${{ inputs.runner }} ${{ inputs.runner-version }} $(cat forgejo-url)" forgejo
|
su -c "DIR=$(pwd) forgejo-runner.sh setup ${{ inputs.runner }} ${{ inputs.runner-version }} $(cat forgejo-url)" forgejo
|
||||||
else
|
else
|
||||||
|
|
|
@ -66,16 +66,18 @@ function checkout() {
|
||||||
function build_runner() {
|
function build_runner() {
|
||||||
local git="$1"
|
local git="$1"
|
||||||
local version="${2:-main}"
|
local version="${2:-main}"
|
||||||
local dir=$(mktemp -d)
|
local dir="$3"
|
||||||
|
|
||||||
|
local tmp=$(mktemp -d)
|
||||||
(
|
(
|
||||||
cd $dir
|
cd $tmp
|
||||||
checkout "$git"
|
checkout "$git"
|
||||||
dependency_go
|
dependency_go
|
||||||
cd forgejo-runner
|
cd forgejo-runner
|
||||||
git checkout "$version"
|
git checkout "$version"
|
||||||
make build
|
make build
|
||||||
)
|
)
|
||||||
mv $dir/forgejo-runner/forgejo-runner /usr/local/bin
|
mv $tmp/forgejo-runner/forgejo-runner $dir
|
||||||
forgejo-runner --version
|
forgejo-runner --version
|
||||||
rm -fr "$dir"
|
rm -fr "$tmp"
|
||||||
}
|
}
|
||||||
|
|
|
@ -20,12 +20,12 @@ function download() {
|
||||||
local runner_repository="$1"
|
local runner_repository="$1"
|
||||||
local version="$2"
|
local version="$2"
|
||||||
|
|
||||||
if ! which forgejo-runner > /dev/null; then
|
if ! which $DIR/forgejo-runner > /dev/null; then
|
||||||
if ! curl -L --fail -sS $runner_repository/releases/download/$version/forgejo-runner-${version#v}-linux-amd64 > /usr/local/bin/forgejo-runner ; then
|
if ! curl -L --fail -sS $runner_repository/releases/download/$version/forgejo-runner-${version#v}-linux-amd64 > $DIR/forgejo-runner ; then
|
||||||
# backward compatibility for for the naming scheme prior to 3.0.0
|
# backward compatibility for for the naming scheme prior to 3.0.0
|
||||||
curl -L --fail -sS $runner_repository/releases/download/$version/forgejo-runner-linux-amd64 > /usr/local/bin/forgejo-runner
|
curl -L --fail -sS $runner_repository/releases/download/$version/forgejo-runner-linux-amd64 > $DIR/forgejo-runner
|
||||||
fi
|
fi
|
||||||
chmod 755 /usr/local/bin/forgejo-runner
|
chmod 755 $DIR/forgejo-runner
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -35,7 +35,7 @@ function register() {
|
||||||
$DIR/forgejocli actions generate-runner-token | tee $DIR/forgejo-runner-token
|
$DIR/forgejocli actions generate-runner-token | tee $DIR/forgejo-runner-token
|
||||||
(
|
(
|
||||||
cd $DIR
|
cd $DIR
|
||||||
timeout --signal=KILL 30 forgejo-runner register --no-interactive --instance "$forgejo" --name runner --token $(cat $DIR/forgejo-runner-token) --labels docker:docker://code.forgejo.org/oci/node:20-bookworm,ubuntu-latest:docker://code.forgejo.org/oci/node:20-bookworm,self-hosted:lxc://debian:bookworm
|
timeout --signal=KILL 30 $DIR/forgejo-runner register --no-interactive --instance "$forgejo" --name runner --token $(cat $DIR/forgejo-runner-token) --labels docker:docker://code.forgejo.org/oci/node:20-bookworm,ubuntu-latest:docker://code.forgejo.org/oci/node:20-bookworm,self-hosted:lxc://debian:bookworm
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -44,7 +44,7 @@ function run() {
|
||||||
daemon --chdir=$DIR --unsafe \
|
daemon --chdir=$DIR --unsafe \
|
||||||
--env="TERM=$TERM" --env="HOME=$(cat $DIR/forgejo-runner-home)" --env="PATH=$PATH" --env="USER=$USER" --env="TERM=dumb" --env="USERNAME=$USERNAME" --env="LANG=$LANG" \
|
--env="TERM=$TERM" --env="HOME=$(cat $DIR/forgejo-runner-home)" --env="PATH=$PATH" --env="USER=$USER" --env="TERM=dumb" --env="USERNAME=$USERNAME" --env="LANG=$LANG" \
|
||||||
--pidfile=$DIR/forgejo-runner-pid --errlog=$DIR/forgejo-runner.log --output=$DIR/forgejo-runner.log -- \
|
--pidfile=$DIR/forgejo-runner-pid --errlog=$DIR/forgejo-runner.log --output=$DIR/forgejo-runner.log -- \
|
||||||
forgejo-runner --config $FORGEJO_RUNNER_CONFIG daemon
|
$DIR/forgejo-runner --config $FORGEJO_RUNNER_CONFIG daemon
|
||||||
sleep 1
|
sleep 1
|
||||||
cat $DIR/forgejo-runner.log
|
cat $DIR/forgejo-runner.log
|
||||||
}
|
}
|
||||||
|
@ -64,7 +64,7 @@ function setup() {
|
||||||
dependencies
|
dependencies
|
||||||
if [[ "$version" =~ ^@ ]] ; then
|
if [[ "$version" =~ ^@ ]] ; then
|
||||||
local branch=${version##@}
|
local branch=${version##@}
|
||||||
build_runner $runner_repository $branch
|
build_runner $runner_repository $branch $DIR
|
||||||
else
|
else
|
||||||
download $runner_repository $version
|
download $runner_repository $version
|
||||||
fi
|
fi
|
||||||
|
|
Loading…
Reference in a new issue