@@ -183,43 +183,57 @@ update-homebrew:
183183 @cd tmp/$(HOMEBREW_TAP_REPO) && echo " - 创建新分支: $(BRANCH_NAME)" && git checkout -b $(BRANCH_NAME)
184184
185185 @echo "==> 更新 cask 文件..."
186- @cd tmp/$(HOMEBREW_TAP_REPO) && \
187- X86_64_SHA256=$$(shasum -a 256 ../$(APP_NAME)-x86_64.dmg | cut -d ' ' -f 1) && \
188- ARM64_SHA256=$$(shasum -a 256 ../$(APP_NAME)-arm64.dmg | cut -d ' ' -f 1) && \
186+ @X86_64_SHA256=$$(shasum -a 256 tmp/$(APP_NAME)-x86_64.dmg | cut -d ' ' -f 1) && \
187+ ARM64_SHA256=$$(shasum -a 256 tmp/$(APP_NAME)-arm64.dmg | cut -d ' ' -f 1) && \
188+ echo "==> 再次确认SHA256: x86_64=$$X86_64_SHA256, arm64=$$ARM64_SHA256" && \
189+ cd tmp/$(HOMEBREW_TAP_REPO) && \
190+ echo "==> 当前目录: $$(pwd)" && \
191+ echo "==> CASK_FILE路径: $(CASK_FILE)" && \
189192 if [ -f $(CASK_FILE) ]; then \
190- echo " - 使用 sed 更新现有的 cask 文件..."; \
193+ echo " - 发现现有cask文件,使用sed更新..."; \
194+ echo " - cask文件内容 (更新前):"; \
195+ cat $(CASK_FILE); \
191196 sed -i '' "s/version \\\".*\\\"/version \\\"$(CLEAN_VERSION)\\\"/g" $(CASK_FILE); \
197+ echo " - 更新版本后的cask文件:"; \
198+ cat $(CASK_FILE); \
192199 if grep -q "Hardware::CPU.arm" $(CASK_FILE); then \
200+ echo " - 更新ARM架构SHA256..."; \
193201 sed -i '' "/if Hardware::CPU.arm/,/else/ s/sha256 \\\".*\\\"/sha256 \\\"$$ARM64_SHA256\\\"/g" $(CASK_FILE); \
202+ echo " - 更新Intel架构SHA256..."; \
194203 sed -i '' "/else/,/end/ s/sha256 \\\".*\\\"/sha256 \\\"$$X86_64_SHA256\\\"/g" $(CASK_FILE); \
204+ echo " - 更新ARM下载URL..."; \
195205 sed -i '' "s|url \\\".*v# {version}/.*-ARM64.dmg\\\"|url \\\"https://github.com/samzong/$(APP_NAME)/releases/download/v#{version}/$(APP_NAME)-arm64.dmg\\\"|g" $(CASK_FILE); \
206+ echo " - 更新Intel下载URL..."; \
196207 sed -i '' "s|url \\\".*v#{version}/.*-Intel.dmg\\\"|url \\\"https://github.com/samzong/$(APP_NAME)/releases/download/v#{version}/$(APP_NAME)-x86_64.dmg\\\"|g" $(CASK_FILE); \
208+ echo " - 最终cask文件内容:"; \
209+ cat $(CASK_FILE); \
197210 else \
198211 echo "❌ 未知的 cask 格式,无法更新 SHA256 值"; \
199212 exit 1; \
200213 fi; \
201214 else \
202- echo " - 创建新的 cask 文件 ..."; \
215+ echo " - 未找到cask文件,创建新文件 ..."; \
203216 mkdir -p $$(dirname $(CASK_FILE)); \
204- cat > $(CASK_FILE) << EOF \
205- cask "configforge" do \
206- version "$(CLEAN_VERSION)" \
207- \
208- if Hardware::CPU.arm? \
209- url "https://github.com/samzong/$(APP_NAME)/releases/download/v#{version}/$(APP_NAME)-arm64.dmg" \
210- sha256 "$$ARM64_SHA256" \
211- else \
212- url "https://github.com/samzong/$(APP_NAME)/releases/download/v#{version}/$(APP_NAME)-x86_64.dmg" \
213- sha256 "$$X86_64_SHA256" \
214- end \
215- \
216- name "$(APP_NAME)" \
217- desc "配置文件管理工具" \
218- homepage "https://github.com/samzong/$(APP_NAME)" \
219- \
220- app "$(APP_NAME).app" \
221- end \
222- EOF \
217+ echo " - 使用文本方式创建cask文件..."; \
218+ echo 'cask "configforge" do' > $(CASK_FILE); \
219+ echo ' version "$(CLEAN_VERSION)"' >> $(CASK_FILE); \
220+ echo '' >> $(CASK_FILE); \
221+ echo ' if Hardware::CPU.arm?' >> $(CASK_FILE); \
222+ echo ' url "https://github.com/samzong/$(APP_NAME)/releases/download/v#{version}/$(APP_NAME)-arm64.dmg"' >> $(CASK_FILE); \
223+ echo ' sha256 "'$$ARM64_SHA256'"' >> $(CASK_FILE); \
224+ echo ' else' >> $(CASK_FILE); \
225+ echo ' url "https://github.com/samzong/$(APP_NAME)/releases/download/v#{version}/$(APP_NAME)-x86_64.dmg"' >> $(CASK_FILE); \
226+ echo ' sha256 "'$$X86_64_SHA256'"' >> $(CASK_FILE); \
227+ echo ' end' >> $(CASK_FILE); \
228+ echo '' >> $(CASK_FILE); \
229+ echo ' name "$(APP_NAME)"' >> $(CASK_FILE); \
230+ echo ' desc "配置文件管理工具"' >> $(CASK_FILE); \
231+ echo ' homepage "https://github.com/samzong/$(APP_NAME)"' >> $(CASK_FILE); \
232+ echo '' >> $(CASK_FILE); \
233+ echo ' app "$(APP_NAME).app"' >> $(CASK_FILE); \
234+ echo 'end' >> $(CASK_FILE); \
235+ echo " - 检查创建的cask文件:"; \
236+ cat $(CASK_FILE) || echo "❌ 无法读取cask文件"; \
223237 fi
224238
225239 @echo "==> 检查更改..."
@@ -231,8 +245,10 @@ EOF \
231245 git config user.email "actions@github.com"; \
232246 git commit -m "chore: update $(APP_NAME) to v$(CLEAN_VERSION)"; \
233247 git push -u origin $(BRANCH_NAME); \
248+ echo " - 准备创建PR数据..."; \
234249 pr_data=$$(printf '{\"title\":\"chore: update %s to v%s\",\"body\":\"Auto-generated PR\\\\n- Version: %s\\\\n- x86_64 SHA256: %s\\\\n- arm64 SHA256: %s\",\"head\":\"%s\",\"base\":\"main\"}' \
235250 "$(APP_NAME)" "$(CLEAN_VERSION)" "$(CLEAN_VERSION)" "$$X86_64_SHA256" "$$ARM64_SHA256" "$(BRANCH_NAME)"); \
251+ echo " - PR数据: $$pr_data"; \
236252 curl -X POST \
237253 -H "Authorization: token $(GH_PAT)" \
238254 -H "Content-Type: application/json" \
0 commit comments