存档

‘程序开发’ 分类的存档

【Jenkins】推荐插件

2017年4月23日 (1 hour ago) 没有评论

在完成了Github Pull Request提交时自动做PHPCS检查和修复的基本搭建之后,发现Jenkins是个神奇的世界。基本上常规能想到的都已经有插件或配置能解决了,十分好用。

  1. Build Failure Analyzer 分析构建错误日志并在构建页面显示错误
  2. Pre SCM BuildStep Plugin 在拉代码之前插入一些步骤
  3. SSH plugin 支持通过SSH执行脚本
  4. GitHub Pull Request Builder Github Pull Request时自动构建
  5. GitHub API Plugin Github API插件
  6. GitHub plugin Github与Jenkins集成
  7. GIT plugin Git与Jenkins集成
  8. GIT client plugin Git客户端插件

阅读全文...

分类: 程序开发 标签: 2次阅读

【Shell】Linux和Mac下脚本参数的解析

2017年4月23日 (12 hours ago) 没有评论

写脚本增加参数解析是常见需求,但发现脚本在Linux上运行好好的,跑到Mac上就不正常了,调试后发现是getopt命令在Mac上定义不一致导致的。

差异是:

  • getopt命令在linux上遵循的是gnu-getopt;getopt --test命令响应为4,与mac上不同
  • mac上遵循的是mac的getopt

解决办法:

阅读全文...

分类: 程序开发 标签: 9次阅读

【PHPStorm】Windows下error: cannot spawn .git/hooks/pre-commit: no such file or directory报错的解决办法

2017年4月20日 没有评论

Windows的PHPStorm部署了pre-commit后,提交代码提示“cannot spawn .git/hooks/pre-commit: no such file or directory”,几经搜索无果,最终灵光一闪自己解决了。记录一下。

解决方案:

  1. 安装CygwinGit,并将Cygwin和Git安装目录里的bin目录添加到Windows的PATH系统变量里,这样bash和git就可以全局访问了
  2. 确认pre-commit第一行为 #!/bin/bash
  3. 执行cat pre-commit | tr -d '\r' > pre-commit,删除windows下自动添加的\r换行符

阅读全文...

分类: 程序开发 标签: 28次阅读

【Jenkins】忽略”Can one of the admins verify this patch?”的解决办法

2017年4月18日 没有评论

刚搭建完Jenkins系统做PR检查,上线后发现每个新团队成员的PR都会出现Can one of the admins verify this patch?感觉很骚扰,没有必要。官方的GitHub pull request builder插件说明,只说了通过加whitelist来处理,却没有说怎么彻底关掉这个提示。

经过大量的搜索,终于在JENKINS FOR PULL REQUESTS AND PROMOTED BUILDS DEPLOYING TO MULTIPLE ENVIRONMENTS这篇的提示下找到了答案

阅读全文...

分类: 程序开发 标签: 45次阅读

【Jenkins】集成PHPCS校验脚本

2017年4月16日 没有评论

脚本如下

#!/bin/bash

CMD_PATH=`dirname "$0"`
LOG_DIR=${CMD_PATH}/log/
if [ ! -d ${LOG_DIR} ];then
    mkdir -p ${LOG_DIR}
fi

LOG_FILE=${LOG_DIR}/$(date +%Y%m%d).log
${CMD_PATH}/phpcs-check | tee -a ${LOG_FILE}
STATUS=${PIPESTATUS[0]}
echo "Code check status: " ${STATUS}
exit ${STATUS}

阅读全文...

分类: 程序开发 标签: 49次阅读

【Jenkins】Github Pull Request提交时自动做PHPCS检查和修复

2017年4月16日 没有评论

代码规范的推进需要借助PHPCS来做自动化的校验和修复,而落地时需要结合Github Pull Request做提交时的自动检查。这里面就需要借助到了系统集成工具Jenkins,亲自做了一遍完整部署供大家参考。

Jenkins安装

  1. 安装java环境
  2. 下载Jenkins:执行 wget http://mirrors.jenkins-ci.org/war/latest/jenkins.war
  3. 运行Jenkins:执行java -jar jenkins.war,后台方式运行执行nohup java -jar jenkins.war &。启动后war包会解压到~/.jenkins目录并生成配置文件和目录
  4. 网页打开http://localhost:8080/进行后续配置,非本地访问可采用IP或域名

阅读全文...

分类: 程序开发, 酷软搜索 标签: 51次阅读

【PHP】代码质量检查工具PHPMD

2017年3月26日 没有评论

除了PHPCS外,再给大家推荐一个代码质量检查工具PHPMD。

项目官网:https://phpmd.org

用法

# phpmd 代码路径 报告格式 规则xml文件
phpmd /path/to/source text /phpmd_ruleset.xml
# phpmd 代码路径 报告格式 规则列表
phpmd /path/to/source text codesize,unusedcode,naming

阅读全文...

分类: 程序开发 标签: 124次阅读

【PHP】代码规范检查工具PHPCS

2017年3月19日 没有评论

PHP代码规范有PSRs,为了能做到代码规范的自动化检查和修复,就需要用到PHPCS了。

项目官网:https://github.com/squizlabs/PHP_CodeSniffer

PHPCS安装

curl -OL https://squizlabs.github.io/PHP_CodeSniffer/phpcs.phar
php phpcs.phar -h
curl -OL https://squizlabs.github.io/PHP_CodeSniffer/phpcbf.phar
php phpcbf.phar -h
// 也许需要 sudo
mv phpcs.phar /usr/bin/phpcs
mv phpcbf.phar /usr/bin/phpcbf
chmod +x /usr/bin/phpcs
chmod +x /usr/bin/phpcbf

阅读全文...

分类: 程序开发 标签: 218次阅读

【Dev】不修改代码前提下给系统扩展功能的解决方案

2017年3月5日 没有评论

Java写的OA系统希望增加一个邮件提醒功能,但奈何OA系统是买的第三方的没有源码,反编译来搞就比较费力了。于是使出奇招——用外部脚本监控数据库变化来发邮件。

解决方案是使用ThinkPHP5的命令行模式写脚本监控数据库变化,从而负责发送邮件(当然这里是要需要记录发送状态的以防止不断重发);完成后增加bat文件去执行这个脚本,再使用计划任务把bat设置成每分钟执行1次

阅读全文...

分类: 程序开发 标签: 237次阅读

【ThinkPHP5】Console命令行执行计划任务

2017年3月5日 没有评论

ThinkPHP 5引入了命令行模式,试了一下确实还是不错的,坑是官方文档写得实在太简单了,来总结一下。

1、首先你得去下载一个完整版的ThinkPHP 5,解压到你希望的位置

2、新建脚本入口文件application\home\command\Hello.php

namespace app\home\command;  
  
use think\console\Command;  
use think\console\Input;  
use think\console\Output;  
  
class Hello extends Command  
{  
    protected function configure()  
    {  
        // 这里的hello就是命令行think后面的参数
        $this->setName('hello')->setDescription('Command say hello');  
    }  
  
    protected function execute(Input $input, Output $output)  
    {  
        $output->writeln("Hello, world!");  
    }  
}

阅读全文...

分类: 程序开发 标签: , 278次阅读

无觅相关文章插件,快速提升流量