Binárka má vědět, která je
Venku jsou čtyři soubory na release, tři systémy a k tomu zdrojáky. Když někdo napíše, že mu něco nefunguje, není jak zjistit, co vlastně pustil. Verzi zapisuje build.sh do verze.txt, kostky.spec ji přibalí a version.py ji z rozbalené binárky přečte. Ze zdrojáků má přednost git describe, který ví i o commitech nad tagem a o rozdělané práci. V CI se na tagu vnucuje proměnnou, protože runner klonuje jeden commit bez značek. Hlásí se přes --version, v úvodní hlášce serveru a v patičce každé stránky. Zkouška v obou workflow ověří, že se do binárky opravdu dostala.
This commit is contained in:
1 parent
4ffd7d3c9d
commit
e3d56f4c22
12 files changed
+181
-8
No files matched your search
+8
-1
@@ -5,12 +5,19 @@ Staví se přes `./build.sh`, ne ručně — ta se stará o to, aby výsledek je
|
||||
i na starších systémech, než je ten tvůj.
|
||||
"""
|
||||
|
||||
import os
|
||||
import sys
|
||||
|
||||
# Verzi zapisuje build.sh těsně před stavbou. Když se pyinstaller pustí
|
||||
# ručně bez ní, binárka se postaví taky — jen se pak hlásí jako neznámá.
|
||||
datas = [("templates", "templates"), ("static", "static")]
|
||||
if os.path.exists("verze.txt"):
|
||||
datas.append(("verze.txt", "."))
|
||||
|
||||
analysis = Analysis(
|
||||
["web.py"],
|
||||
pathex=["."],
|
||||
datas=[("templates", "templates"), ("static", "static")],
|
||||
datas=datas,
|
||||
noarchive=False,
|
||||
)
|
||||
|
||||
|
||||
Reference in new issue
Block a user