Commit Graph

35 Commits

Author SHA1 Message Date
Val Lorentz 4f1a84b5a8 Increase per-test timeout 2023-09-24 15:53:03 +02:00
Val Lorentz d88349a403
Sable: Run services tests (#234)
Also add per-test timeout so I could debug why Sable's services test hang
2023-09-24 15:33:36 +02:00
Val Lorentz 805635c839
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
2023-09-21 09:18:23 +02:00
Valentin Lorentz cb147f46eb Bump Python to 3.11 on release and devel_release workflows
Sopel dropped support for Python 3.7
2023-08-13 20:09:39 +02:00
Val Lorentz a950c724bb
Bump Python to 3.11 (#214)
Sopel dropped support for Python 3.7
2023-08-11 20:24:26 +02:00
Sadie Powell 4ee9c9c53a
Update CI to run on Ubuntu 22.04. (#210)
* Update workflows to run on Ubuntu 22.04.

* Add a patch to fix Bahamut on Ubuntu 22.04.

Source: https://github.com/DALnet/bahamut/pull/219

* Add a patch to fix Charybdis on Ubuntu 22.04.
2023-06-25 23:14:08 +02:00
Val Lorentz 05e9b3746e
ci: Bump versions of actions we use (#199)
So Github stops complaining about the deprecated Nodejs version
2023-05-20 13:32:42 +02:00
Val Lorentz 136a7923c0
Bump linter versions (#188)
The isort we had has some weird poetry issue, I figured I might as well
bump the other linters at the same time

```
[INFO] Installing environment for https://github.com/PyCQA/isort.
[INFO] Once installed this environment will be reused.
[INFO] This may take a few minutes...
An unexpected error has occurred: CalledProcessError: command: ('/home/runner/.cache/pre-commit/repo0m3eczdf/py_env-python3.7/bin/python', '-mpip', 'install', '.')
return code: 1
stdout:
    Processing /home/runner/.cache/pre-commit/repo0m3eczdf
      Installing build dependencies: started
      Installing build dependencies: finished with status 'done'
      Getting requirements to build wheel: started
      Getting requirements to build wheel: finished with status 'done'
      Preparing metadata (pyproject.toml): started
      Preparing metadata (pyproject.toml): finished with status 'error'

stderr:
      error: subprocess-exited-with-error

      × Preparing metadata (pyproject.toml) did not run successfully.
      │ exit code: 1
      ╰─> [14 lines of output]
          Traceback (most recent call last):
            File "/home/runner/.cache/pre-commit/repo0m3eczdf/py_env-python3.7/lib/python3.7/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
              main()
            File "/home/runner/.cache/pre-commit/repo0m3eczdf/py_env-python3.7/lib/python3.7/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main
              json_out['return_val'] = hook(**hook_input['kwargs'])
            File "/home/runner/.cache/pre-commit/repo0m3eczdf/py_env-python3.7/lib/python3.7/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 149, in prepare_metadata_for_build_wheel
              return hook(metadata_directory, config_settings)
            File "/tmp/pip-build-env-beaf5dxh/overlay/lib/python3.7/site-packages/poetry/core/masonry/api.py", line 40, in prepare_metadata_for_build_wheel
              poetry = Factory().create_poetry(Path(".").resolve(), with_groups=False)
            File "/tmp/pip-build-env-beaf5dxh/overlay/lib/python3.7/site-packages/poetry/core/factory.py", line 57, in create_poetry
              raise RuntimeError("The Poetry configuration is invalid:\n" + message)
          RuntimeError: The Poetry configuration is invalid:
            - [extras.pipfile_deprecated_finder.2] 'pip-shims<=0.3.4' does not match '^[a-zA-Z-_.0-9]+$'

          [end of output]

      note: This error originates from a subprocess, and is likely not a problem with pip.
    error: metadata-generation-failed

    × Encountered error while generating package metadata.
    ╰─> See above for output.

    note: This is an issue with the package mentioned above, not pip.
    hint: See above for details.
```
2023-03-04 10:51:40 +01:00
Valentin Lorentz 5fe4d4cfd8 github: Force ubuntu-20.04
Bahamut does not support ubuntu-22.04
2022-12-06 20:59:27 +01:00
Val Lorentz fd0b050686
Add support for Dlk-Services (#176) 2022-11-14 22:58:30 +01:00
Valentin Lorentz cae3aec338 workflows: Remove special-casing of Anope 2022-09-10 15:15:29 +02:00
Valentin Lorentz 53710779f0 Prevent tests from blocking for too long
Bahamut frequently gets stuck, and waiting 6h is a waste of time.
2022-06-11 02:08:58 +02:00
Val Lorentz a39ce7f19b
Merge branch 'master' into elist 2022-04-13 18:57:46 +02:00
Valentin Lorentz e92aee012b Fix CI 2022-04-10 15:55:53 +02:00
Val Lorentz edf3e5904b
Produce a dashboard website after running tests (#152) 2022-04-10 10:40:39 +02:00
Valentin Lorentz ebd7edcc74 workflows: Replace spaces from artifact names
It made them impractical to use as file names.
2022-04-09 08:59:50 +02:00
Valentin Lorentz 72a12ff5ce Add support for 'faketime', to avoid long sleeps in upcoming ELIST tests 2022-03-27 17:08:40 +02:00
Val Lorentz f86e11a288
Use a better / more detailed reporter on Github PRs 2021-09-05 21:59:04 +02:00
Valentin Lorentz 3630a25c11 Add ngircd controller 2021-09-05 17:45:09 +02:00
Valentin Lorentz a624bf6db8 Parallelize tests for bahamut, they are very slow. 2021-08-09 23:43:30 +02:00
Val Lorentz a43ae63beb
Fix CI cache (#92)
it didn't work so far because you can't use variable in the path...
2021-08-09 20:42:36 +02:00
Valentin Lorentz b780513e82 Exclude Ergo/Limnoria/Sopel from devel_release cron, they don't have such a version flavor 2021-07-08 20:31:57 +02:00
Valentin Lorentz b845642d07 Disable Atheme tests on Insp4 2021-07-07 22:06:38 +02:00
Valentin Lorentz 4fcc13d9c1 remove irrelevant tests from cron jobs 2021-07-07 21:55:27 +02:00
Valentin Lorentz 13b4806908 Enable Anope tests on Insp4 2021-07-07 21:46:59 +02:00
Valentin Lorentz b2a2664de2 Fix build stats being overwritten 2021-07-07 21:30:47 +02:00
Val Lorentz 8ddf39bd91
Deduplicate Insp/Unreal/Anope builds (#77) 2021-07-07 21:05:14 +02:00
Val Lorentz a637ae3927
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
2021-07-07 15:06:00 +02:00
Valentin Lorentz 7c32d47713 workflows: Disable cache for inspircd + add version flavor to the cache key for others 2021-07-06 21:34:56 +02:00
Val Lorentz d17cae6a8a Publish unit tests results and variations on each PR (#73)
So it's easier to detect that we accidentally marked a lot of tests
as skipped.

* Try EnricoMi/publish-unit-test-result-action@v1

* Make build job generation more modular

* Unify workflows, so their results can be added together in the report (instead of overwriting each other)
2021-07-04 23:13:28 +02:00
Valentin Lorentz 9581ca0cf3 Skip services tests on Insp4.
Atheme doesn't support it yet.
2021-07-03 20:34:36 +02:00
Valentin Lorentz 8288e36469 Allow triggering crons manually 2021-07-03 19:35:36 +02:00
Valentin Lorentz f420b6cb0a Add version flavor to workflow name 2021-07-03 16:20:26 +02:00
Val Lorentz 26fe83d2c6
Add workflows triggered by crons to run on the latest development versions (#66) 2021-07-03 16:15:04 +02:00
Val Lorentz d7d6f0c521
Generate .github/workflows/ from a single compact file (#65)
It's easier to read and maintain
2021-07-03 14:50:00 +02:00