Add a basic script to check for release sanity
parent
2d23a848cc
commit
a7234b9c53
@ -0,0 +1,59 @@
|
||||
-- basic check for release readiness
|
||||
--[[=begin
|
||||
devel/check-release
|
||||
===================
|
||||
Basic checks for release readiness
|
||||
=end]]
|
||||
|
||||
ok = true
|
||||
function err(s)
|
||||
dfhack.printerr(s)
|
||||
ok = false
|
||||
end
|
||||
function warn(s)
|
||||
dfhack.color(COLOR_YELLOW)
|
||||
dfhack.print(s .. '\n')
|
||||
dfhack.color(nil)
|
||||
end
|
||||
|
||||
dfhack_ver = dfhack.getDFHackVersion()
|
||||
git_desc = dfhack.getGitDescription()
|
||||
git_commit = dfhack.getGitCommit()
|
||||
if not dfhack.isRelease() then
|
||||
err('This build is not tagged as a release')
|
||||
print[[
|
||||
This is probably due to missing git tags.
|
||||
Try running `git fetch origin --tags` in the DFHack source tree.
|
||||
]]
|
||||
end
|
||||
|
||||
expected_git_desc = ('%s-0-g%s'):format(dfhack_ver, git_commit:sub(1, 7))
|
||||
if git_desc:sub(1, #expected_git_desc) ~= expected_git_desc then
|
||||
err(([[Bad git description:
|
||||
Expected %s, got %s]]):format(expected_git_desc, git_desc))
|
||||
print[[
|
||||
Ensure that the DFHack source tree is up-to-date (`git pull`) and CMake is
|
||||
installing DFHack to this DF folder.
|
||||
]]
|
||||
end
|
||||
|
||||
if not dfhack.gitXmlMatch() then
|
||||
err('library/xml submodule commit does not match tracked commit\n' ..
|
||||
('Expected %s, got %s'):format(
|
||||
dfhack.getGitXmlCommit():sub(1, 7),
|
||||
dfhack.getGitXmlExpectedCommit():sub(1, 7)
|
||||
))
|
||||
print('Try running `git submodule update` in the DFHack source tree.')
|
||||
end
|
||||
|
||||
if dfhack.isPrerelease() then
|
||||
warn('This build is marked as a prerelease.')
|
||||
print('If this is not intentional, be sure your DFHack tree is up-to-date\n' ..
|
||||
'(`git pull`) and try again.')
|
||||
end
|
||||
|
||||
if not ok then
|
||||
err('This build is not release-ready!')
|
||||
else
|
||||
print('Release checks succeeded')
|
||||
end
|
Loading…
Reference in New Issue