print_help() { | |
echo "Usage: $0 <option>" | |
echo " full, build full image" | |
echo " slim, build slim image" | |
exit 1 | |
} | |
if [ "$#" -ne 1 ]; then | |
print_help | |
fi | |
docker_version="full" | |
if [ "$1" == "full" ]; then | |
docker_version="full" | |
elif [ "$1" == "slim" ]; then | |
docker_version="slim" | |
else | |
print_help | |
fi | |
# update RAGFlow version | |
# Get the latest tag | |
last_tag=$(git describe --tags --abbrev=0) | |
# Get the number of commits from the last tag | |
commit_count=$(git rev-list --count "$last_tag..HEAD") | |
# Get the short commit id | |
last_commit=$(git rev-parse --short HEAD) | |
version_info="" | |
if [ "$commit_count" -eq 0 ]; then | |
version_info=$last_tag | |
else | |
printf -v version_info "%s(%s~%d)" "$last_commit" "$last_tag" $commit_count | |
fi | |
# Replace the version in the versions.py file | |
sed -i "s/\"dev\"/\"$version_info\"/" api/versions.py | |
if [ "$docker_version" == "full" ]; then | |
docker build -f Dockerfile -t infiniflow/ragflow:dev . | |
else | |
docker build -f Dockerfile.slim -t infiniflow/ragflow:dev-slim . | |
fi | |
git restore api/versions.py |