Dexter Server
Contents
You need to download 'dexter-server' file to install Dexter Server.
1. Installation
If you'd like to have your own Dexter Server, you have to follow the next instructions.
- OS : Windows 7+, LINUX, Mac OS X
System Estimation
~ 10 2.6 GHz * 1 4 GB 50 GB 10 ~ 50 2.6 GHz * 2 8 GB 200 GB 50 ~ 100 3.6 GHz * 2 32 GB 500 GB 100 ~ 200 3.8 GHz * 4 64 GB 1 TB UsersCPURAMHDDWhenever creating a snapshot of defect status, database size can be increased as amount of your source codes.
- If you don't use any snapshot, usually, database size can be as same as your source codes.
1.1 MySQL Installation
Dexter supports only MySQL Database.
Purpose It is used for the Dexter Data persistence (Defect Results Management) Version 5.6-7 Download http://www.mysql.com/downloads/
Install & Verify http://www.tutorialspoint.com/mysql/mysql-installation.htm Configure http://cameronyule.com/2008/07/configuring-mysql-to-use-utf-8/
The following codes must be added onto the (linux : my.cnf / windows: my.ini) file.
Your [my.cnf / my.ini] file[mysqld] default-character-set=utf8 default-collation=utf8_general_ci character-set-server=utf8 collation-server=utf8_general_ci init-connect='SET NAMES utf8' [client] default-character-set=utf8
Create Dexter Database You need to download ddl script file : 'dexter-db.sql' file using the mysql command line tool as follows.
Before using the following commands, you have to decide a Dexter database name, user name and a password that will be used at the NodeJS (Next Step).
("// <== " is for a comment)
MySQL Exampleroot@/usr/local/share# mysql -u root -p // <== run mysql command line tool Enter password: // <== enter your mysql password mysql> create database my_dexter_db; // <== choose any name for your product Query OK, 1 row affected (0.00 sec) mysql> use my_dexter_db; Database changed mysql> create user 'dexter-user' identified by 'mypassword'; // <== choose any password Query OK, 0 rows affected (0.01 sec) // if your mysql server and node js server is not same server, you have to add node js server IP with following command mysql> grant all on my_dexter_db.* to 'dexter-user'@'localhost' identified by 'mypassword'; Query OK, 0 rows affected (0.00 sec) mysql> source ./dexter-db.sql // <== select downloaded dexter-db.sql file location Query OK, 0 rows affected (0.00 sec) Query OK, 0 rows affected (0.00 sec) ... mysql> select * from Account; // <== test DB creatation +--------+--------+----------+---------+---------------------+---------------------+ | userNo | userId | userPwd | adminYn | createdDateTime | modifiedDateTime | +--------+--------+----------+---------+---------------------+---------------------+ | 1 | admin | dex#0001 | Y | 2014-08-10 19:27:23 | 0000-00-00 00:00:00 | | 2 | minho | 1111 | N | 2014-08-10 19:27:23 | 0000-00-00 00:00:00 | +--------+--------+----------+---------+---------------------+---------------------+ 2 rows in set (0.00 sec) // <== If you can see the upper Accounts info, your installation is done successfully mysql>
> The account information that is generated in the DB.
admin : It is a basic administrator account. (Use of this account is optional.)TaskDescription
1.2 NodeJS and Dexter Server Installation
NodeJS and Dexter Server Installation
Purpose To execute Dexter Server and mange Dexter Clients' requests and data persistence Version 4.4.0 Download http://www.nodejs.org/ System Variables The nodejs bin path must be set to PATH global environment variable Verify # node -v v4.4.0
Download Dexter Server You need to download the dexter-server zip(##########) file in GitHub, and then unzip it to any folder. or you can download the latest one here(github): 'project/server/dexter-server' folder TaskDescription
2. Configuration
- N/A
3. Run
To run Dexter Server, you need to type the following command in the Dexter-server folder.
RUN COMMANDroot@~> cd /usr/local/share/dexter-server_v#.#.# root@/usr/local/share/dexter-server_v#.#.#> node server.js -p=4982 -database.host=localhost -database.name=my_dexter_db -database.user=dexter-user -database.password=mypassword >> console.log & Dexter server listening on port 4982 // <== server started correctly DB Connection is fine : localhost:3306 // <== DB Connection is OK
-p=port_number : You can change the Dexter server port number. The port number is used to access the Dexter Server by Dexter Clients such as Dexter WEB or Dexter Eclipse.
-database.host=mysql_db_ip : Try using the IP address of the database server.
-database.naem=my_dexter_db : Enter the name of the Dexter database that is created by previous step.
- -database.user=db_user_id : The ID you entered for the Dexter database.
-database.password=db_user_password : The password you entered for the Dexter database.
- You can view the logs from "console.log" and "./log/dexter-server.log" files.
- Note : You have to delete this file by yourself, if the file size is too large.
You can manage the Dexter server with PM2. PM2 manages your applications states, so you can run processes consistently. Refer to the following steps to install PM2 and use it.
PM2 COMMANDroot@~> cd /usr/local/share/dexter-server_v#.#.# root@~> npm install pm2 root@/usr/local/share/dexter-server_v#.#.#> vim pm2-dexter-server.json //Please refer to the following sample : pm2 setting for running dexter server. root@/usr/local/share/dexter-server_v#.#.#> pm2 start pm2-dexter-server.json ┌───────────────────────┬────┬─────────┬───────┬─────────┬─────────┬────────┬─────────────┬──────────┐ │ App name │ id │ mode │ pid │ status │ restart │ uptime │ memory │ watching │ ├───────────────────────┼────┼─────────┼───────┼─────────┼─────────┼────────┼─────────────┼──────────┤ │ dexter-server │ 0 │ cluster │ 28402 │ online │ 0 │ 0s │ 45.016 MB │ disabled │ <== server started correctly └───────────────────────┴────┴─────────┴───────┴─────────┴─────────┴────────┴─────────────┴──────────┘
The following is PM2 setting sample file : pm2-dexter-server.json
pm2-dexter-server.json{ "apps":[{ "name":"dexter-server", "script":"server.js", "args":[ "-p=4982", "-database.host=localhost", "-database.name=my_dexter_db", "-database.user=dexter-user" , "-database.password=mypassword", "-server.name=dexter-server" ], "instances":1, "force":true }] }
4. Verify
- Open a web browser(IE is not supported), and then type the following URL: http://[dexter-server-ip]:[dexter-server-port]/defect
- Example : After typing http://localhost:4982/defect in the URL address box, you can see the site as follows.
5. Eclipse Update Site
- If you want have your own Eclipse Update Site, download the following zip files.
- Then unzip those files in your Web Server
- Developers can install or update Dexter Eclipse Plug-ins through the following URL
- for 32 bit : http://your-web-server-ip:port/32
- for 64 bit : http://your-web-server-ip:port/64