之前自己的
已正常工作。
现在遇到特殊情况:
crifan.com DNS域名被污染:
【未解决】crifan.com的DNS域名被墙域名被污染域名被劫持
暂时决定,gitbook不去部署到自己的服务器了。
所以需要去更新
common/gitbook_makefile.mk
相关改动为:
# ENABLE_DEPLOY_SERVER = false # ENABLE_COMMIT_GITHUB_IO = false # ENABLE_UPDATE_GITHUB_IO_README = false # ENABLE_RSYNC_PROXY = false ENABLE_DEPLOY_SERVER = false ENABLE_COMMIT_GITHUB_IO = true ENABLE_UPDATE_GITHUB_IO_README = true ENABLE_RSYNC_PROXY = true ifeq ($(ENABLE_DEPLOY_SERVER), true) # if need upload/deploy, update content of these file DEPLOY_SERVER_PASSWORD_FILE=$(GITBOOK_ROOT_COMMON)/config/deploy/deploy_server_password.txt DEPLOY_IGNORE_FILE=$(GITBOOK_ROOT_COMMON)/config/deploy/deploy_ignore_book_list.txt endif ################################################################################ # Upload to server ################################################################################ SHOULD_IGNORE_DEPLOY_SERVER = false ifeq ($(ENABLE_DEPLOY_SERVER), true) SHOULD_IGNORE_DEPLOY_SERVER = true else # ifneq ("$(wildcard $(DEPLOY_IGNORE_FILE))", "") ifneq ($(wildcard $(DEPLOY_IGNORE_FILE)), ) # $(info $(DEPLOY_IGNORE_FILE) is exist, not empty) IGNORE_FILE_CONTENT := $(shell cat $(DEPLOY_IGNORE_FILE)) # IGNORE_FILE_CONTENT := $(file < $(DEPLOY_IGNORE_FILE)) FOUND_BOOK := $(findstring $(BOOK_NAME), $(IGNORE_FILE_CONTENT)) # $(info FOUND_BOOK=$(FOUND_BOOK)) # ifeq ("$(FOUND_BOOK)", "") ifeq ($(FOUND_BOOK), ) $(info NOT found $(BOOK_NAME) in IGNORE_FILE_CONTENT=$(IGNORE_FILE_CONTENT)) SHOULD_IGNORE_DEPLOY_SERVER = false else $(info IS found $(BOOK_NAME) in $(IGNORE_FILE_CONTENT)) SHOULD_IGNORE_DEPLOY_SERVER = true endif endif ## Upload all genereted website/pdf/epub/mobi files to remote server using rsync. Create deploy_server_info.mk and deploy_server_password.txt which contain deploy server IP+User+Path and Password before use this upload: all @echo ================================================================================ ifeq ($(SHOULD_IGNORE_DEPLOY_SERVER), true) @echo Ignore upload $(BOOK_NAME) to book.crifan.com else @echo Upload for $(BOOK_NAME) sshpass -f $(DEPLOY_SERVER_PASSWORD_FILE) rsync $(RSYNC_PARAMS) $(RELEASE_PATH) $(DEPLOY_SERVER_USER)@$(DEPLOY_SERVER_IP):$(DEPLOY_SERVER_PATH) endif
去调试
报错if不匹配。
改为:
。。。 ifeq ($(ENABLE_DEPLOY_SERVER), true) SHOULD_IGNORE_DEPLOY_SERVER = true else $(info SHOULD_IGNORE_DEPLOY_SERVER=$(SHOULD_IGNORE_DEPLOY_SERVER)) # ifneq ("$(wildcard $(DEPLOY_IGNORE_FILE))", "") ifneq ($(wildcard $(DEPLOY_IGNORE_FILE)), ) $(info $(DEPLOY_IGNORE_FILE) is exist, not empty) IGNORE_FILE_CONTENT := $(shell cat $(DEPLOY_IGNORE_FILE)) # IGNORE_FILE_CONTENT := $(file < $(DEPLOY_IGNORE_FILE)) FOUND_BOOK := $(findstring $(BOOK_NAME), $(IGNORE_FILE_CONTENT)) $(info FOUND_BOOK=$(FOUND_BOOK)) endif # ifeq ("$(FOUND_BOOK)", "") ifeq ($(FOUND_BOOK), ) $(info NOT found $(BOOK_NAME) in IGNORE_FILE_CONTENT=$(IGNORE_FILE_CONTENT)) SHOULD_IGNORE_DEPLOY_SERVER = false else $(info IS found $(BOOK_NAME) in $(IGNORE_FILE_CONTENT)) SHOULD_IGNORE_DEPLOY_SERVER = true endif endif
最后报错:
Upload for mobile_app_summary sshpass -f rsync -e "ssh -o 。。。 Conflicting password source sshpass: -e option given but SSHPASS environment variable not set Usage: sshpass [-f|-d|-p|-e] [-hV] command parameters -f filename Take password to use from file -d number Use number as file descriptor for getting password -p password Provide password as argument (security unwise) -e Password is passed as env-var "SSHPASS" With no parameters - password will be taken from stdin -P prompt Which string should sshpass search for to detect a password prompt -v Be verbose about what you're doing -h Show help (this screen) -V Print version information At most one of -f, -d, -p or -e should be used make: *** [upload] Error 1
看来是:没有ignore成功啊
【总结】
最后调整部分是:
common/gitbook_makefile.mk
################################################################################ # System Value ################################################################################ CURRENT_USER := $(shell whoami) $(info CURRENT_USER=$(CURRENT_USER)) ################################################################################ # Global Config ################################################################################ # ENABLE_DEPLOY_SERVER = false # ENABLE_COMMIT_GITHUB_IO = false # ENABLE_UPDATE_GITHUB_IO_README = false # ENABLE_RSYNC_PROXY = false ENABLE_DEPLOY_SERVER = true ENABLE_COMMIT_GITHUB_IO = true ENABLE_UPDATE_GITHUB_IO_README = true ENABLE_RSYNC_PROXY = true ifneq ($(RSYNC_PROXY), ) RSYNC_PARAMS = $(RSYNC_PROXY) -avzh --progress --stats --delete --force endif ### Upload to server ### ifeq ($(ENABLE_DEPLOY_SERVER), true) # if need upload/deploy, update content of these file DEPLOY_SERVER_PASSWORD_FILE=$(GITBOOK_ROOT_COMMON)/config/deploy/deploy_server_password.txt DEPLOY_IGNORE_FILE=$(GITBOOK_ROOT_COMMON)/config/deploy/deploy_ignore_book_list.txt endif COMMON_GITIGNORE_FILE=$(GITBOOK_ROOT_COMMON)/config/common/common_gitignore ifeq ($(ENABLE_DEPLOY_SERVER), true) # ifneq ("$(wildcard $(DEPLOY_IGNORE_FILE))", "") ifneq ($(wildcard $(DEPLOY_IGNORE_FILE)), ) $(info $(DEPLOY_IGNORE_FILE) is exist, not empty) IGNORE_FILE_CONTENT := $(shell cat $(DEPLOY_IGNORE_FILE)) # IGNORE_FILE_CONTENT := $(file < $(DEPLOY_IGNORE_FILE)) FOUND_BOOK := $(findstring $(BOOK_NAME), $(IGNORE_FILE_CONTENT)) $(info FOUND_BOOK=$(FOUND_BOOK)) endif ifeq ($(FOUND_BOOK), ) $(info NOT found $(BOOK_NAME) in IGNORE_FILE_CONTENT=$(IGNORE_FILE_CONTENT)) SHOULD_IGNORE_DEPLOY_SERVER = false else $(info IS found $(BOOK_NAME) in $(IGNORE_FILE_CONTENT)) SHOULD_IGNORE_DEPLOY_SERVER = true endif endif $(info ---Current Config---) $(info ENABLE_COMMIT_GITHUB_IO=$(ENABLE_COMMIT_GITHUB_IO)) $(info ENABLE_UPDATE_GITHUB_IO_README=$(ENABLE_UPDATE_GITHUB_IO_README)) $(info ENABLE_DEPLOY_SERVER=$(ENABLE_DEPLOY_SERVER)) $(info ENABLE_RSYNC_PROXY=$(ENABLE_RSYNC_PROXY)) $(info RSYNC_PROXY=$(RSYNC_PROXY)) $(info RSYNC_PARAMS=$(RSYNC_PARAMS)) ################################################################################ # Output current makefile info ################################################################################ Author=crifan.com Version=20210908 Function=Auto use gitbook to generated files: website/pdf/epub/mobi; upload to remote server; commit to your github.io repository RunHelp = Run 'make help' to see usage GitRepo = Latest version: https://github.com/crifan/gitbook_template ################################################################################ # Upload to server ################################################################################ ## Upload all genereted website/pdf/epub/mobi files to remote server using rsync. Create deploy_server_info.mk and deploy_server_password.txt which contain deploy server IP+User+Path and Password before use this upload: all @echo ================================================================================ ifeq ($(ENABLE_DEPLOY_SERVER), true) @echo Upload for $(BOOK_NAME) sshpass -f $(DEPLOY_SERVER_PASSWORD_FILE) rsync $(RSYNC_PARAMS) $(RELEASE_PATH) $(DEPLOY_SERVER_USER)@$(DEPLOY_SERVER_IP):$(DEPLOY_SERVER_PATH) else @echo Disabled deploy $(BOOK_NAME) to server $(DEPLOY_SERVER_IP) endif commit: all 。。。 cd $(CURRENT_DIR) && \ pwd && \ git remote -v
即可
最新版本详见:
可支持:
ENABLE_DEPLOY_SERVER = true
可以部署上传(当前的book的文件到)到你的服务器
ENABLE_DEPLOY_SERVER = false
则不部署上传服务器。
转载请注明:在路上 » 【已解决】gitbook的template更新:新增配置允许不部署到服务器book.crifan.com