yandod / candycane

a port of Redmine to CakePHP from Ruby on Rails
http://my.candycane.jp
511 stars 127 forks source link

CandyCane

CandyCane is a issue tracking system. The original implementation on which it is based, is Redmine

You can view a live demo of CandyCane, as well as the bug tracking for CandyCane here: http://my.candycane.jp/

Installation

  1. Extract all files, and place into a directory that is accessible to the web server, and able to run PHP.
  2. Setup correct permissions on files and folders:
    • chmod -R 777 app/Config
    • chmod -R 777 app/files
    • chmod -R 777 app/tmp
    • chmod -R 777 app/Plugin
  3. Access the site via your web server. If you installed into a subdirectory, then ensure that directory is in your URL: http://mysite.com/candycane
  4. The step-by-step installer will appear.
  5. Just use it!

Development setup

  1. Install Vagrant and VirtualBox.
  2. Install vagrant-berkshelf plugin. vagrant plugin install vagrant-berkshelf
  3. Download candycane box vagrant box add candycane {url}
  4. just type vagrant up
  5. ssh into vm vagrant ssh
  6. cd to app cd /vagrant_data/app
  7. run test ./Console/cake test app All
  8. run selenium test
vagrant ssh
cd /vagrant_data/
/usr/bin/Xvfb :1 -screen 0 1024x768x8 > /tmp/xvfb.log 2> /tmp/xvfb.error &
export DISPLAY=:1.0
java -jar /var/chef/cache/selenium-server-standalone-2.39.0.jar > /tmp/selenium.log 2> /tmp/selenium.error &
mysql -u root -e "drop database if exists test_candycane;create database test_candycane;"
./vendor/bin/phpunit app/Test/Case/Selenium/InstallerTest.php

Updating to latest version

You need to copy these file and directories into extracted latest codes. Currently we don't make database schema change.

Notes

Currently some features which are present in Redmine are not supported by CandyCane. These are:

CandyCane is using CakePHP v2.3.

Contributors

We will appreciate any pull requests.

I try to merge as much as possible. Please fork the repository if you find something you want to fix, and submit a pull request.