Archive for May, 2012

How to install ReviewBoard on RHEL 5

Installing Python Setuptools
# yum install python-setuptools
# easy_install -U setuptools

Installing Python Develoopment Headers
# yum install python-devel

Installing memcached
# rpm -Uvh
# yum install memcached
# easy_install python-memcached

Installing Patch
# yum install patch

Installing Review Board
# easy_install ReviewBoard
Wait until you see the message "Finished processing dependencies for ReviewBoard".

Installing Database Bindings
# yum install MySQL-python
# easy_install mysql-python

Installing Source Control Components
# yum install cvs
# yum install git-core
# yum install subversion
# yum install pysvn

# easy_install mercurial

# easy_install P4PythonInstaller

Installing Amazon S3 Support
# easy_install django-storages

Installing Development Tools
# easy_install nose Sphinx

Creating Database
# mysql -uroot -h127.0.0.1 -P3306 -p
> create database reviewboard;
> GRANT ALL PRIVILEGES ON reviewboard.* TO 'reviewboard'@'' identified by 'reviewboard';
> GRANT ALL PRIVILEGES ON reviewboard.* TO 'reviewboard'@'' identified by 'reviewboard';

Creating a Review Board Site
# rb-site install /var/www/reviewboard

- Domain Name:
- Root Path [/]: /reviews/
- Media URL [media/]: media/
- Database Type: mysql
- Database Name [reviewboard]: reviewboard
- Database Server [localhost]:
- Database Username: reviewboard
- Database Password: reviewboard
- Cache Type: memcached
- Memcache Server [memcached://localhost:11211/]: memcached://localhost:11211/
- Web Server: apache
- Python Loader: wsgi
- Username [admin]: admin
- Password: admin
- E-Mail Address:

Then you will see:
* The site has been installed

The site has been installed in /var/www/reviewboard

Sample configuration files for web servers and cron are available
in the conf/ directory.

You need to modify the ownership of the following directories and
their contents to be owned by the web server:
* /var/www/reviewboard/htdocs/media/uploaded
* /var/www/reviewboard/data

For more information, visit:

Configuring Apache
# yum install mod_wsgi
# chown -R apache:apache /var/www/reviewboard/
# cp /var/www/reviewboard/conf/apache-wsgi.conf /etc/httpd/conf.d/

# vim /etc/httpd/conf/httpd.conf
Add the follow item:
LoadModule wsgi_module modules/

# vim /etc/httpd/conf.d/apache-wsgi.conf
Change the port into 8080:
<VirtualHost *:8080>

# /etc/init.d/httpd restart

Now you can access


How to make Jenkins supports SMTP TLS on port 587

Jenkins supports the standard SMTP on port 25 and SSL (for Gmail, the port is 495). But looks like it doesn't support the TLS encrypted way on port 587.

I searched a lot on Google, especially the Jenkins forums, but got nothing. Then I found something about Java, looks like JVM also doesn't support TLS by default, but we can add a parameter Dmail.smtp.starttls.enable="true" to enable it.
Because Jenkins uses JVM, so I thought maybe this was the root cause.

So I added the parameter Dmail.smtp.starttls.enable="true" into the option "JENKINS_JAVA_OPTIONS" of /etc/sysconfig/jenkins.

After this, restart Jenkins.
# /etc/init.d/jenkins restart

Then configure it again, cancel the "Use SSL", choose the "Test configuration by sending test e-mail" to test.

, ,


How to fix the issue about the failure of Microsoft Exchange Server Autodiscover

Actually it's very easy.

1. Do a simple test for autodiscover on this page:
Chose "Office365" - "Microsoft Exchange ActiveSync Connectivity Tests" - "Exchange ActiveSync Autodiscover" - "Next"
Input "E-mail address", "Microsoft Online logon ID"(Same as E-mail address) and "Password" - "Perform Test"

2. Then you can see the details of the failure in the steps.

3. Mostly they're caused by a CNAME issue, if so, just create a CNAME (if your email domain is, then point it to

4. Test again, it should be OK if the CNAME works.

5. BTW, if you have a own Exchange server and not use Office365, you should point the CNAME to your own Exchange server's address.

, ,

No Comments

Fork me on GitHub