一个上线自动部署的小工具 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
segmentfault
V2EX    程序员

一个上线自动部署的小工具

  •  
  •   segmentfault
    SegmentFault 2015 年 3 月 31 日 6594 次点击
    这是一个创建于 4024 天前的主题,其中的信息可能已经有所发展或是发生改变。

    给大家开源一个我们的上线自动部署的机器人,GitHub 好帮手,分分钟搞定上线。

    项目地址: https://github.com/SegmentFault/deploy-robot

    特点

    • 与 GitHub 深度整合,利用 GitHub API 读取相关部署指令,并及时反馈部署情况
    • 与人工部署不同的是,自动部署不会疲劳,也不会喊累,你永远可以不停地折腾它

    使用方法

    执行以下命令安装

    npm install -g deploy-robot 

    使用以下命令启动脚本

    deploy-robot -c config.json 

    config.json 文件

    参考目录下的 config.json.sample 文件

    { "username": "", // 用户名 "password": "", // token,去 https://github.com/settings/applications 的 "Personal access tokens" 选项卡点击 "Generate new token",将获取的字符串填入这里 "repos": [ // 需要监听 repo 列表 { "user": "xxx", // repo 所属用户名 "name": "xxx", // repo 名 "labels": "xxx", // 指定 issue 的 label "command": "xxx", // 上线脚本的命令 "confirm": null // 上线是否需要某人的确认,默认为空 } ] } 

    提交上线请求

    deploy

    20 条回复    2015-04-01 18:29:09 +08:00
    qinkun1234
        1
    qinkun1234  
       2015 年 3 月 31 日
    这么好的东西 竟然没人回复
    WenJimmy
        2
    WenJimmy  
       2015 年 3 月 31 日
    收藏了
    segmentfault
        3
    segmentfault  
    OP
       2015 年 3 月 31 日
    @qinkun1234 大家都在忙着收藏
    fen
        4
    fen  
       2015 年 3 月 31 日
    无需在电脑边,用手机就可以处理上线操作了
    megoo
        5
    megoo  
       2015 年 3 月 31 日
    部署什么?
    megoo
        6
    megoo  
       2015 年 3 月 31 日
    kn007
        7
    kn007  
       2015 年 3 月 31 日
    好东西
    padthai
        8
    padthai  
       2015 年 3 月 31 日
    @qinkun1234

    知呼很多人扯淡nodejs不好

    其实什么都能干的
    kindlepaper
        9
    kindlepaper  
       2015 年 3 月 31 日 via iPhone
    楼主,这gif是什么做的啊
    RobberPhex
        10
    RobberPhex  
       2015 年 3 月 31 日
    说实话,用issue来作部署请求确实不太好,破坏了issue的语义。
    mcfog
        11
    mcfog  
       2015 年 3 月 31 日
    顶一下思路,棒棒的
    binarymann
        12
    binarymann  
       2015 年 3 月 31 日
    @kindlepaper 同问
    ipconfiger
        13
    ipconfiger  
       2015 年 3 月 31 日
    做个App来发起部署嘛
    iyaozhen
        14
    iyaozhen  
       2015 年 4 月 1 日
    @RobberPhex 赞同,我也觉得不妥。
    上线脚本都写好了,其它随便什么方式都可以部署吧。弄个微信公众号?看起来比这个更方便。
    9hills
        15
    9hills  
       2015 年 4 月 1 日 via iPad   1
    @RobberPhex 不算破坏。

    每次上线都是一个issue, 可跟踪可评论,相当好的创意。而且lz这个也支持指定的人review后才发起上线。
    f0rger
        16
    f0rger  
       2015 年 4 月 1 日
    这个挺好的,个人站点什么的可以随便部署。
    公司企业的站点,一般需要审批,不一定走github,很可能是内部的git源或者svn等。
    oppressed6370
        17
    oppressed6370  
       2015 年 4 月 1 日 via Android
    内部git svn用的多
    wh555s
        18
    wh555s  
       2015 年 4 月 1 日
    这必须顶~
    liubin
        19
    liubin  
       2015 年 4 月 1 日
    没看懂上线什么,貌似只有对issue的操作而已。
    所谓的上线,应该是把代码同步到线上环境吧。
    gamexg
        20
    gamexg  
       2015 年 4 月 1 日
    @liubin 配置文件里面有 "command": "xxx", // 上线脚本的命令。
    发现上线 issue 后会通过 ChildProcess.exec repo.command, (err, result, error) -> 执行命令并把嫁郭嘉到issus 里面。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     829 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 24ms UTC 21:58 PVG 05:58 LAX 14:58 JFK 17:58
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86