TMD总算顺利的将项目自动发布github中,这里分享下利用 wercker 自动部署到 github 时遇到的一系列问题。
wercker 配置
|
|
又麻利又大方地分享下我的设置:
box 是必须要的,并且要包含 git 环境,尝试了各种 box 最终挑选了 samueldebruyn/debian-git 满足要求。
__ysqi/git-push __
step 使用我自己的 git-push ,原来鼻祖的leipert/git-push 有问题,报错信息“getAllStepVars: command not found”1234source "/pipeline/git-push-36805875-502f-4737-a412-1b6f6880f7a4/run.sh" < /dev/null/pipeline/git-push-36805875-502f-4737-a412-1b6f6880f7a4/run.sh: line 5: getAllStepVars: command not foundusing github repo "ysqi.github.io"remote URL will be https://oauth-token@github.com/ysqi.github.io.git这鼻祖没法玩,硬是不合并别人的PR,没法办只能自己动手,我也Fork了一份好好先生的。你也可以用我的 git-push
$GIT_TOKEN 是在 github 添加 token 后将生成的token 保存在 wercker 环境变量中,主要不要直接写在配置文件中,防止泄漏。
先在 github 上生成 token:去设置
再在 wecrcker 上添加环境变量 GIT_TOKEN: 主要勾选 proteced 这样才能更严格的保护Token
$GIT_BRANCH
这是部署到哪个分支,这个容易处理,总算可以理解。我配置 master$GIT_REPO
妈蛋,这就这样玩意害死我了,刚开始以为已经是 token 访问我的github账户,认为不需要知道全路径。便配置成GIT_PEPO= ysq.github.io
这个导致 git-push 执行失败,也不知错误原因,反正就显示:123source "/pipeline/git-push-a588ef90-1dd5-49c6-ad00-dd51ae73ccfb/run.sh" < /dev/nullusing github repo "ysqi.github.io"remote URL will be https://oauth-token@github.com/ysqi.github.io.git咦!!! remote url 是错误的!! 缺用户名。应该是:
ysqi/ysqi.github.io
。我操,修改后问题解决。
成功 git-push !!!
|
|
上面就是我解决 wecrker 过程中的问题记录,感兴趣的话可以直接看我的源代码配置信息:围观。