Improved image build instructions (#3580)

### What problem does this PR solve?

Improved arm64 image build instructions

### Type of change

- [x] Documentation Update
- [x] Refactoring
This commit is contained in:
Zhichang Yu
2024-11-22 20:24:32 +08:00
committed by GitHub
parent 8872aed512
commit 646ac1f2b4
12 changed files with 110 additions and 88 deletions

View File

@ -13,26 +13,51 @@
# See the License for the specific language governing permissions and
# limitations under the License.
#
import os
import subprocess
RAGFLOW_VERSION_INFO = "unknown"
def get_ragflow_version() -> str:
global RAGFLOW_VERSION_INFO
if RAGFLOW_VERSION_INFO != "unknown":
return RAGFLOW_VERSION_INFO
version_path = os.path.abspath(
os.path.join(
os.path.dirname(os.path.realpath(__file__)), os.pardir, "VERSION"
)
)
if os.path.exists(version_path):
with open(version_path, "r") as f:
RAGFLOW_VERSION_INFO = f.read().strip()
else:
RAGFLOW_VERSION_INFO = get_closest_tag_and_count()
LIGHTEN = int(os.environ.get("LIGHTEN", "0"))
RAGFLOW_VERSION_INFO += " slim" if LIGHTEN == 1 else " full"
return RAGFLOW_VERSION_INFO
RAGFLOW_VERSION_INFO = "dev"
def get_closest_tag_and_count():
try:
# Get the current commit hash
commit_id = subprocess.check_output(['git', 'rev-parse', '--short', 'HEAD']).strip().decode('utf-8')
commit_id = (
subprocess.check_output(["git", "rev-parse", "--short", "HEAD"])
.strip()
.decode("utf-8")
)
# Get the closest tag
closest_tag = subprocess.check_output(['git', 'describe', '--tags', '--abbrev=0']).strip().decode('utf-8')
# Get the commit hash of the closest tag
closest_tag_commit = subprocess.check_output(['git', 'rev-list', '-n', '1', closest_tag]).strip().decode(
'utf-8')
closest_tag = (
subprocess.check_output(["git", "describe", "--tags", "--abbrev=0"])
.strip()
.decode("utf-8")
)
# Get the commit count since the closest tag
process = subprocess.Popen(['git', 'rev-list', '--count', f'{closest_tag}..HEAD'], stdout=subprocess.PIPE)
process = subprocess.Popen(
["git", "rev-list", "--count", f"{closest_tag}..HEAD"],
stdout=subprocess.PIPE,
)
commits_count, _ = process.communicate()
commits_count = int(commits_count.strip())
@ -41,8 +66,4 @@ def get_closest_tag_and_count():
else:
return f"{commit_id}({closest_tag}~{commits_count})"
except Exception:
return 'unknown'
if RAGFLOW_VERSION_INFO == 'dev':
RAGFLOW_VERSION_INFO = get_closest_tag_and_count()
return "unknown"