Add Anope controller, and use it with inspircd and unreal (#75)

* Add Anope controller, and use it with inspircd and unreal

* Build Anope before running it, duh

* Fix Anope build script

* Consistently use ascii casemapping instead of rfc1459

* Skip failing test with Anope
This commit is contained in:
2021-07-07 15:06:00 +02:00
committed by GitHub
parent 7e024b9ead
commit a637ae3927
14 changed files with 457 additions and 7 deletions

View File

@ -9,7 +9,9 @@ jobs:
- test-solanum
- test-ergo
- test-inspircd
- test-inspircd-anope
- test-unrealircd
- test-unrealircd-anope
- test-limnoria
- test-sopel
runs-on: ubuntu-latest
@ -100,6 +102,54 @@ jobs:
with:
name: pytest results InspIRCd (devel)
path: pytest.xml
test-inspircd-anope:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set up Python 3.7
uses: actions/setup-python@v2
with:
python-version: 3.7
- name: Install dependencies
run: |-
sudo apt-get install atheme-services
python -m pip install --upgrade pip
pip install pytest -r requirements.txt
- name: Checkout InspIRCd
uses: actions/checkout@v2
with:
path: inspircd
ref: master
repository: inspircd/inspircd
- name: Build InspIRCd
run: |
cd $GITHUB_WORKSPACE/inspircd/
patch src/inspircd.cpp < $GITHUB_WORKSPACE/inspircd_mainloop.patch
./configure --prefix=$HOME/.local/inspircd --development
make -j 4
make install
- name: Checkout Anope
uses: actions/checkout@v2
with:
path: anope
ref: 2.0.9
repository: anope/anope
- name: Build Anope
run: |-
cd $GITHUB_WORKSPACE/anope/
cp $GITHUB_WORKSPACE/data/anope/* .
CFLAGS=-O0 ./Config -quick
make -C build -j 4
make -C build install
- name: Test with pytest
run: PYTEST_ARGS='--junit-xml pytest.xml' PATH=~/.local/inspircd/bin:$PATH make
inspircd-anope
- if: always()
name: Publish results
uses: actions/upload-artifact@v2
with:
name: pytest results InspIRCd (devel)
path: pytest.xml
test-limnoria:
runs-on: ubuntu-latest
steps:
@ -230,7 +280,7 @@ jobs:
- name: Build UnrealIRCd
run: |
cd $GITHUB_WORKSPACE/unrealircd/
cp $GITHUB_WORKSPACE/unreal/* .
cp $GITHUB_WORKSPACE/data/unreal/* .
CFLAGS=-O0 ./Config -quick
make -j 4
make install
@ -243,6 +293,61 @@ jobs:
with:
name: pytest results UnrealIRCd (devel)
path: pytest.xml
test-unrealircd-anope:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set up Python 3.7
uses: actions/setup-python@v2
with:
python-version: 3.7
- name: Cache dependencies
uses: actions/cache@v2
with:
key: ${{ runner.os }}-unrealircd-anope-devel
path: |-
~/.cache
$GITHUB_WORKSPACE/unrealircd
- name: Install dependencies
run: |-
sudo apt-get install atheme-services
python -m pip install --upgrade pip
pip install pytest -r requirements.txt
- name: Checkout UnrealIRCd
uses: actions/checkout@v2
with:
path: unrealircd
ref: unreal52
repository: unrealircd/unrealircd
- name: Build UnrealIRCd
run: |
cd $GITHUB_WORKSPACE/unrealircd/
cp $GITHUB_WORKSPACE/data/unreal/* .
CFLAGS=-O0 ./Config -quick
make -j 4
make install
- name: Checkout Anope
uses: actions/checkout@v2
with:
path: anope
ref: 2.0.9
repository: anope/anope
- name: Build Anope
run: |-
cd $GITHUB_WORKSPACE/anope/
cp $GITHUB_WORKSPACE/data/anope/* .
CFLAGS=-O0 ./Config -quick
make -C build -j 4
make -C build install
- name: Test with pytest
run: PYTEST_ARGS='--junit-xml pytest.xml' PATH=~/.local/unrealircd/bin:$PATH
make unrealircd-anope
- if: always()
name: Publish results
uses: actions/upload-artifact@v2
with:
name: pytest results UnrealIRCd (devel)
path: pytest.xml
name: irctest with devel versions
'on':
schedule:

View File

@ -7,6 +7,7 @@ jobs:
name: Publish Unit Tests Results
needs:
- test-inspircd
- test-inspircd-anope
runs-on: ubuntu-latest
steps:
- name: Download Artifacts
@ -52,6 +53,54 @@ jobs:
with:
name: pytest results InspIRCd (devel_release)
path: pytest.xml
test-inspircd-anope:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set up Python 3.7
uses: actions/setup-python@v2
with:
python-version: 3.7
- name: Install dependencies
run: |-
sudo apt-get install atheme-services
python -m pip install --upgrade pip
pip install pytest -r requirements.txt
- name: Checkout InspIRCd
uses: actions/checkout@v2
with:
path: inspircd
ref: insp3
repository: inspircd/inspircd
- name: Build InspIRCd
run: |
cd $GITHUB_WORKSPACE/inspircd/
patch src/inspircd.cpp < $GITHUB_WORKSPACE/inspircd_mainloop.patch
./configure --prefix=$HOME/.local/inspircd --development
make -j 4
make install
- name: Checkout Anope
uses: actions/checkout@v2
with:
path: anope
ref: 2.0.9
repository: anope/anope
- name: Build Anope
run: |-
cd $GITHUB_WORKSPACE/anope/
cp $GITHUB_WORKSPACE/data/anope/* .
CFLAGS=-O0 ./Config -quick
make -C build -j 4
make -C build install
- name: Test with pytest
run: PYTEST_ARGS='--junit-xml pytest.xml' PATH=~/.local/inspircd/bin:$PATH make
inspircd-anope
- if: always()
name: Publish results
uses: actions/upload-artifact@v2
with:
name: pytest results InspIRCd (devel_release)
path: pytest.xml
name: irctest with devel_release versions
'on':
schedule:

View File

@ -10,7 +10,9 @@ jobs:
- test-solanum
- test-ergo
- test-inspircd
- test-inspircd-anope
- test-unrealircd
- test-unrealircd-anope
- test-limnoria
- test-sopel
runs-on: ubuntu-latest
@ -142,6 +144,54 @@ jobs:
with:
name: pytest results InspIRCd (stable)
path: pytest.xml
test-inspircd-anope:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set up Python 3.7
uses: actions/setup-python@v2
with:
python-version: 3.7
- name: Install dependencies
run: |-
sudo apt-get install atheme-services
python -m pip install --upgrade pip
pip install pytest -r requirements.txt
- name: Checkout InspIRCd
uses: actions/checkout@v2
with:
path: inspircd
ref: v3.10.0
repository: inspircd/inspircd
- name: Build InspIRCd
run: |
cd $GITHUB_WORKSPACE/inspircd/
patch src/inspircd.cpp < $GITHUB_WORKSPACE/inspircd_mainloop.patch
./configure --prefix=$HOME/.local/inspircd --development
make -j 4
make install
- name: Checkout Anope
uses: actions/checkout@v2
with:
path: anope
ref: 2.0.9
repository: anope/anope
- name: Build Anope
run: |-
cd $GITHUB_WORKSPACE/anope/
cp $GITHUB_WORKSPACE/data/anope/* .
CFLAGS=-O0 ./Config -quick
make -C build -j 4
make -C build install
- name: Test with pytest
run: PYTEST_ARGS='--junit-xml pytest.xml' PATH=~/.local/inspircd/bin:$PATH make
inspircd-anope
- if: always()
name: Publish results
uses: actions/upload-artifact@v2
with:
name: pytest results InspIRCd (stable)
path: pytest.xml
test-limnoria:
runs-on: ubuntu-latest
steps:
@ -272,7 +322,7 @@ jobs:
- name: Build UnrealIRCd
run: |
cd $GITHUB_WORKSPACE/unrealircd/
cp $GITHUB_WORKSPACE/unreal/* .
cp $GITHUB_WORKSPACE/data/unreal/* .
CFLAGS=-O0 ./Config -quick
make -j 4
make install
@ -285,6 +335,61 @@ jobs:
with:
name: pytest results UnrealIRCd (stable)
path: pytest.xml
test-unrealircd-anope:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set up Python 3.7
uses: actions/setup-python@v2
with:
python-version: 3.7
- name: Cache dependencies
uses: actions/cache@v2
with:
key: ${{ runner.os }}-unrealircd-anope-stable
path: |-
~/.cache
$GITHUB_WORKSPACE/unrealircd
- name: Install dependencies
run: |-
sudo apt-get install atheme-services
python -m pip install --upgrade pip
pip install pytest -r requirements.txt
- name: Checkout UnrealIRCd
uses: actions/checkout@v2
with:
path: unrealircd
ref: 94993a03ca8d3c193c0295c33af39270c3f9d27d
repository: unrealircd/unrealircd
- name: Build UnrealIRCd
run: |
cd $GITHUB_WORKSPACE/unrealircd/
cp $GITHUB_WORKSPACE/data/unreal/* .
CFLAGS=-O0 ./Config -quick
make -j 4
make install
- name: Checkout Anope
uses: actions/checkout@v2
with:
path: anope
ref: 2.0.9
repository: anope/anope
- name: Build Anope
run: |-
cd $GITHUB_WORKSPACE/anope/
cp $GITHUB_WORKSPACE/data/anope/* .
CFLAGS=-O0 ./Config -quick
make -C build -j 4
make -C build install
- name: Test with pytest
run: PYTEST_ARGS='--junit-xml pytest.xml' PATH=~/.local/unrealircd/bin:$PATH
make unrealircd-anope
- if: always()
name: Publish results
uses: actions/upload-artifact@v2
with:
name: pytest results UnrealIRCd (stable)
path: pytest.xml
name: irctest with stable versions
'on':
pull_request: null