This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [data.forgejo.org/oci/node](https://hub.docker.com/_/node) ([source](https://github.com/nodejs/docker-node)) | container | replacement | `24-bookworm` → `24-trixie` | This is a special PR that replaces `data.forgejo.org/oci/node` with the community suggested minimal stable replacement version. --- ### Configuration 📅 **Schedule**: Branch creation - "" (UTC), Automerge - Between 12:00 AM and 03:59 AM ( * 0-3 * * * ) (UTC). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My41LjAiLCJ1cGRhdGVkSW5WZXIiOiI0My41LjAiLCJ0YXJnZXRCcmFuY2giOiJtYWluIiwibGFiZWxzIjpbXX0=--> Reviewed-on: https://code.forgejo.org/forgejo/end-to-end/pulls/1604 Reviewed-by: Mathieu Fenniak <mfenniak@noreply.code.forgejo.org> Co-authored-by: Renovate Bot <bot@kriese.eu> Co-committed-by: Renovate Bot <bot@kriese.eu>
166 lines
5.1 KiB
YAML
166 lines
5.1 KiB
YAML
#
|
|
#
|
|
# https://code.forgejo.org/forgejo/end-to-end/settings/actions
|
|
#
|
|
|
|
on:
|
|
pull_request:
|
|
push:
|
|
branches:
|
|
- 'main'
|
|
|
|
enable-email-notifications: true
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: docker
|
|
container:
|
|
image: 'data.forgejo.org/oci/node:24-trixie'
|
|
outputs:
|
|
built: "${{ steps.build.outputs.built }}"
|
|
forgejo_versions_json: "${{ steps.build.outputs.forgejo_versions_json }}"
|
|
steps:
|
|
- uses: https://data.forgejo.org/actions/checkout@v4
|
|
- uses: https://data.forgejo.org/actions/setup-go@v5
|
|
with:
|
|
go-version: "1.25"
|
|
- name: lib/build.sh
|
|
id: build
|
|
run: |
|
|
mkdir $d /tmp/forgejo-upload
|
|
touch /tmp/forgejo-upload/PLACEHOLDER
|
|
|
|
if ! test -f forgejo/build-from-sources; then
|
|
echo forgejo/build-from-sources is not present, do not build any version from source
|
|
source lib/lib.sh
|
|
echo "forgejo_versions_json=$(node -p "JSON.stringify(process.argv[1].split(' '))" "$RELEASE_NUMBERS")" >> $FORGEJO_OUTPUT
|
|
echo "built=no" >> $FORGEJO_OUTPUT
|
|
exit 0
|
|
fi
|
|
|
|
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
|
|
|
|
for version in $(cat forgejo/build-from-sources) ; do
|
|
lib/build.sh $version $d
|
|
forgejo=$d/forgejo-$version-dev
|
|
$forgejo --version
|
|
mv $forgejo /tmp/forgejo-upload/forgejo-$version
|
|
done
|
|
|
|
echo "forgejo_versions_json=$(node -p "JSON.stringify(process.argv[1].split(' '))" "$(cat forgejo/build-from-sources)")" >> $FORGEJO_OUTPUT
|
|
echo "built=yes" >> $FORGEJO_OUTPUT
|
|
|
|
- name: steps context dump for debug
|
|
run: |
|
|
set -x
|
|
cat <<EOF
|
|
${{ toJSON(steps) }}
|
|
EOF
|
|
|
|
- uses: actions/upload-artifact@v3
|
|
if: ${{ steps.build.outputs.built == 'yes' }}
|
|
with:
|
|
name: forgejo-dev
|
|
path: /tmp/forgejo-upload
|
|
|
|
packages:
|
|
needs: [build]
|
|
runs-on: lxc-trixie
|
|
strategy:
|
|
matrix:
|
|
forgejo_version: ${{ fromJSON(needs.build.outputs.forgejo_versions_json) }}
|
|
steps:
|
|
- uses: https://data.forgejo.org/actions/checkout@v4
|
|
- uses: ./.forgejo/prepare-end-to-end
|
|
with:
|
|
built: ${{ needs.build.outputs.built }}
|
|
- run: su forgejo -c "./end-to-end.sh test_packages ${{ matrix.forgejo_version }}"
|
|
- if: ${{ needs.build.outputs.built == 'yes' }}
|
|
uses: ./.forgejo/upload-coverage
|
|
with:
|
|
scope: packages
|
|
- name: full logs
|
|
if: always()
|
|
run: su forgejo -c "./end-to-end.sh show_logs"
|
|
|
|
actions:
|
|
needs: [build]
|
|
runs-on: lxc-trixie
|
|
strategy:
|
|
matrix:
|
|
forgejo_version: ${{ fromJSON(needs.build.outputs.forgejo_versions_json) }}
|
|
steps:
|
|
- uses: https://data.forgejo.org/actions/checkout@v4
|
|
- uses: ./.forgejo/prepare-end-to-end
|
|
with:
|
|
built: ${{ needs.build.outputs.built }}
|
|
- run: ./end-to-end.sh prepare_dockerd
|
|
- run: su forgejo -c "./end-to-end.sh test_actions ${{ matrix.forgejo_version }}"
|
|
- if: ${{ needs.build.outputs.built == 'yes' }}
|
|
uses: ./.forgejo/upload-coverage
|
|
with:
|
|
scope: actions
|
|
- name: full logs
|
|
if: always()
|
|
run: su forgejo -c "./end-to-end.sh show_logs"
|
|
|
|
federation:
|
|
needs: [build]
|
|
runs-on: lxc-trixie
|
|
steps:
|
|
- uses: https://data.forgejo.org/actions/checkout@v4
|
|
- uses: ./.forgejo/prepare-end-to-end
|
|
with:
|
|
built: ${{ needs.build.outputs.built }}
|
|
- name: install zstd
|
|
run: |
|
|
export DEBIAN_FRONTEND=noninteractive
|
|
apt-get -q install -y -qq zstd
|
|
- name: cache GitLab OCI image
|
|
uses: https://data.forgejo.org/actions/cache@v4
|
|
with:
|
|
path: |
|
|
/srv/forgejo-binaries/gitlab
|
|
key: gitlab
|
|
- name: setup dbus
|
|
run: |
|
|
apt-get -q install -y -qq dbus
|
|
systemctl enable --now dbus
|
|
- name: run test_federation
|
|
run: |
|
|
chown -R forgejo:forgejo .
|
|
su forgejo -c "./end-to-end.sh test_federation"
|
|
- if: ${{ needs.build.outputs.built == 'yes' }}
|
|
uses: ./.forgejo/upload-coverage
|
|
with:
|
|
scope: federation
|
|
- name: full logs
|
|
if: always()
|
|
run: su forgejo -c "./end-to-end.sh show_logs"
|
|
|
|
upgrade:
|
|
name: upgrade and storage
|
|
needs: [build]
|
|
runs-on: lxc-trixie
|
|
steps:
|
|
- uses: https://data.forgejo.org/actions/checkout@v4
|
|
- uses: ./.forgejo/prepare-end-to-end
|
|
with:
|
|
built: ${{ needs.build.outputs.built }}
|
|
- run: su forgejo -c "./end-to-end.sh test_upgrades"
|
|
- run: su forgejo -c "./end-to-end.sh test_storage"
|
|
- if: ${{ needs.build.outputs.built == 'yes' }}
|
|
uses: ./.forgejo/upload-coverage
|
|
with:
|
|
scope: upgrade
|
|
- name: full logs
|
|
if: always()
|
|
run: su forgejo -c "./end-to-end.sh show_logs"
|