Sailfish2023 commited on
Commit
73e494f
·
1 Parent(s): ecfd212

Add automation scripts to support displaying environment information such as RAGFlow repository version, operating system, Python version, etc. in a Linux environment for users to report issues. (#396)

Browse files

### What problem does this PR solve?
Add automation scripts to support displaying environment information
such as RAGFlow repository version, operating system, Python version,
etc. in a Linux environment for users to report issues.

### Type of change

- [x] New Feature (non-breaking change which adds functionality)

Files changed (1) hide show
  1. printEnvironment.sh +67 -0
printEnvironment.sh ADDED
@@ -0,0 +1,67 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/bin/bash
2
+
3
+ # The function is used to obtain distribution information
4
+ get_distro_info() {
5
+ local distro_id=$(lsb_release -i -s 2>/dev/null)
6
+ local distro_version=$(lsb_release -r -s 2>/dev/null)
7
+ local kernel_version=$(uname -r)
8
+
9
+ # If lsd_release is not available, try parsing the/etc/* - release file
10
+ if [ -z "$distro_id" ] || [ -z "$distro_version" ]; then
11
+ distro_id=$(grep '^ID=' /etc/*-release | cut -d= -f2 | tr -d '"')
12
+ distro_version=$(grep '^VERSION_ID=' /etc/*-release | cut -d= -f2 | tr -d '"')
13
+ fi
14
+
15
+ echo "$distro_id $distro_version (Kernel version: $kernel_version)"
16
+ }
17
+
18
+ # get Git repo name
19
+ git_repo_name=''
20
+ if git rev-parse --is-inside-work-tree > /dev/null 2>&1; then
21
+ git_repo_name=$(basename "$(git rev-parse --show-toplevel)")
22
+ if [ $? -ne 0 ]; then
23
+ git_repo_name="(Can't get repo name)"
24
+ fi
25
+ else
26
+ git_repo_name="It NOT a Git repo"
27
+ fi
28
+
29
+ # get CPU type
30
+ cpu_model=$(uname -m)
31
+
32
+ # get memory size
33
+ memory_size=$(free -h | grep Mem | awk '{print $2}')
34
+
35
+ # get docker version
36
+ docker_version=''
37
+ if command -v docker &> /dev/null; then
38
+ docker_version=$(docker --version | cut -d ' ' -f3)
39
+ else
40
+ docker_version="Docker not installed"
41
+ fi
42
+
43
+ # get python version
44
+ python_version=''
45
+ if command -v python &> /dev/null; then
46
+ python_version=$(python --version | cut -d ' ' -f2)
47
+ else
48
+ python_version="Python not installed"
49
+ fi
50
+
51
+ # Print all infomation
52
+ echo "Current Repo: $git_repo_name"
53
+
54
+ # get Commit ID
55
+ git_version=$(git log -1 --pretty=format:'%h')
56
+
57
+ if [ -z "$git_version" ]; then
58
+ echo "Commit Id: The current directory is not a Git repository, or the Git command is not installed."
59
+ else
60
+ echo "Commit Id: $git_version"
61
+ fi
62
+
63
+ echo "Operating system: $(get_distro_info)"
64
+ echo "CPU Type: $cpu_model"
65
+ echo "Memory: $memory_size"
66
+ echo "Docker Version: $docker_version"
67
+ echo "Python Version: $python_version"