arcanis
299732181c
remote threadname from logging
...
Since application is mostly singlethreaded it makes no sense to log it
2022-11-14 23:21:06 +02:00
arcanis
84c1b4d82d
Release 2.3.0rc4
2022-11-14 01:02:27 +02:00
arcanis
cdd66ee780
fix case when no files were commited in remote push trigger
...
The issue appears together with --intent-to-add flag for adding new
files. Original testing has been performed by having already added new
files, thus it passed all checks.
This commit also adds `commit_author` option which will allow to
overwrite the author.
2022-11-14 00:59:43 +02:00
arcanis
b2ed383de0
Release 2.3.0rc3
2022-11-11 21:20:55 +02:00
arcanis
551ee670bf
rollback cwd parameter for clone
2022-11-11 21:19:27 +02:00
arcanis
5d4bd9e459
Release 2.3.0rc2
2022-11-11 17:25:11 +02:00
arcanis
4f21eb6fe6
Fix issue when there is no cached source directory yet ( closes #75 )
2022-11-11 17:23:15 +02:00
arcanis
9a008ddafa
Release 2.3.0rc1
2022-11-11 16:36:13 +02:00
arcanis
0cd07afa0f
use intersection of from_database and depends_on filters for the rebuild subcommand
...
Old logic used OR condition, i.e. if set from-database, it would ignore
the --depends-on flag. In new logic it calculates dependencies based on
the package list, which can be retrieved from database
2022-11-11 16:02:19 +02:00
arcanis
f590136197
limit max module size and improve some help messages
2022-11-11 16:01:54 +02:00
arcanis
1855e513a8
speedup docker build command by adding dockerignore listing
2022-11-11 12:47:31 +02:00
arcanis
233dda8420
man update
2022-11-10 20:10:07 +02:00
arcanis
9556779ee2
add exec to shell subcommand
2022-11-10 18:52:55 +02:00
arcanis
8b32bd43db
make exception optional argument for check_output method
2022-11-10 18:05:32 +02:00
arcanis and GitHub
0eadef597a
replace several store_true keys to booleanoptionalaction alternative ( #74 )
2022-11-10 18:34:01 +03:00
arcanis
e58ccdc8ad
write .makepkg.conf to home dir instead of repository root ( #72 )
2022-11-08 17:02:13 +02:00
arcanis and GitHub
2a07356d24
add ability to use ahriman pacman database instead of system one ( #71 )
...
By default this feature is enabled. On the first run it will copy (if
exists) databases from filesystem to local cache (one per each
architecture). Later it will use this cache for all alpm operations. In
order to update this cache, some commands (mainly package building)
provide `-y`/`--refresh` option which has same semantics as pacman -Sy
does.
Note however that due to extending `Pacman` class some methods were
renamed in order to be more descriptive:
* `Pacman.all_packages` -> `Pacman.packages`
* `Pacman.get` -> `Pacman.package_get`
This commit also adds multilib repository to the default docker image
which was missed.
2022-11-08 17:26:51 +03:00
arcanis
43c553a3db
improve repo-setup command
...
* Move devtools executable to ahriman home, because we don't really
need to use executable inside root
* Use named sudoers file instead of single file. It will allow easily to
remove file as well as use setup command for several
repositories/architectures
2022-11-06 14:25:44 +02:00
arcanis
0d1a890bd0
fix case in which if no source PKGBUILDs were updated, an exception will occur
2022-11-03 03:39:54 +02:00
arcanis
3aeaa8ce2c
faq update
2022-11-02 17:15:17 +02:00
arcanis
7cee859f19
docs update
2022-11-02 04:17:26 +02:00
arcanis
fb6b22cdd7
change gitremote api to be same as report and upload
...
These changes are keeping fallback to old settings, but will allow to
run multiple git targets with different settings
2022-11-02 04:09:42 +02:00
arcanis
4f35ec6542
fix update handler tests
...
If daemon tests are run before the update handler it causes test
failure, because there are other calls
2022-10-31 11:51:12 +02:00
arcanis
d98211e5e5
add possibility to run full update
...
In case if packages are not set from web, the spawner will run full
repository update
2022-10-31 02:41:24 +02:00
arcanis
b97c8928e1
add daemon subcommand
...
This command emulates default systemd timer and can be useful in docker
container in order to run 24/7
2022-10-31 01:38:01 +02:00
arcanis and GitHub
649df81aa5
implement single-function patches ( #69 )
2022-10-30 03:11:03 +03:00
arcanis
ad7cdb7d95
drop ahriman.core.triggers.Trigger.run method
...
In order to force new triggers to use on_result method, the old method
has been removed. However, default on_result method still checks if the
old method exists and tries to run it
2022-10-19 20:07:31 +03:00
arcanis
4bb598d2eb
fix rtd docs building
...
Commit 6633766cc3 introduced kw_only
dataclasess which require python 3.10+
2022-10-18 02:24:18 +03:00
arcanis
f47be6cab0
disallow no values in configuration
...
This option could lead to missing warnings about missing or invalid
configuration values because code usually expects that values are exists
and not empty unless it is explicitly specified.
However, pacman configuration still requires this option in order to be
able to deal with boolean values
2022-10-18 02:13:01 +03:00
arcanis and GitHub
342b3cb652
Add gitremote triggers ( #68 )
...
* add gitremote pull trigger
* add push gitremote trigger
* docs update
2022-10-18 01:46:27 +03:00
arcanis
fc0d8387df
extend triggers to on_start and on_stop methods
...
This commit also replaces old run method to new on_result
2022-09-26 01:22:54 +03:00
arcanis
e0b0c3caeb
add minimal install step to workflow
2022-09-17 14:52:08 +03:00
arcanis
61969dd682
make sqlite import consistent
2022-09-17 14:32:21 +03:00
arcanis
e441d93a56
Release 2.2.2
2022-09-17 04:05:06 +03:00
arcanis
664b6369bb
skip architecture list patching in case if any architecture is set
2022-09-17 04:04:28 +03:00
arcanis
4f6bd29ff4
Release 2.2.1
2022-09-14 04:49:08 +03:00
arcanis
f6d9ea480a
docs update
2022-09-14 04:48:11 +03:00
arcanis
08f62842ba
Release 2.2.0
2022-09-14 03:28:28 +03:00
arcanis
1912790ccc
Make optional dependencies trully optional ( #67 )
...
The issue appears when there is no boto, jinja and some other libraries
are not installed because the classes which use these libraries are
still being imported inside the package file. The fix removes those
imports from package root, because they should not be here, in fact,
content of report and upload packages must be imported only inside the
trigger class and only if they are actually required
This commit also adds setuptools as required dependency since it is used
for some parsers (previously it was provided dependency)
2022-09-11 01:44:06 +03:00
arcanis and GitHub
cf3c48ffeb
patch architecture list in runtime ( #66 )
2022-08-09 15:18:20 +03:00
arcanis
6633766cc3
frozen dataclasses
2022-07-26 14:40:28 +03:00
arcanis
f73d1eb424
reduce docker image size a bit
2022-07-18 11:42:26 +03:00
arcanis
87ab3683ad
Release 2.1.0
2022-07-02 15:42:39 +03:00
arcanis
9c2f73af8c
simplify tmpdir method
2022-06-28 19:11:38 +03:00
arcanis
31f551bdf2
review loggers once more
...
This commit makes loggers like java.util.logging with fully qualified
logger name which is created by LazyLogging trait
2022-06-28 11:00:45 +03:00
arcanis
cbbe2b01e4
fix case with package name which cannot be downloaded
...
(without special settings)
The issue appears if file or its version contains one of special URI
characters, e.g. +. Theu will be interpreted as query parameters by
(some) servers (e.g. S3 works in this way). In this commit we rename
archive to the one with safe name.
2022-06-27 18:53:48 +03:00
arcanis
cd361a483d
review loggers once more
...
This commit makes loggers like java.util.logging with fully qualified
logger name which is created by LazyLogging trait
2022-06-27 01:41:49 +03:00
arcanis
cee4fd4cce
bump web libraries
...
also encode strings for the views
2022-06-24 12:03:38 +03:00
arcanis
18daecaac7
review loggers
2022-06-21 11:48:42 +03:00
arcanis
03c298c762
replace if with while for telelgram reporting
2022-06-10 12:02:00 +03:00
arcanis
79d4a488a0
Release 2.0.0
2022-06-05 20:46:32 +03:00
arcanis
22847aac68
small docs update
2022-06-04 15:24:14 +03:00
arcanis
75b9a96798
do not pass timestamp to pretty_datetime functioon
2022-05-31 21:26:39 +03:00
arcanis
a0cfb7561d
rewrite api under single /api endpoint
2022-05-29 17:15:49 +03:00
arcanis
f4131b8cd7
add shell and version parser
2022-05-27 18:34:07 +03:00
arcanis
9f134e37b6
update readme
2022-05-22 16:00:24 +03:00
arcanis
07b7689701
do not bump timestamp on empty updates
2022-05-21 04:19:04 +03:00
arcanis and GitHub
47de715d7d
dynamic html load ( #63 )
...
* dynamic html load
* split by classes
2022-05-20 22:29:36 +03:00
arcanis
5674b7b388
add ability to run only speicifed triggers from command line
...
This commit also restores repo-report and repo-sync subcommands
2022-05-12 18:43:36 +03:00
arcanis
f6e57a411c
fix case when provided trigger path is directory
...
If trigger is directory and we have permissions to read it, the loaded
will try to load this from it and will fail with IsADirectoryError
2022-05-12 07:22:50 +03:00
arcanis
38e48b1571
add not about pacman database update
2022-05-11 04:30:24 +03:00
arcanis
d492c968ea
add contribution guide
2022-05-11 03:17:37 +03:00
arcanis
a11fd188a2
Release 2.0.0rc11
2022-05-10 06:03:33 +03:00
arcanis
2431d5de0e
fix bug with checking file
...
The bug appear when the file exists or doesn't, but we don't have
permissions to read it. This one must be treated as missed permission
2022-05-10 06:01:41 +03:00
arcanis
88f71b240d
Release 2.0.0rc10
2022-05-09 21:51:35 +03:00
arcanis
99874845b5
triggers implementation ( #62 )
2022-05-09 20:00:20 +03:00
arcanis
d98cfa3732
Release 2.0.0rc9
2022-05-08 03:58:53 +03:00
arcanis
b6db2a8035
fix error with missing sources
...
In case if package has local cache it will fail to load because no
remote source set. Particially this case can be observed during tree
load
2022-05-08 03:56:54 +03:00
arcanis
47c578ea08
Release 2.0.0rc8
2022-05-06 20:55:54 +03:00
arcanis
98910240dd
shorten public imports
2022-05-06 04:08:05 +03:00
arcanis
33e9fea47c
Docs update ( #61 )
...
* Improve sphinx documentation
* update faq formatting
* fix setup doc
* fix docs according to the generated htmls
2022-05-06 02:54:37 +03:00
arcanis
304690e0d0
correct archllinux wording in readme
2022-05-06 02:54:37 +03:00
arcanis
3d9fae5415
add __all__ attribute
2022-05-06 02:54:37 +03:00
arcanis
b7dca2d797
add note about ahriman to index page
2022-05-06 02:54:37 +03:00
arcanis and GitHub
b7debddaea
Complete official repository support ( #59 )
2022-05-03 00:49:32 +03:00
arcanis
1cfc751d21
rename classes in order to make documentation reference work
2022-04-18 05:30:02 +03:00
arcanis
6ebbb04504
readthedoc integration
2022-04-18 04:39:40 +03:00
arcanis
c9ee470ee2
move documentation to tox
2022-04-18 01:48:36 +03:00
arcanis
a2610504e5
apply data migration in the same transaction block with schema migration
2022-04-18 01:19:38 +03:00
arcanis
36b8b0f46a
fix target naming
2022-04-18 01:19:20 +03:00
arcanis and GitHub
d90f417cae
Docstring update ( #58 )
...
* migrate docstrings from reST to google format
* add raises note
Also change behaviour of the `from_option` method to fallback to
disabled instead of raising exception on unknown option
* fix part of warnings for sphinx
* make identation a bit more readable
* review fixes
* add verbose description for properties to make them parsed by sphinx extenstion
* add demo sphinx generator
2022-04-17 20:25:28 +03:00
arcanis
0db619136d
Release 2.0.0rc7
2022-04-11 00:48:08 +03:00
arcanis
208a9b920d
docs update
2022-04-11 00:46:46 +03:00
arcanis
cb63bc08ff
add backup and restore subcommands
2022-04-10 21:34:34 +03:00
arcanis
6551c8d983
merge restore to rebuild commannd
2022-04-10 01:51:12 +03:00
arcanis
a6c8d64053
Release 2.0.0rc6
2022-04-09 17:34:23 +03:00
arcanis
fd78f2b5e2
do not render failed packages in jinja ( #57 )
...
basic templates require package info which is unavailable if package
wasn't built
2022-04-09 17:31:13 +03:00
arcanis
900907cdaa
Release 2.0.0rc5
2022-04-08 04:42:05 +03:00
arcanis
5ff2f43506
change telegram default index to telegram-index
2022-04-08 04:32:34 +03:00
arcanis
dd521b49b5
force git run from the same dir to clone
2022-04-08 04:04:06 +03:00
arcanis
5b1f5a8473
fix users migration
2022-04-08 03:45:17 +03:00
arcanis
86af13f09e
add telegram integraion
2022-04-08 03:41:07 +03:00
arcanis
733c014229
Release 2.0.0rc4
2022-04-08 01:14:35 +03:00
arcanis
783c16b2ed
trim versions before dependency list calculation
...
When dependencies list contains same package with version it tries to
find packages which don't exists
2022-04-07 20:32:55 +03:00
arcanis
2536b8dc1f
add support of repository restoration
2022-04-07 04:49:07 +03:00
arcanis
e200ac9776
add support of officiall repositories api
2022-04-07 04:19:37 +03:00
arcanis
6946745153
fix descriptions
2022-04-06 01:48:03 +03:00
arcanis
6de75377c3
Release 2.0.0rc3
2022-04-04 02:40:17 +03:00
arcanis
a734b86e66
allow any tag for push
2022-04-04 02:39:56 +03:00
arcanis
74906d084a
Release 2.0.0rc2
2022-04-04 02:27:19 +03:00