mirror of
https://github.com/progval/irctest.git
synced 2025-04-05 06:49:47 +00:00
Add Sable (#229)
* [WIP] Add support for Sable * tweak sable controller * echo_message: Add missing synchronization for Sable * update sable * whois: Simplify test * WHO: Remove test for oper flag from testWhoChan So it won't fail on Sable, which hides oper status * WHO: Skip/xfail tests for Sable as needed * Skip NakWhole when multi-prefix is not supported * [WIP] Run Sable on CI * working-directory is not setable on actions * this isn't ergo * this really isn't ergo * minimize rust install and cache cargo deps * Need to specify packages to install... * Phony target * Give up on 'cargo install', it seems to ignore the cache * try again to cache the target dir * This isn't Solanum * Comment out BaseServicesController * Parallelize Sable tests * target is relative... * sigh * Fix prefix * Re-add the other software * chathistory: Test TOPIC is not sent unless event-playable is enabled * sable: Dynamically generate certificates This allows using custom server/services names * sable: Enable services * sable: Add support for account registration Sable doesn't support REGISTER via NickServ * sable: Lower log verbosity * Fix lint * Re-add Sable to CI * Fix/skip tests on Sable * Kill sable_services' subprocesses * Bump Sable to include the labeled-response fix * Bump Sable to the channel-rename downgrade fix
This commit is contained in:
70
.github/workflows/test-devel.yml
vendored
70
.github/workflows/test-devel.yml
vendored
@ -402,6 +402,7 @@ jobs:
|
||||
- test-ngircd-anope
|
||||
- test-ngircd-atheme
|
||||
- test-plexus4
|
||||
- test-sable
|
||||
- test-solanum
|
||||
- test-sopel
|
||||
- test-thelounge
|
||||
@ -570,7 +571,7 @@ jobs:
|
||||
python -m pip install --upgrade pip
|
||||
pip install pytest pytest-xdist -r requirements.txt
|
||||
- name: Test with pytest
|
||||
run: PYTEST_ARGS='--junit-xml pytest.xml' PATH=$HOME/.local/bin:$PATH PATH=~/go/sbin:~/go/bin:$PATH
|
||||
run: PYTEST_ARGS='--junit-xml pytest.xml' PATH=$HOME/.local/bin:$PATH PATH=~/go/sbin:~/go/bin:~/go:$PATH
|
||||
make ergo
|
||||
timeout-minutes: 30
|
||||
- if: always()
|
||||
@ -642,7 +643,7 @@ jobs:
|
||||
python -m pip install --upgrade pip
|
||||
pip install pytest pytest-xdist -r requirements.txt
|
||||
- name: Test with pytest
|
||||
run: PYTEST_ARGS='--junit-xml pytest.xml' PATH=$HOME/.local/bin:$PATH PATH=~/.local/inspircd/sbin:~/.local/inspircd/bin:$PATH
|
||||
run: PYTEST_ARGS='--junit-xml pytest.xml' PATH=$HOME/.local/bin:$PATH PATH=~/.local/inspircd/sbin:~/.local/inspircd/bin:~/.local/inspircd:$PATH
|
||||
make inspircd
|
||||
timeout-minutes: 30
|
||||
- if: always()
|
||||
@ -681,7 +682,7 @@ jobs:
|
||||
python -m pip install --upgrade pip
|
||||
pip install pytest pytest-xdist -r requirements.txt
|
||||
- name: Test with pytest
|
||||
run: PYTEST_ARGS='--junit-xml pytest.xml' PATH=$HOME/.local/bin:$PATH PATH=~/.local/inspircd/sbin:~/.local/inspircd/bin:$PATH make
|
||||
run: PYTEST_ARGS='--junit-xml pytest.xml' PATH=$HOME/.local/bin:$PATH PATH=~/.local/inspircd/sbin:~/.local/inspircd/bin:~/.local/inspircd:$PATH make
|
||||
inspircd-anope
|
||||
timeout-minutes: 30
|
||||
- if: always()
|
||||
@ -819,7 +820,7 @@ jobs:
|
||||
python -m pip install --upgrade pip
|
||||
pip install pytest pytest-xdist -r requirements.txt
|
||||
- name: Test with pytest
|
||||
run: PYTEST_ARGS='--junit-xml pytest.xml' PATH=$HOME/.local/bin:$PATH PATH=~/.local//sbin:~/.local//bin:$PATH
|
||||
run: PYTEST_ARGS='--junit-xml pytest.xml' PATH=$HOME/.local/bin:$PATH PATH=~/.local//sbin:~/.local//bin:~/.local/:$PATH
|
||||
make ngircd
|
||||
timeout-minutes: 30
|
||||
- if: always()
|
||||
@ -858,7 +859,7 @@ jobs:
|
||||
python -m pip install --upgrade pip
|
||||
pip install pytest pytest-xdist -r requirements.txt
|
||||
- name: Test with pytest
|
||||
run: PYTEST_ARGS='--junit-xml pytest.xml' PATH=$HOME/.local/bin:$PATH PATH=~/.local//sbin:~/.local//bin:$PATH make
|
||||
run: PYTEST_ARGS='--junit-xml pytest.xml' PATH=$HOME/.local/bin:$PATH PATH=~/.local//sbin:~/.local//bin:~/.local/:$PATH make
|
||||
ngircd-anope
|
||||
timeout-minutes: 30
|
||||
- if: always()
|
||||
@ -891,7 +892,7 @@ jobs:
|
||||
python -m pip install --upgrade pip
|
||||
pip install pytest pytest-xdist -r requirements.txt
|
||||
- name: Test with pytest
|
||||
run: PYTEST_ARGS='--junit-xml pytest.xml' PATH=$HOME/.local/bin:$PATH PATH=~/.local//sbin:~/.local//bin:$PATH
|
||||
run: PYTEST_ARGS='--junit-xml pytest.xml' PATH=$HOME/.local/bin:$PATH PATH=~/.local//sbin:~/.local//bin:~/.local/:$PATH
|
||||
make ngircd-atheme
|
||||
timeout-minutes: 30
|
||||
- if: always()
|
||||
@ -939,6 +940,53 @@ jobs:
|
||||
with:
|
||||
name: pytest-results_plexus4_devel
|
||||
path: pytest.xml
|
||||
test-sable:
|
||||
needs: []
|
||||
runs-on: ubuntu-22.04
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: Set up Python 3.11
|
||||
uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: 3.11
|
||||
- name: Checkout Sable
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
path: sable
|
||||
ref: master
|
||||
repository: Libera-Chat/sable
|
||||
- name: Install rust toolchain
|
||||
uses: actions-rs/toolchain@v1
|
||||
with:
|
||||
override: true
|
||||
profile: minimal
|
||||
toolchain: nightly
|
||||
- name: Enable Cargo cache
|
||||
uses: Swatinem/rust-cache@v2
|
||||
with:
|
||||
cache-on-failure: true
|
||||
workspaces: sable -> target
|
||||
- run: rustc --version
|
||||
- name: Build Sable
|
||||
run: |
|
||||
cd $GITHUB_WORKSPACE/sable/
|
||||
cargo build
|
||||
- name: Install system dependencies
|
||||
run: sudo apt-get install atheme-services faketime
|
||||
- name: Install irctest dependencies
|
||||
run: |-
|
||||
python -m pip install --upgrade pip
|
||||
pip install pytest pytest-xdist -r requirements.txt
|
||||
- name: Test with pytest
|
||||
run: PYTEST_ARGS='--junit-xml pytest.xml' PATH=$HOME/.local/bin:$PATH PATH=$GITHUB_WORKSPACE/sable/target/debug/sbin:$GITHUB_WORKSPACE/sable/target/debug/bin:$GITHUB_WORKSPACE/sable/target/debug:$PATH
|
||||
make sable
|
||||
timeout-minutes: 30
|
||||
- if: always()
|
||||
name: Publish results
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: pytest-results_sable_devel
|
||||
path: pytest.xml
|
||||
test-solanum:
|
||||
needs:
|
||||
- build-solanum
|
||||
@ -1061,7 +1109,7 @@ jobs:
|
||||
python -m pip install --upgrade pip
|
||||
pip install pytest pytest-xdist -r requirements.txt
|
||||
- name: Test with pytest
|
||||
run: PYTEST_ARGS='--junit-xml pytest.xml' PATH=$HOME/.local/bin:$PATH PATH=~/.local/unrealircd/sbin:~/.local/unrealircd/bin:$PATH
|
||||
run: PYTEST_ARGS='--junit-xml pytest.xml' PATH=$HOME/.local/bin:$PATH PATH=~/.local/unrealircd/sbin:~/.local/unrealircd/bin:~/.local/unrealircd:$PATH
|
||||
make unrealircd
|
||||
timeout-minutes: 30
|
||||
- if: always()
|
||||
@ -1094,7 +1142,7 @@ jobs:
|
||||
python -m pip install --upgrade pip
|
||||
pip install pytest pytest-xdist -r requirements.txt
|
||||
- name: Test with pytest
|
||||
run: PYTEST_ARGS='--junit-xml pytest.xml' PATH=$HOME/.local/bin:$PATH PATH=~/.local/unrealircd/sbin:~/.local/unrealircd/bin:$PATH
|
||||
run: PYTEST_ARGS='--junit-xml pytest.xml' PATH=$HOME/.local/bin:$PATH PATH=~/.local/unrealircd/sbin:~/.local/unrealircd/bin:~/.local/unrealircd:$PATH
|
||||
make unrealircd-5
|
||||
timeout-minutes: 30
|
||||
- if: always()
|
||||
@ -1133,7 +1181,7 @@ jobs:
|
||||
python -m pip install --upgrade pip
|
||||
pip install pytest pytest-xdist -r requirements.txt
|
||||
- name: Test with pytest
|
||||
run: PYTEST_ARGS='--junit-xml pytest.xml' PATH=$HOME/.local/bin:$PATH PATH=~/.local/unrealircd/sbin:~/.local/unrealircd/bin:$PATH make
|
||||
run: PYTEST_ARGS='--junit-xml pytest.xml' PATH=$HOME/.local/bin:$PATH PATH=~/.local/unrealircd/sbin:~/.local/unrealircd/bin:~/.local/unrealircd:$PATH make
|
||||
unrealircd-anope
|
||||
timeout-minutes: 30
|
||||
- if: always()
|
||||
@ -1166,7 +1214,7 @@ jobs:
|
||||
python -m pip install --upgrade pip
|
||||
pip install pytest pytest-xdist -r requirements.txt
|
||||
- name: Test with pytest
|
||||
run: PYTEST_ARGS='--junit-xml pytest.xml' PATH=$HOME/.local/bin:$PATH PATH=~/.local/unrealircd/sbin:~/.local/unrealircd/bin:$PATH
|
||||
run: PYTEST_ARGS='--junit-xml pytest.xml' PATH=$HOME/.local/bin:$PATH PATH=~/.local/unrealircd/sbin:~/.local/unrealircd/bin:~/.local/unrealircd:$PATH
|
||||
make unrealircd-atheme
|
||||
timeout-minutes: 30
|
||||
- if: always()
|
||||
@ -1210,7 +1258,7 @@ jobs:
|
||||
python -m pip install --upgrade pip
|
||||
pip install pytest pytest-xdist -r requirements.txt
|
||||
- name: Test with pytest
|
||||
run: PYTEST_ARGS='--junit-xml pytest.xml' PATH=$HOME/.local/bin:$PATH PATH=~/.local/unrealircd/sbin:~/.local/unrealircd/bin:$PATH
|
||||
run: PYTEST_ARGS='--junit-xml pytest.xml' PATH=$HOME/.local/bin:$PATH PATH=~/.local/unrealircd/sbin:~/.local/unrealircd/bin:~/.local/unrealircd:$PATH
|
||||
IRCTEST_DLK_PATH="${{ github.workspace }}/Dlk-Services" IRCTEST_WP_CLI_PATH="${{
|
||||
github.workspace }}/wp-cli.phar" IRCTEST_WP_ZIP_PATH="${{ github.workspace
|
||||
}}/wordpress-latest.zip" make unrealircd-dlk
|
||||
|
Reference in New Issue
Block a user