mirror of
https://code.forgejo.org/actions/setup-forgejo.git
synced 2024-12-27 15:14:53 -05:00
70 lines
2.6 KiB
YAML
70 lines
2.6 KiB
YAML
on:
|
|
push:
|
|
branches:
|
|
- 'main'
|
|
- 'v*'
|
|
pull_request:
|
|
|
|
jobs:
|
|
integration:
|
|
runs-on: self-hosted
|
|
strategy:
|
|
matrix:
|
|
info:
|
|
- version: "1.21"
|
|
image: codeberg.org/forgejo/forgejo
|
|
- version: "1.20"
|
|
image: codeberg.org/forgejo/forgejo
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- shell: bash
|
|
run: |
|
|
LXC_IP_PREFIX=10.0.10 ./forgejo-dependencies.sh
|
|
export PATH=$(pwd):$PATH
|
|
forgejo.sh setup root admin1234 ${{ matrix.info.image }} ${{ matrix.info.version }}
|
|
forgejo-runner.sh setup
|
|
export FORGEJO_RUNNER_LOGS=forgejo-runner.log
|
|
url=http://root:admin1234@$(cat forgejo-ip):3000
|
|
token=$(cat forgejo-token)
|
|
|
|
echo "============================ demo ==================="
|
|
forgejo-test-helper.sh run_workflow testdata/demo $url root demo setup-forgejo $token
|
|
echo "============================ IPv6 ==================="
|
|
forgejo-test-helper.sh run_workflow testdata/ipv6 $url root ipv6 setup-forgejo $token
|
|
|
|
binary:
|
|
runs-on: self-hosted
|
|
strategy:
|
|
matrix:
|
|
- binary: https://codeberg.org/forgejo/forgejo/releases/download/v1.21.2-1/forgejo-1.21.2-1-linux-amd64
|
|
- binary: https://codeberg.org/forgejo/forgejo/releases/download/v1.20.6-1/forgejo-1.20.6-1-linux-amd64
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- shell: bash
|
|
run: |
|
|
set -x
|
|
export DIR=$(mktemp -d)
|
|
export PATH=$(pwd):$PATH
|
|
LXC_IP_PREFIX=10.0.10 forgejo-dependencies.sh
|
|
|
|
forgejo-binary.sh ensure_user forgejo
|
|
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-runner.sh setup" forgejo
|
|
export FORGEJO_RUNNER_LOGS=$DIR/forgejo-runner.log
|
|
url=$(cat $DIR/forgejo-auth-url)
|
|
token=$(cat $DIR/forgejo-token)
|
|
|
|
echo "============================ demo ==================="
|
|
FORGEJO_RUNNER_DIR=$DIR forgejo-test-helper.sh run_workflow testdata/demo $url root demo setup-forgejo $token
|
|
|
|
su -c "DIR=$DIR forgejo-binary.sh teardown" forgejo
|
|
|
|
echo "============================ verify zip downloading ==================="
|
|
export DEBIAN_FRONTEND=noninteractive
|
|
apt -q install -qq -y zip
|
|
mv $DIR/forgejo /tmp/forgejo
|
|
( cd /tmp ; zip forgejo.zip forgejo )
|
|
forgejo-binary.sh download file:///tmp/forgejo.zip
|
|
cmp --quiet /tmp/forgejo $DIR/forgejo
|