Compare commits

...
14 Commits
Author SHA1 Message Date
arcanis 198b9d4f5d move fixtures to __init__.py 2026-07-17 00:53:38 +03:00
arcanis da1ded5c0e fix setup script 2026-07-16 23:29:59 +03:00
arcanis 7f7e5da2d5 move root conftest into pytest plugins 2026-07-16 23:07:33 +03:00
arcanis 7c7b4a86af some play with renaming 2026-07-16 23:07:33 +03:00
arcanis ce985e6a7c cleanup pyproject 2026-07-16 23:07:33 +03:00
arcanis 6b21516f9d reformat tomls 2026-07-16 23:07:33 +03:00
arcanis 48511bc3f2 fix tox environments 2026-07-16 23:07:33 +03:00
arcanis 2233002ad3 fix docs generation 2026-07-16 23:07:33 +03:00
arcanis 11ed790ff2 straight forward conftest 2026-07-16 23:07:33 +03:00
arcanis 2be82611bf generic fixtures 2026-07-16 23:07:33 +03:00
arcanis a9767c3583 reorder tests 2026-07-16 23:07:33 +03:00
arcanis d02ed8627d migrate to hatch 2026-07-16 23:07:33 +03:00
arcanis f12278a31d build: reorganize scripts 2026-07-16 23:07:09 +03:00
arcanis 3492892cd2 build: replace deprecated ::set-output with GITHUB_OUTPUT 2026-07-08 15:01:06 +03:00
819 changed files with 898 additions and 598 deletions
+5
View File
@@ -0,0 +1,5 @@
[tool.bandit]
skips = [
"B404",
"B603",
]
-3
View File
@@ -1,3 +0,0 @@
skips:
- B404
- B603
@@ -12,7 +12,7 @@ pacman -Syyu --noconfirm
# main dependencies # main dependencies
pacman -S --noconfirm devtools git npm pyalpm python-bcrypt python-filelock python-inflection python-pyelftools python-requests python-systemd sudo pacman -S --noconfirm devtools git npm pyalpm python-bcrypt python-filelock python-inflection python-pyelftools python-requests python-systemd sudo
# make dependencies # make dependencies
pacman -S --noconfirm --asdeps base-devel python-build python-flit python-installer python-tox python-wheel pacman -S --noconfirm --asdeps base-devel python-build python-hatchling python-installer python-tox python-wheel
# optional dependencies # optional dependencies
if [[ -z $MINIMAL_INSTALL ]]; then if [[ -z $MINIMAL_INSTALL ]]; then
# web server # web server
@@ -26,10 +26,10 @@ cp "docker/systemd-nspawn.sh" "/usr/local/bin/systemd-nspawn"
# create fresh tarball # create fresh tarball
tox -e archive tox -e archive
# run makepkg # run makepkg
PKGVER=$(python -c "from src.ahriman import __version__; print(__version__)") PKGVER=$(PYTHONPATH=ahriman-core/src python -c "from ahriman import __version__; print(__version__)")
mv "dist/ahriman-$PKGVER.tar.gz" package/archlinux mv "dist/ahriman-$PKGVER.tar.gz" archlinux
chmod +777 package/archlinux # because fuck you that's why chmod +777 archlinux # because fuck you that's why
cd package/archlinux cd archlinux
sudo -u nobody -- makepkg -cf --skipchecksums --noconfirm sudo -u nobody -- makepkg -cf --skipchecksums --noconfirm
sudo -u nobody -- makepkg --packagelist | grep "ahriman-core-$PKGVER" | pacman -U --noconfirm --nodeps - sudo -u nobody -- makepkg --packagelist | grep "ahriman-core-$PKGVER" | pacman -U --noconfirm --nodeps -
if [[ -z $MINIMAL_INSTALL ]]; then if [[ -z $MINIMAL_INSTALL ]]; then
+1 -1
View File
@@ -28,7 +28,7 @@ jobs:
- name: Set image date - name: Set image date
id: args id: args
run: echo "::set-output name=date::$(date -d yesterday +'%Y-%m-%d')" run: echo "date=$(date -d yesterday +'%Y-%m-%d')" >> "$GITHUB_OUTPUT"
- name: Login to docker hub - name: Login to docker hub
uses: docker/login-action@v3 uses: docker/login-action@v3
+2 -2
View File
@@ -26,7 +26,7 @@ jobs:
- name: Extract version - name: Extract version
id: version id: version
run: echo ::set-output name=VERSION::${GITHUB_REF#refs/tags/} run: echo "version=${GITHUB_REF#refs/tags/}" >> "$GITHUB_OUTPUT"
- name: Create changelog - name: Create changelog
id: changelog id: changelog
@@ -38,7 +38,7 @@ jobs:
- name: Create archive - name: Create archive
run: tox -e archive run: tox -e archive
env: env:
VERSION: ${{ steps.version.outputs.VERSION }} VERSION: ${{ steps.version.outputs.version }}
- name: Publish release - name: Publish release
uses: softprops/action-gh-release@v2 uses: softprops/action-gh-release@v2
+2 -2
View File
@@ -27,7 +27,7 @@ jobs:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- name: Setup the minimal service in arch linux container - name: Setup the minimal service in arch linux container
run: .github/workflows/setup.sh minimal run: .github/scripts/setup.sh minimal
run-setup: run-setup:
@@ -43,4 +43,4 @@ jobs:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- name: Setup the service in arch linux container - name: Setup the service in arch linux container
run: .github/workflows/setup.sh run: .github/scripts/setup.sh
+5 -2
View File
@@ -103,5 +103,8 @@ docs/html/
# Frontend # Frontend
node_modules/ node_modules/
package-lock.json package-lock.json
package/share/ahriman/templates/static/index.js ahriman-web/package/share/ahriman/templates/static/index.js
package/share/ahriman/templates/static/index.css ahriman-web/package/share/ahriman/templates/static/index.css
# local configs
/*.ini
-5
View File
@@ -1,5 +0,0 @@
[pytest]
addopts = --cov=ahriman --cov-report=term-missing:skip-covered --no-cov-on-fail --cov-fail-under=100 --spec
asyncio_default_fixture_loop_scope = function
asyncio_mode = auto
spec_test_format = {result} {docstring_summary}
+8
View File
@@ -0,0 +1,8 @@
[pytest]
addopts = [
"--spec",
]
asyncio_default_fixture_loop_scope = "function"
asyncio_mode = "auto"
"resource-path.directory-name-test-resources" = "../../tests/testresources"
spec_test_format = "{result} {docstring_summary}"
+74
View File
@@ -0,0 +1,74 @@
[build-system]
requires = [
"hatchling",
]
build-backend = "hatchling.build"
[project]
name = "ahriman-core"
description = "ArcH linux ReposItory MANager, core package"
readme = "../README.md"
requires-python = ">=3.13"
license = { file = "../COPYING" }
authors = [
{ name = "ahriman team" },
]
dependencies = [
"bcrypt",
"filelock",
"inflection",
"pyelftools",
"requests",
]
dynamic = [
"version",
]
[project.optional-dependencies]
journald = [
"systemd-python",
]
# FIXME technically this dependency is required, but in some cases we do not have access to
# the libalpm which is required in order to install the package. Thus in case if we do not
# really need to run the application we can move it to "optional" dependencies
pacman = [
"pyalpm",
]
reports = [
"Jinja2",
]
s3 = [
"boto3",
]
shell = [
"IPython",
]
stats = [
"matplotlib",
]
unixsocket = [
"requests-unixsocket2", # required by unix socket support
]
validator = [
"cerberus",
]
[project.scripts]
ahriman = "ahriman.application.ahriman:run"
[project.urls]
Documentation = "https://ahriman.readthedocs.io/"
Repository = "https://github.com/arcan1s/ahriman"
Changelog = "https://github.com/arcan1s/ahriman/releases"
[tool.hatch.build.targets.wheel]
packages = [
"src/ahriman",
]
[tool.hatch.build.targets.wheel.shared-data]
"package/lib" = "lib"
"package/share" = "share"
[tool.hatch.version]
path = "src/ahriman/__init__.py"

Some files were not shown because too many files have changed in this diff Show More