mirror of
				https://github.com/openimsdk/open-im-server.git
				synced 2025-10-29 23:38:11 +08:00 
			
		
		
		
	* feat: add test changelog file Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add test changelog file Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add test changelog file Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add test changelog file Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add test changelog file Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add test changelog file Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add test changelog file Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add scripts test Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add scripts test and format Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add scripts test and format Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add scripts test and format Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add scripts test and format Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add scripts test and format Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add scripts test and format Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add scripts test and format Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add scripts test and format Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> * feat: add scripts test and format Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com> --------- Signed-off-by: Xinwei Xiong(cubxxw-openim) <3293172751nss@gmail.com>
		
			
				
	
	
		
			97 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			97 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/usr/bin/env bash
 | |
| # Copyright © 2023 OpenIM. All rights reserved.
 | |
| #
 | |
| # Licensed under the Apache License, Version 2.0 (the "License");
 | |
| # you may not use this file except in compliance with the License.
 | |
| # You may obtain a copy of the License at
 | |
| #
 | |
| #     http://www.apache.org/licenses/LICENSE-2.0
 | |
| #
 | |
| # Unless required by applicable law or agreed to in writing, software
 | |
| # distributed under the License is distributed on an "AS IS" BASIS,
 | |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | |
| # See the License for the specific language governing permissions and
 | |
| # limitations under the License.
 | |
| 
 | |
| # openim-man.sh Script to manage man pages for openim
 | |
| #
 | |
| # Description:
 | |
| #   This script manages the man pages for the OpenIM software suite.
 | |
| #   It provides facilities to install, uninstall, and verify the 
 | |
| #   installation status of the man pages related to OpenIM components.
 | |
| #
 | |
| # Usage:
 | |
| #   ./openim-man.sh openim::man::install      - Install man pages
 | |
| #   ./openim-man.sh openim::man::uninstall    - Uninstall man pages
 | |
| #   ./openim-man.sh openim::man::status       - Check installation status
 | |
| #
 | |
| # Dependencies:
 | |
| #   - Assumes there's a common.sh in ""${OPENIM_ROOT}"/scripts/install/" 
 | |
| #     containing shared functions and variables.
 | |
| #   - Relies on the script ""${OPENIM_ROOT}"/scripts/update-generated-docs.sh" 
 | |
| #     to generate the man pages.
 | |
| #
 | |
| # Notes:
 | |
| #   - This script must be run with appropriate permissions to modify the 
 | |
| #     system man directories.
 | |
| #   - Always ensure you're in the script's directory or provide the correct 
 | |
| #     path when executing.
 | |
| ################################################################################
 | |
| 
 | |
| # Define the root of the build/dist directory
 | |
| OPENIM_ROOT=$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)
 | |
| 
 | |
| # Ensure the common script is sourced
 | |
| [[ -z ${COMMON_SOURCED} ]] && source "${OPENIM_ROOT}/scripts/install/common.sh"
 | |
| 
 | |
| # Print usage information after installation
 | |
| function openim::man::info() {
 | |
| cat <<- EOF
 | |
| Usage:
 | |
|   man openim-server  # Display the man page for openim-server
 | |
| EOF
 | |
| }
 | |
| 
 | |
| # Install the man pages for openim
 | |
| function openim::man::install() {
 | |
|     # Navigate to the openim root directory
 | |
|     pushd "${OPENIM_ROOT}" > /dev/null
 | |
| 
 | |
|     # Generate man pages for each component
 | |
|     ""${OPENIM_ROOT}"/scripts/update-generated-docs.sh"
 | |
|     openim::common::sudo "cp docs/man/man1/* /usr/share/man/man1/"
 | |
|     
 | |
|     # Verify installation status
 | |
|     if openim::man::status; then
 | |
|         openim::log::info "Installed openim-server man page successfully"
 | |
|         openim::man::info
 | |
|     fi
 | |
| 
 | |
|     # Return to the original directory
 | |
|     popd > /dev/null
 | |
| }
 | |
| 
 | |
| # Uninstall the man pages for openim
 | |
| function openim::man::uninstall() {
 | |
|     # Turn off exit-on-error temporarily to handle non-existing files gracefully
 | |
|     set +o errexit
 | |
|     openim::common::sudo "rm -f /usr/share/man/man1/openim-*"
 | |
|     set -o errexit
 | |
|     
 | |
|     openim::log::info "Uninstalled openim man pages successfully"
 | |
| }
 | |
| 
 | |
| # Check the installation status of the man pages
 | |
| function openim::man::status() {
 | |
|     if ! ls /usr/share/man/man1/openim-* &> /dev/null; then
 | |
|         openim::log::error "OpenIM man files not found. Perhaps they were not installed correctly."
 | |
|         return 1
 | |
|     fi
 | |
|     return 0
 | |
| }
 | |
| 
 | |
| # Execute the appropriate function based on the given arguments
 | |
| if [[ "$*" =~ openim::man:: ]]; then
 | |
|     eval "$*"
 | |
| fi
 |