1. Introduction
1.1 About ZenTao
1.2 Introduction PDF
1.3 Technical Support
1.4 Follow Us
2. Installation
2.1 Choose the Right Installation
2.2 ZenTao Cloud
2.3 One-click Installation for Windows
2.4 One-click Installation for Linux
2.5 Lampp Installation in Linux
2.6 Source Code Installation (for all systems)
2.7 Source Code Installation for macOS
2.8 XAMPP-VM Installation for macOS
2.9 XAMPP Installation for macOS
2.10 Install ZenTao in Docker
2.11 Install httpd, Mariadb, PHP 7.2 in Cent OS 8
2.12 Softaculous Service
2.13 Install Ioncube
3. Update
3.1 Update ZenTao
3.2 Update Via Source Code (For All Systems)
3.3 Update for One-Click Installation for Windows (xampp)
3.4 Update for One-Click Installation for Linux
4. Users and Groups
4.1 Company Structure
4.2 Add a User
4.3 Manage Users in batches
4.4 Groups and Privileges
5. Quick Start
5.1 Project and Task Management
5.2 Bug Tracking
5.3 Product Management
5.4 Todo Management
6. Basic Application
6.1 Basic Workflow
6.2 Agile and Scrum
6.3 ZenTao and Scrum
6.4 ZenTao Tutorial for Rookies
6.5 Create a Product
6.6 Create a Story
6.7 Create a Project
6.8 Confirm a Story
6.9 Decompose Stories into Tasks
6.10 Report a Bug
6.11 Manage Contacts
6.12 Customization
6.13 Import Excel, CSV Files
6.14 Document Management
6.15 Work Mode
6.16 Points
6.17 Required Field
6.18 Privileges
6.19 Annual Work Summary
7. Advanced Application
7.1. Workflow
7.1.1 ZenTao Workflow
7.2. Individual management
7.2.1 My Todo
7.2.2 My Task, Story and Bug
7.2.3 My Profile
7.3. Product Owner
7.3.1 Manage a Product
7.3.2 Manage a Product Line
7.3.3 Create and Review a Story
7.3.4 Change and Review a Story
7.3.5 Status and Phase
7.3.6 Story Writing
7.3.7 Product Module
7.3.8 Release Plan
7.3.9 Create a Release
7.3.10 Roadmap
7.3.11 Documents
7.3.12 Planning Meetings
7.3.13 Daily Scrum, Review and Retrospective Meetings
7.3.14 Story Reports
7.4. Scrum Master
7.4.1 Create a Sprint
7.4.2 Set a Team
7.4.3 Confirm a Story
7.4.4 Task Breakdown
7.4.5 Daily Standup Meetings
7.4.6 Check Project Progress via Burndown Chart
7.4.7 Check Project Progress via Lists
7.4.8 Review and Retrospective Meetings
7.4.9 Basic reports on tasks
7.5. Development Team
7.5.1 Project planning meeting and task breakdown
7.5.2 Claim tasks and update efforts
7.5.3 Kanban and Tree Diagram
7.5.4 Build
7.5.5 Test Request
7.5.6 Resolve a Bug
7.5.7 Documents
7.5.8 Confirm Bugs
7.6. Test Team
7.6.1 Bug Tracking
7.6.2 Report a Bug
7.6.3 Verify and Close a Bug
7.6.4 Activate a Bug
7.6.5 Find a Bug
7.6.6 Test Case
7.6.7 Create and Review Test Cases
7.6.8 Test Suites, Public Case Libs and Reports
7.6.9 Manage Test Requests
7.6.10 Run Cases and Report Bugs
7.6.11 Reports
8. Configuration
8.1. Maintain ZenTao
8.1.1 Initialize scripts
8.1.2 Data Backup
8.1.3 Recover the Deleted
8.1.4 Update Burndown Charts
8.1.5 ZenTao Remote Host
8.2. Deploy ZenTao
8.2.1 Guest Login
8.2.2 Email Notification
8.2.3 Set Super Admin
8.2.4 Static Access
8.2.5 Remove "zentao" from URL
8.2.6 Integrate SVN
8.2.7 Integrate Git
8.2.8 Integrate Webhook
8.2.9 Integrate Xuan.im
8.2.10 Integrate Zdoo
8.2.11 Integrate Third-Party Apps
8.2.12 Password-Free Login
8.2.13 Translation Add-on
8.2.14 Integrate Jenkins
8.2.15 Extension
8.2.16 Fix Weak Password
9. Customization
9.1 Introduction
9.2 Directory
9.3 Find Codes
9.4 Database Structure
9.5 Common Modules
9.6 Add Features to Menu
9.7 Set Privileges to Modules
9.8 Examples: modify language prompt
9.9 Examples: set priority when creating bugs
9.10 Extension Editor
9.11 Feature Limitation
9.12 ZenTao Packaging Standards 1.1
10. Misc
10.1 About Third-Party Code
10.2 Support ZenTao
10.3 ZenTao Service
10.4 Acknowledgement

ZenTao Packaging Standards 1.1

2015-09-14 15:07:15
Last edited by Taotao on 2020-03-19 16:58:18
Share links

In the process of customization, features coded by you can be packaged as extensions to ZenTao. The followings are the packaging standards for ZenTao.

1. Extension file structure

bin: newly added scripts, etc;
config: modifying configuration files, etc;
db: install.sql and uninstall.sqldbcan be saved in this directory, these two SQL scripts are to install and uninstall the extension;
doc: documents related to your extension;
lib: add a new class or modify the existing class in this directory;
module: add a new module or extend existing modules in this directory;
www: add your style files or modify js file in this directory

2. Files in the directory of doc

Configuration files of the extension should be included in the directory of doc and it saved by languages. For example, the English language files is saved as en.yaml and the Chinese language file as zh-cn.yaml. The configuration files of extensions are in the format of  yaml, which include the basic information about the extensions and the release information about the previous builds.

3. Files included in the directory of db

install.sql and uninstall.sql are included in the directory of db. install.sql is the script executed when you install the extension and uninstall.sql is executed when you uninstall it. If your extensions involve changes to the database, save SQL scripts in these two files and ZenTao extension program will automatically execute it.

4. Files included in the directory of module

Deploy the files in the directory of module according to extension mechanism.

5. Extension of the master configuration files

If you have to extend the configuration files globally, put the extended configuration files to zentao/config/ext/.

6. Install and delete hook scripts

If you have to do some executions before and after the installation and the uninstalling, create a directory for hook, then create preinstall.php, postinstall.php, preuninstall.php and postuninstall.php.

7. Summary

Steps to create an extension.

1. Choose the name for you extensions, such as hello;

2. Create a directory for hello;
3. Create the directory of doc hello;
4. Create the configuration file of yaml in doc;

5. If any changes to the database, you should create a directory of db in hello, and create install.sql and uninstall.sql in it. 

6. If you use hook scripts, create a directory of hook, and create preinstall.php, postinstall.php, preuninstall.php and postuninstall.php in it. 

7. Then deploy the code of hello. Create a directory of module in hello, and then save codes to it.

8. Pack and zip the entire directory of hello into hello.zip. Done=)

8. Examples

Please check an example of ZenTao extension //www.zentao.net/extension-viewExt-1.html.
Write a Comment
Comment will be posted after it is reviewed.