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

No files matched your search

+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"
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Loaded 100 of 819 files, more files were not shown because too many files have changed in this diff. Show more