Closed Hayao0819 closed 12 months ago
Do you have
[bindmounts]
"/tmp/shitty-bazel" = "/build/.cache/bazel"
in your lilac's config? If not, you don't need those postrun
commands.
I've got a better way to exclude caches. See latest config.toml.sample
.
Please ignore. It doesn't work.
I already have bindmounts
codes.
My config file is copied from /usr/share/doc/lilac/config.toml.sample
and I made a few changes.
Weird. What if you remove that "/tmp/shitty-bazel"
line and the two postrun
commands? (They are only relevant if you have packages using bazel.)
Umm... I do not have packages which uses bazel.
I rebooted by arch to remove my tmpfs(I checked that there is no such directory)
And, I have no package which has postrun section in lilac.yaml (If yor postrun means another place, please tell me the path)
I am going to run lilac on other machine (which has Manjaro) tomorrow.
There may be a possible that something on my arch is wrong.
I mean ~/.lilac/config.toml
. You can remove all those bazel related config lines if you don't use bazel.
Ok, I commnted out the line and there seems not to be the error.
But no package is in my directory, what is wrong?
It didn't build any packages, presumably because it didn't find any updates (and wasn't configure to retry unchanged failed packages).
To trigger a rebuild, you can add / update the update_on
section in lilac.yaml
:
update_on:
# other entries
- source: manual
manual: 1
Thank you, I added it and works.
But my all package builds failed with following error.
Sorry for asking many times, there is no information about lilac errors.
dummy package has nothing and is the simplest PKGBUILD.
[D 01-07 17:26:42.830 worker:209] got input: {'depend_packages': [], 'update_info': [[None, '1']], 'bindmounts': ['/home/lilac/.cargo:/build/.cargo', '/home/lilac/.cache/pip:/build/.cache/pip', '/home/lilac/.cache/archbuild-bind-cache/stack:/build/.stack', '/home/lilac/.cache/archbuild-bind-cache:/build/.cache'], 'logfile': '/home/lilac/.lilac/log/2023-01-07T17:26:24/dummy.log', 'worker_no': 0, 'result': '/tmp/dummy-233agc2m.lilac'}
[D 01-07 17:26:42.841 cmd:88] running ['sh', '-c', 'rm -f -- *.pkg.tar.xz *.pkg.tar.xz.sig *.pkg.tar.zst *.pkg.tar.zst.sig'], not using pty, showing output
[D 01-07 17:26:42.860 cmd:88] running ['recv_gpg_keys'], not using pty, showing output
[D 01-07 17:26:42.947 cmd:88] running ['bwrap', '--unshare-all', '--ro-bind', '/', '/', '--tmpfs', '/home', '--tmpfs', '/run', '--die-with-parent', '--tmpfs', '/tmp', '--proc', '/proc', '--dev', '/dev', '--share-net', '--bind', '/home/lilac/alterlinux-repo/alter-stable/dummy', '/tmp/dummy', '--chdir', '/tmp/dummy', '--ro-bind', PosixPath('/home/lilac/.lilac/gnupg'), '/home/lilac/.gnupg', 'makepkg', '-od', '--noprepare', '-A'], using pty, showing output
[D 01-07 17:26:42.947 cmd:95] pty master fd=3, slave fd=4.
[2023-01-07 17:26:43 +0900] build (version None) finished in 1s with result: <BuildResult.failed: FileNotFoundError(2, 'No such file or directory'); rusage=None>
Check /home/lilac/.lilac/log/2023-01-07T17:26:24/dummy.log
.
The log I have commented is the path which you said
Oh I see. What's in the lilac-main.log
file?
I paste a part of log about dummy package from lilac-main.log
[D 01-07 17:26:42.061 lilac:210] ready-to-build packages: ['dummy', 'alterlinux-i3-manager', 'filesystem']
[I 01-07 17:26:42.061 lilac:332] building dummy
[I 01-07 17:26:42.062 building:135] depends: set(), resolved: []
[D 01-07 17:26:42.062 building:191] worker input: b'{"depend_packages": [], "update_info": [[null, "1"]], "bindmounts": ["/home/lilac/.cargo:/build/.cargo", "/home/lilac/.cache/pip:/build/.cache/pip", "/home/lilac/.cache/archbuild-bind-cache/stack:/build/.stack", "/home/lilac/.cache/archbuild-bind-cache:/build/.cache"], "logfile": "/home/lilac/.lilac/log/2023-01-07T17:26:24/dummy.log", "worker_no": 0, "result": "/tmp/dummy-233agc2m.lilac"}'
[D 01-07 17:26:42.063 systemd:52] running systemd-run --pipe --quiet --user --wait --remain-after-exit -u lilac-worker-0 -p CPUWeight=100 --working-directory=/home/lilac/alterlinux-repo/alter-stable/dummy --setenv=PATH=/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl --setenv=MAKEFLAGS=-j4 "--setenv=PACKAGER=lilac (on behalf of hayao) <hayao@fascode.net>" -- /usr/bin/python -u -m lilac2.worker dummy
[D 01-07 17:26:42.092 systemd:108] lilac-worker-0.service state: dead, waiting
[D 01-07 17:26:43.213 systemd:144] stopping worker service
[E 01-07 17:26:43.285 building:105] build failed with exception
Traceback (most recent call last):
File "/usr/lib/python3.10/site-packages/lilac2/building.py", line 68, in build_package
pkg_version, rusage, error = call_worker(
File "/usr/lib/python3.10/site-packages/lilac2/building.py", line 199, in call_worker
rusage, timedout = _call_cmd(
File "/usr/lib/python3.10/site-packages/lilac2/building.py", line 306, in _call_cmd_systemd
return systemd.poll_rusage(name, deadline)
File "/usr/lib/python3.10/site-packages/lilac2/systemd.py", line 121, in poll_rusage
with open(mem_file) as f:
FileNotFoundError: [Errno 2] No such file or directory: '/sys/fs/cgroup/user.slice/user-1001.slice/user@1001.service/app.slice/lilac-worker-0.service/memory.current'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.10/site-packages/lilac2/building.py", line 81, in build_package
may_need_cleanup()
File "/usr/lib/python3.10/site-packages/lilac2/building.py", line 140, in may_need_cleanup
st = os.statvfs('/var/lib/archbuild')
FileNotFoundError: [Errno 2] No such file or directory: '/var/lib/archbuild'
[I 01-07 17:26:43.286 lilac:352] package dummy (version None) finished in 1s with result: <BuildResult.failed: FileNotFoundError(2, 'No such file or directory'); rusage=None>
[E 01-07 17:26:43.286 lilac:388] dummy 1 [None] failed after 1s
[D 01-07 17:26:43.287 repo:318] mail to ['hayao <hayao@fascode.net>']:
subject: 在打包软件包 dummy 时发生未知错误
body: 发生未知错误!调用栈如下:
Traceback (most recent call last):
File "/usr/lib/python3.10/site-packages/lilac2/building.py", line 68, in build_package
pkg_version, rusage, error = call_worker(
File "/usr/li
[D 01-07 17:26:43.288 lilac:210] ready-to-build packages: ['alterlinux-i3-manager', 'filesystem']
No /var/lib/archbuild
? The cgroup path doesn't exist. Where has it gone?
Could you run systemd-run --user --wait -u test sleep 10
and see what systemctl --user show test -p ControlGroup
prints during its run?
And what if you run extra-x86_64-build
in your dummy PKGBUILD
directory? Does it work?
I feel sorry for being late for reply.
Self running extra-x86_64-build
builds package file and exits with 0 code and so in other package.
Could you check if /var/lib/archbuild
exists and https://github.com/archlinuxcn/lilac/issues/195#issuecomment-1374869389?
There is /var/lib/archbuild/extra-x86_64
.
And the result of the command is
ControlGroup=/user.slice/user-1001.slice/user@1001.service/app.slice/test.service
Hmmm, that's quite normal. Why is lilac seeing different...
I will try it on different machine which has manjaro.
If it goes well, something on my arch is wrong.
I found that my lilac user has no gpg key and I have made it.
And then I re-run lilac command but no packages are triggred.
My destdir is still empty and rebuild_failed_pkgs
is set to true.
Can you share lilac-main.log
for this run?
I have been building new lilac server, reading English document.
When I run
lilac
command, the prompt returned and lilac leaved the error log.My pkgbuild is following repository.
https://github.com/Hayao0819/alterlinux-repo
I am running lilac on Arch Linux. Can someone tell me the way to fix the error?