2023-10-15 11:59:57 -04:00
|
|
|
on:
|
|
|
|
push:
|
|
|
|
branches:
|
|
|
|
- 'main'
|
|
|
|
- 'v*'
|
2023-10-28 18:52:53 -04:00
|
|
|
pull_request:
|
2023-07-08 08:06:13 -04:00
|
|
|
|
2023-03-24 10:59:04 -04:00
|
|
|
jobs:
|
|
|
|
integration:
|
|
|
|
runs-on: self-hosted
|
2023-09-24 14:32:40 -04:00
|
|
|
strategy:
|
|
|
|
matrix:
|
|
|
|
info:
|
2023-12-02 15:37:56 -05:00
|
|
|
- version: "1.21"
|
|
|
|
image: codeberg.org/forgejo/forgejo
|
2023-09-24 14:32:40 -04:00
|
|
|
- version: "1.20"
|
|
|
|
image: codeberg.org/forgejo/forgejo
|
2023-03-24 10:59:04 -04:00
|
|
|
steps:
|
2023-10-28 18:37:25 -04:00
|
|
|
- uses: actions/checkout@v4
|
|
|
|
- shell: bash
|
2023-09-29 14:19:00 -04:00
|
|
|
run: |
|
2023-05-29 11:12:23 -04:00
|
|
|
LXC_IP_PREFIX=10.0.10 ./forgejo-dependencies.sh
|
2023-09-24 10:54:52 -04:00
|
|
|
export PATH=$(pwd):$PATH
|
2023-09-24 14:32:40 -04:00
|
|
|
forgejo.sh setup root admin1234 ${{ matrix.info.image }} ${{ matrix.info.version }}
|
|
|
|
forgejo-runner.sh setup
|
2023-03-29 09:23:09 -04:00
|
|
|
export FORGEJO_RUNNER_LOGS=forgejo-runner.log
|
2023-10-07 17:27:24 -04:00
|
|
|
url=http://root:admin1234@$(cat forgejo-ip):3000
|
|
|
|
token=$(cat forgejo-token)
|
2023-09-02 10:21:10 -04:00
|
|
|
|
2023-10-04 12:11:42 -04:00
|
|
|
echo "============================ demo ==================="
|
2023-10-07 17:27:24 -04:00
|
|
|
forgejo-test-helper.sh run_workflow testdata/demo $url root demo setup-forgejo $token
|
2023-12-02 15:37:56 -05:00
|
|
|
echo "============================ IPv6 ==================="
|
|
|
|
forgejo-test-helper.sh run_workflow testdata/ipv6 $url root ipv6 setup-forgejo $token
|
2023-12-17 16:22:55 -05:00
|
|
|
|
|
|
|
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
|
2023-12-17 17:35:54 -05:00
|
|
|
- binary: https://codeberg.org/forgejo/forgejo/releases/download/v1.20.6-1/forgejo-1.20.6-1-linux-amd64
|
2023-12-17 16:22:55 -05:00
|
|
|
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 /usr/local/bin
|
|
|
|
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
|