Commit graph

758 commits

Author SHA1 Message Date
InsanePrawn
33b52b2774 gitlab-ci: fix docker job to run on custom runners without overlayfs as well 2022-11-11 17:55:53 +01:00
InsanePrawn
bce4f03c09 gitlab-ci: build docker for non-protected branches too 2022-11-10 02:55:06 +01:00
InsanePrawn
fbd06eded5 docs: convert to markdown with rst2myst 2022-11-10 02:25:05 +01:00
InsanePrawn
a8e8ddc4b4 typecheck: add --check-untyped-defs and fix some associated type errors 2022-11-09 20:19:04 +01:00
InsanePrawn
c46cd0cd4f integration_test: write config file to a temp dir, ensure it gets loaded 2022-11-09 20:19:04 +01:00
InsanePrawn
3eeeafb30f config.state: try_load_file(): clear state.exception after successful load 2022-11-09 20:19:04 +01:00
InsanePrawn
5951c8c296 packages/cli: check for loadable config before wrapping 2022-11-09 20:19:04 +01:00
InsanePrawn
11125e525f config: remove accidental scheme validation circumvention, improve errors, warn on config loading failure in main()
This will fail on values of the wrong type, but still warn about and allow unknown keys.
2022-11-09 20:19:04 +01:00
InsanePrawn
7d96d05165 dataclass: transform(): format types in error for wrong value type better 2022-11-09 20:19:04 +01:00
InsanePrawn
82a87e7ea9 implement explicit Optional type hints for =None parameters
Thanks https://github.com/hauntsaninja/no_implicit_optional
2022-11-09 20:19:04 +01:00
InsanePrawn
669c82a10b constants: switch archlinux x86 mirrors to https://geo.mirror.pkgbuild.com/$repo/os/$arch 2022-11-09 20:19:04 +01:00
InsanePrawn
185894842f packages: clone_pkgbuilds() and friends: add discard_changes arg, use in integration_tests 2022-11-09 20:19:04 +01:00
InsanePrawn
12554ebf18 integration_tests: ensure that failing branch doesn't exist using git ls-remote 2022-11-09 20:19:04 +01:00
InsanePrawn
f127ff7427 packages/build: explain what's going on and print the plan while lookin for unbuilts and building 2022-11-09 20:19:04 +01:00
InsanePrawn
447046d24a packages/build: fix up incomplete f-strings 2022-11-09 20:19:04 +01:00
InsanePrawn
ec323ce8d7 packages: make _mode in PKGBUILD optional for building (but not for cmd_check), warn if missing 2022-11-09 20:19:04 +01:00
InsanePrawn
46f1e91f88 packages/build: build_package(): print package path in all info msgs 2022-11-09 20:19:04 +01:00
InsanePrawn
2cff31973e packages/build: use makepkg --nodeps if package.nodeps is set... 2022-11-09 20:19:04 +01:00
InsanePrawn
71e33ab8e1 chroot/abstract: remove leftover print statement 2022-11-09 20:19:04 +01:00
InsanePrawn
b17cf3584a packages/srcinfo_cache: move initialised_for to new .srcinfo_initialised.json file 2022-11-09 20:19:04 +01:00
InsanePrawn
276933036c packages/srcinfo_cache: extract read() and class._read_file() methods into JsonFile 2022-11-09 20:19:04 +01:00
InsanePrawn
931e09c3d3 packages/srcinfo_cache: extract JsonFile class 2022-11-09 20:19:04 +01:00
InsanePrawn
04f9173233 .gitlab-ci.yml: pytest: install rsync and arch-install-scripts for cmd_build() 2022-11-09 20:19:04 +01:00
InsanePrawn
ff8001881a integration_tests: add tests for cmd_build() 2022-11-09 20:19:04 +01:00
InsanePrawn
84d2d40f04 .gitlab-ci.yml: pytest: export KUPFERBOOTSTRAP_WRAPPED=DOCKER 2022-11-09 20:19:04 +01:00
InsanePrawn
402179d2ee devices/test_deviceinfo.py: add test for deviceinfo python parser variant handling 2022-11-09 20:19:04 +01:00
InsanePrawn
3dcaefe35b devices/test_deviceinfo: add test for device variants ("kernels" in pmb) 2022-11-09 20:19:04 +01:00
InsanePrawn
0e3f0b8771 .gitignore: add .coverage* 2022-11-09 20:19:04 +01:00
InsanePrawn
3b7465dccb devices/{device,deviceinfo}: tolerate device variants that live inside split packages 2022-11-09 20:19:04 +01:00
InsanePrawn
22bd6193dd devices: fix up beryllium deprecations copy-paste fail 2022-11-09 20:19:04 +01:00
InsanePrawn
809dfe6a7f packages/build: build_package(): install makedeps for _nodeps=true packages 2022-11-09 20:19:04 +01:00
InsanePrawn
a0c2061c8b pkgbuild.py: track makedepends both in depends and separate variable for _nodeps=true usage 2022-11-09 20:19:04 +01:00
InsanePrawn
dc2d826362 packages: clean up cmd_init 2022-11-09 20:19:04 +01:00
InsanePrawn
14b0a4a666 docs: templates/command.rst: remove unnecessary $cmd.cmd_$cmd import as all cmds are moved to $cmd.cli.cmd_$cmd now. 2022-11-09 20:19:04 +01:00
InsanePrawn
5d0d76fff2 cache: move cache.py to new module cache/cli.py for uniformity 2022-11-09 20:19:04 +01:00
InsanePrawn
50bcd0de63 image: create new module from {image,boot,fastboot,flash}.py 2022-11-09 20:19:04 +01:00
InsanePrawn
afca099ede net: make new module from {forwarding,ssh,telnet}.py 2022-11-09 20:19:04 +01:00
InsanePrawn
6fed749488 docs: Makefile: clean up .buildinfo and .doctrees 2022-11-09 20:19:04 +01:00
InsanePrawn
d1267d4082 chroot/cli: import get_profile_device() properly now that import loop is fixed 2022-11-09 20:19:04 +01:00
InsanePrawn
254d59959b config: add new __init__.py 2022-11-09 20:19:04 +01:00
InsanePrawn
33f4a81981 config: move code from __init__.py into cli.py 2022-11-09 20:19:04 +01:00
InsanePrawn
777b3172d8 move packages/flavour.py to flavours/ 2022-11-09 20:19:04 +01:00
InsanePrawn
ed4226a505 chroot: add empty __init__.py 2022-11-09 20:19:04 +01:00
InsanePrawn
6569fee6a2 chroot: move __init__.py to cli.py 2022-11-09 20:19:04 +01:00
InsanePrawn
827550e972 docs: scan for $module.cli.cmd_$module 2022-11-09 20:19:04 +01:00
InsanePrawn
0e86de1f44 packages/flavours: rename cmd_flavours_list() to cmd_flavours(), add to main cli directly 2022-11-09 20:19:04 +01:00
InsanePrawn
6581e34087 move packages/{device,deviceinfo}.py to devices/ 2022-11-09 20:19:04 +01:00
InsanePrawn
b2112026d2 packages/build: skip packages that were already built this run (e.g. split packages) 2022-11-09 20:19:04 +01:00
InsanePrawn
ebd541e039 packages/build: exclude package names from dependencies, use pkgbase.names() 2022-11-09 20:19:04 +01:00
InsanePrawn
e91a8c796c packages/pkgbuild: parse version specs from dependencies, provides, etc.
handles e.g. "git>=1.0" properly
2022-11-09 20:19:04 +01:00