|
Bugzilla – Full Text Bug Listing |
| Summary: | rpm lua checker throws error on "!" | ||
|---|---|---|---|
| Product: | [openSUSE] openSUSE Tumbleweed | Reporter: | Dr. Werner Fink <werner> |
| Component: | Basesystem | Assignee: | Michael Schröder <mls> |
| Status: | RESOLVED INVALID | QA Contact: | E-mail List <qa-bugs> |
| Severity: | Major | ||
| Priority: | P3 - Medium | ||
| Version: | Current | ||
| Target Milestone: | --- | ||
| Hardware: | All | ||
| OS: | openSUSE Tumbleweed | ||
| Whiteboard: | |||
| Found By: | --- | Services Priority: | |
| Business Priority: | Blocker: | --- | |
| Marketing QA Status: | --- | IT Deployment: | --- |
I use the workaround
stat = posix.stat("/var/cache/man")
if not stat then
domkdir = true
elseif not (stat.type == "directory") then
domkdir = true
os.remove("/var/cache/man")
end
seems to work
Lua uses ~= instead of != for inequality. So the rpm documentation is not correct. I'll open an issue. |
This simple lua scriplet %transfiletriggerin -p <lua> -- %{_mandir} if posix.getcwd() != '/' then print("Hello") endif cause: [ 4s] + exec rpmbuild -ba --define '_srcdefattr (-,root,root)' --noclean --nosignature --define '_build_create_debug 1' /home/abuild/rpmbuild/SOURCES/man.spec [ 4s] error: invalid syntax in lua scriptlet: [string "%transfiletriggerin"]:1: 'then' expected near '!' ... accordingly to /usr/share/doc/packages/rpm/manual/lua.md the syntax is correct ... I'd like to use the return value of stat = posix.stat("/var/cache/man") to test is /var/cache/man exists and is also a directory but the string compare stat.type != "directory" crashes with a similar error