FW: Squid rebuild with https support

代理的重要性越来越强, 尤其是现在… 今早发现google又不能用了… 悲剧 无奈之下 又重新想起了squid, 之前vps上默认配置的不支持https, 只能rebuild 不过还是费了一番周折的, 这里有一篇文章可以参考下: http://www.howtoforge.com/how-to-rebuild-the-squid-2.6-debian-package-with-support-for-x-forwarded-for-headers

Categories Uncategorized

How to Write a Simple UnitTest Framework

很多时候, 我们需要UnitTest帮助我们快速的发现代码修改中引发的问题, UnitTest的意义以及重要性已经无需重复, 那么在实际项目中, 我们会选取合适的UnitTest Framework帮助我们完成这项工作, 然而UnitTest Framework也有很多种, 挑选的时候大多根据项目需要, 不过大家是否有冲动自己写一个那? 来一探UnitTest Framework的究竟(本文将实现一个C语言的UnitTest Framework 代码放置在https://github.com/finaldie/final_libs的ftu中). 原理: UnitTest Framework通常帮助我们完成以下几种功能: 1. 提供常用assert API 2. 注册执行test case 3. 生成report 关于断言, 我们通常使用几种形式的断言, 比如: 1. 某个值是否于期望值相等 2. 某个值是否大于期望值 3. 某个值是否小于期望值 所以, 如果我们自己来写一个, 只需要提供基本的assert API, 注册和执行的API即可(最后的报告放在run API内部即可). WorkFlow: 实现:   原理清楚了, 实现起来就很容易了. 首先我们先来提供几个基本的assert API: extern int curr_failed_assert; extern int curr_total_assert; #define FTU_ASSERT_EQUAL_CHAR(expect, real) \ … Read more

How to Make a AutoBuild System with Git Server

今天给大家分享一下最近自己的成果, 折腾了一个autobuild系统, 如果您和我有同样的需求, 不妨跟随我一起搭建一个这样的系统, easy and simple, have fun :) Why:   事情是这样开始的, 我自己的项目放置在github上, 这是一个linux项目, 然而我所用来开发的机器是mac, 它不能用来编译所有的模块, 每次我都需要push提交之后, 再去server上pull下来, 然后编译看看结果, 这个过程我持续了一阵子之后再也忍受不了了, 我想要一个这样的系统: 1. 当我push提交之后, 他能实时的反馈给我编译的结果, 就像本地编译一样 2. 运行test unit, 并将结果实时反馈给我 3. 随后发送一封邮件到我的邮箱内, 包含编译结果以及test unit运行结果 4. 而这次的提交仅仅是为了测试集成的效果, 而不影响真正的版本库主干 How:   目的明确后, 我想到了git hook, 这里面的hook有一个可以满足我的需求– post-receive, 这是一个server端的hook(shell脚本), 每当接收到applypatch后都会调用一次并将输出结果反馈给client, 接下来我们将开始利用这个hook搭建这套系统. 首先我们来看一下工作流程(如下图): 图1 WorkFlow 简单的描述一下这个流程, 相对还算清晰简洁, 找一台可以用作build的机器, 建立一个git bare repo 用于接受提交, a clone repo for … Read more