arcanis
dd6ef38c99
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
415dc42313
Release 2.3.0rc4
2022-11-14 01:02:27 +02:00
arcanis
3e1af17796
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
880cebe54f
Release 2.3.0rc3
2022-11-11 21:20:55 +02:00
arcanis
cbcc796a3a
rollback cwd parameter for clone
2022-11-11 21:19:27 +02:00
arcanis
dc8a52f6c0
Release 2.3.0rc2
2022-11-11 17:25:11 +02:00
arcanis
34c93e53cc
Fix issue when there is no cached source directory yet ( closes #75 )
2022-11-11 17:23:15 +02:00
arcanis
f7ec24523b
Release 2.3.0rc1
2022-11-11 16:36:13 +02:00
arcanis
f817b32976
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
9fc2b681d4
limit max module size and improve some help messages
2022-11-11 16:01:54 +02:00
arcanis
59ff0589ab
speedup docker build command by adding dockerignore listing
2022-11-11 12:47:31 +02:00
arcanis
1b53de6f2b
man update
2022-11-10 20:10:07 +02:00
arcanis
41080c5ff8
add exec to shell subcommand
2022-11-10 18:52:55 +02:00
arcanis
791ce4f242
make exception optional argument for check_output method
2022-11-10 18:05:32 +02:00
arcanis and GitHub
b75bd30658
replace several store_true keys to booleanoptionalaction alternative ( #74 )
2022-11-10 18:34:01 +03:00
arcanis
b3b3cad706
write .makepkg.conf to home dir instead of repository root ( #72 )
2022-11-08 17:02:13 +02:00
arcanis and GitHub
82b932371b
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
45fb2f3c46
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
4a5b9d9fa1
fix case in which if no source PKGBUILDs were updated, an exception will occur
2022-11-03 03:39:54 +02:00
arcanis
2f8316ecb0
faq update
2022-11-02 17:15:17 +02:00
arcanis
77ad35fce8
docs update
2022-11-02 04:17:26 +02:00
arcanis
48da4646cf
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
3d98dd267a
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
09678a3ae1
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
8e2732f6fe
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
73e311a41c
implement single-function patches ( #69 )
2022-10-30 03:11:03 +03:00
arcanis
1e8388af5d
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
c1d74726b7
fix rtd docs building
...
Commit 9d016f51b5 introduced kw_only
dataclasess which require python 3.10+
2022-10-18 02:24:18 +03:00
arcanis
f2ddcc6d23
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
a5ce6b78dd
Add gitremote triggers ( #68 )
...
* add gitremote pull trigger
* add push gitremote trigger
* docs update
2022-10-18 01:46:27 +03:00
arcanis
1a83dd6f5a
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
16a33f7729
add minimal install step to workflow
2022-09-17 14:52:08 +03:00
arcanis
fb21b1da53
make sqlite import consistent
2022-09-17 14:32:21 +03:00
arcanis
8394004943
Release 2.2.2
2022-09-17 04:05:06 +03:00
arcanis
75c6bf6119
skip architecture list patching in case if any architecture is set
2022-09-17 04:04:28 +03:00
arcanis
7e20ff5184
Release 2.2.1
2022-09-14 04:49:08 +03:00
arcanis
757614f5a0
docs update
2022-09-14 04:48:11 +03:00
arcanis
43166e5f94
Release 2.2.0
2022-09-14 03:28:28 +03:00
arcanis
43696b9920
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
8befee58fe
patch architecture list in runtime ( #66 )
2022-08-09 15:18:20 +03:00
arcanis
9d016f51b5
frozen dataclasses
2022-07-26 14:40:28 +03:00
arcanis
c5fbccd519
reduce docker image size a bit
2022-07-18 11:42:26 +03:00
arcanis
eae5748a30
Release 2.1.0
2022-07-02 15:42:39 +03:00
arcanis
695ef708b6
simplify tmpdir method
2022-06-28 19:11:38 +03:00
arcanis
26408e82c0
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
7b647a9b5a
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
fac228d6c6
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
eb5ac5a52b
bump web libraries
...
also encode strings for the views
2022-06-24 12:03:38 +03:00
arcanis
047925dcfe
review loggers
2022-06-21 11:48:42 +03:00
arcanis
b8d2775050
replace if with while for telelgram reporting
2022-06-10 12:02:00 +03:00
arcanis
bf959ceb5f
Release 2.0.0
2022-06-05 20:46:32 +03:00
arcanis
945b6d0ac0
small docs update
2022-06-04 15:24:14 +03:00
arcanis
5df9f30e37
do not pass timestamp to pretty_datetime functioon
2022-05-31 21:26:39 +03:00
arcanis
1ea3911531
rewrite api under single /api endpoint
2022-05-29 17:15:49 +03:00
arcanis
d7966e419d
add shell and version parser
2022-05-27 18:34:07 +03:00
arcanis
3a5268993e
update readme
2022-05-22 16:00:24 +03:00
arcanis
ad84895e18
do not bump timestamp on empty updates
2022-05-21 04:19:04 +03:00
arcanis and GitHub
b1dfafe275
dynamic html load ( #63 )
...
* dynamic html load
* split by classes
2022-05-20 22:29:36 +03:00
arcanis
375f9fcfb7
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
04dcaa93ab
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
f42c2c57fb
add not about pacman database update
2022-05-11 04:30:24 +03:00
arcanis
dc3562a4ec
add contribution guide
2022-05-11 03:17:37 +03:00
arcanis
dda94f8f9e
Release 2.0.0rc11
2022-05-10 06:03:33 +03:00
arcanis
709db6a5ed
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
89a2d8e298
Release 2.0.0rc10
2022-05-09 21:51:35 +03:00
arcanis
b9cd98235e
triggers implementation ( #62 )
2022-05-09 20:00:20 +03:00
arcanis
1905360f8f
Release 2.0.0rc9
2022-05-08 03:58:53 +03:00
arcanis
a7018d9f7d
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
73057bc08d
Release 2.0.0rc8
2022-05-06 20:55:54 +03:00
arcanis
7f87863734
shorten public imports
2022-05-06 04:08:05 +03:00
arcanis
2dac5a2520
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
720edc24ba
correct archllinux wording in readme
2022-05-06 02:54:37 +03:00
arcanis
fe9711d24f
add __all__ attribute
2022-05-06 02:54:37 +03:00
arcanis
c73a2a4aa9
add note about ahriman to index page
2022-05-06 02:54:37 +03:00
arcanis and GitHub
571f720ae2
Complete official repository support ( #59 )
2022-05-03 00:49:32 +03:00
arcanis
5030395025
rename classes in order to make documentation reference work
2022-04-18 05:30:02 +03:00
arcanis
03633d47ea
readthedoc integration
2022-04-18 04:39:40 +03:00
arcanis
1a575d6db8
move documentation to tox
2022-04-18 01:48:36 +03:00
arcanis
cdc018ad07
apply data migration in the same transaction block with schema migration
2022-04-18 01:19:38 +03:00
arcanis
f806c8918e
fix target naming
2022-04-18 01:19:20 +03:00
arcanis and GitHub
4daff81d5f
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
06bd29b78d
Release 2.0.0rc7
2022-04-11 00:48:08 +03:00
arcanis
c67ac3730c
docs update
2022-04-11 00:46:46 +03:00
arcanis
c094d4ee79
add backup and restore subcommands
2022-04-10 21:34:34 +03:00
arcanis
3cb479ba4b
merge restore to rebuild commannd
2022-04-10 01:51:12 +03:00
arcanis
307a7f4a71
Release 2.0.0rc6
2022-04-09 17:34:23 +03:00
arcanis
25734876de
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
53df735eb2
Release 2.0.0rc5
2022-04-08 04:42:05 +03:00
arcanis
fb7275f9dd
change telegram default index to telegram-index
2022-04-08 04:32:34 +03:00
arcanis
f01af5f54a
force git run from the same dir to clone
2022-04-08 04:04:06 +03:00
arcanis
1abe8d291f
fix users migration
2022-04-08 03:45:17 +03:00
arcanis
1a83e55d64
add telegram integraion
2022-04-08 03:41:07 +03:00
arcanis
b8e17c4879
Release 2.0.0rc4
2022-04-08 01:14:35 +03:00
arcanis
bee41dcc55
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
9f7995fb2f
add support of repository restoration
2022-04-07 04:49:07 +03:00
arcanis
9ce1c36f35
add support of officiall repositories api
2022-04-07 04:19:37 +03:00
arcanis
4990ce4198
fix descriptions
2022-04-06 01:48:03 +03:00
arcanis
8f18ead4cc
Release 2.0.0rc3
2022-04-04 02:40:17 +03:00
arcanis
7ea50887a4
allow any tag for push
2022-04-04 02:39:56 +03:00
arcanis
97ec5bfa41
Release 2.0.0rc2
2022-04-04 02:27:19 +03:00