refactor end-to-end.yml workflow to use a top-level end-to-end.sh
This commit is contained in:
parent
62f75aa56f
commit
bf689a2478
9 changed files with 142 additions and 74 deletions
19
.forgejo/prepare-end-to-end/action.yml
Normal file
19
.forgejo/prepare-end-to-end/action.yml
Normal file
|
@ -0,0 +1,19 @@
|
|||
runs:
|
||||
using: "composite"
|
||||
steps:
|
||||
- uses: https://code.forgejo.org/actions/setup-forgejo@v2
|
||||
with:
|
||||
install-only: true
|
||||
- run: forgejo-binary.sh ensure_user forgejo
|
||||
- uses: actions/download-artifact@v3
|
||||
with:
|
||||
name: forgejo-dev
|
||||
path: /srv/forgejo-binaries
|
||||
- name: chown/chmod /srv/forgejo-binaries
|
||||
run: |
|
||||
chmod +x /srv/forgejo-binaries/*
|
||||
chown -R forgejo /srv/forgejo-binaries
|
||||
- run: |
|
||||
script=$(pwd)/end-to-end.sh
|
||||
$script run dependencies
|
||||
$script clobber
|
70
.forgejo/workflows/end-to-end.yml
Normal file
70
.forgejo/workflows/end-to-end.yml
Normal file
|
@ -0,0 +1,70 @@
|
|||
on:
|
||||
pull_request:
|
||||
push:
|
||||
branches:
|
||||
- 'main'
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: docker
|
||||
container:
|
||||
image: 'docker.io/node:20-bookworm'
|
||||
steps:
|
||||
- uses: https://code.forgejo.org/actions/checkout@v4
|
||||
- uses: https://code.forgejo.org/actions/setup-go@v4
|
||||
with:
|
||||
go-version: "1.21"
|
||||
- name: lib/build.sh
|
||||
run: |
|
||||
set -x
|
||||
|
||||
#
|
||||
# SQLite needs gcc to be compiled
|
||||
#
|
||||
export DEBIAN_FRONTEND=noninteractive
|
||||
apt-get update -qq
|
||||
apt-get -q install -y -qq build-essential
|
||||
|
||||
d=/tmp/forgejo-binaries
|
||||
mkdir $d /tmp/forgejo-upload
|
||||
|
||||
for version in $(ls forgejo/sources) ; do
|
||||
forgejo=$d/forgejo-$version-dev
|
||||
lib/build.sh $version $d
|
||||
$forgejo --version
|
||||
mv $forgejo /tmp/forgejo-upload
|
||||
done
|
||||
- uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: forgejo-dev
|
||||
path: /tmp/forgejo-upload
|
||||
|
||||
packages:
|
||||
needs: [build]
|
||||
runs-on: lxc-bookworm
|
||||
steps:
|
||||
- uses: https://code.forgejo.org/actions/checkout@v4
|
||||
- uses: ./.forgejo/prepare-end-to-end
|
||||
- run: su forgejo -c "./end-to-end.sh test_packages"
|
||||
|
||||
upgrade:
|
||||
needs: [build]
|
||||
runs-on: lxc-bookworm
|
||||
steps:
|
||||
- name: cache S3 binaries
|
||||
id: S3
|
||||
uses: https://code.forgejo.org/actions/cache@v3
|
||||
with:
|
||||
path: |
|
||||
/usr/local/bin/minio
|
||||
/usr/local/bin/mc
|
||||
/usr/local/bin/garage
|
||||
key: S3
|
||||
|
||||
- name: skip if S3 cache hit
|
||||
if: steps.S3.outputs.cache-hit != 'true'
|
||||
run: echo no hit
|
||||
|
||||
- uses: https://code.forgejo.org/actions/checkout@v4
|
||||
- uses: ./.forgejo/prepare-end-to-end
|
||||
- run: su forgejo -c "./end-to-end.sh test_upgrades"
|
|
@ -1,42 +0,0 @@
|
|||
name: upgrade
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
push:
|
||||
branches:
|
||||
- 'main'
|
||||
|
||||
jobs:
|
||||
upgrade:
|
||||
runs-on: lxc-bookworm
|
||||
steps:
|
||||
- name: cache S3 binaries
|
||||
id: S3
|
||||
uses: https://code.forgejo.org/actions/cache@v3
|
||||
with:
|
||||
path: |
|
||||
/usr/local/bin/minio
|
||||
/usr/local/bin/mc
|
||||
/usr/local/bin/garage
|
||||
key: S3
|
||||
|
||||
- name: skip if S3 cache hit
|
||||
if: steps.S3.outputs.cache-hit != 'true'
|
||||
run: echo no hit
|
||||
|
||||
- uses: https://code.forgejo.org/actions/checkout@v4
|
||||
- uses: https://code.forgejo.org/actions/setup-forgejo@v2
|
||||
with:
|
||||
install-only: true
|
||||
- uses: https://code.forgejo.org/actions/setup-go@v4
|
||||
with:
|
||||
go-version: "1.21"
|
||||
- run: |
|
||||
set -x
|
||||
forgejo-binary.sh ensure_user forgejo
|
||||
apt-get -q install -y -qq build-essential
|
||||
- run: |
|
||||
script=$(pwd)/forgejo/upgrades/test-upgrade.sh
|
||||
$script run dependencies
|
||||
$script clobber
|
||||
su forgejo -c "$script test_upgrades"
|
Loading…
Add table
Reference in a new issue