nci/TODO.md

97 lines
4.1 KiB
Markdown
Raw Normal View History

2014-05-09 16:48:53 +00:00
# nci
nci - Continuous integration server written in node.js
work in progress...
2014-12-02 21:34:59 +00:00
2015-12-10 18:59:59 +00:00
[![Build Status](https://travis-ci.org/node-ci/nci.svg?branch=master)](https://travis-ci.org/node-ci/nci)
2016-01-31 17:58:34 +00:00
## TODO for public release
2015-05-09 15:32:23 +00:00
2015-08-13 18:31:06 +00:00
* ~~Dashboard (builds list, projects autocomlete)~~
* ~~Build page (build info(dates, changes, etc), console)~~
* ~~Awesome build output (very close to terminal)~~
* ~~Url for trigger build run~~
2015-06-17 20:14:52 +00:00
* ~~YAML project and server(executors count, etc) configs~~
* ~~Persistent build and console output information~~
* ~~Project relations (blocks, triggers, etc)~~
2015-06-28 14:47:34 +00:00
* ~~Writes to stderr must not break the build~~
2015-12-13 16:13:59 +00:00
* ~~Mail and jabber notifications~~
* ~~Rename notification strategies according to statuses~~
2015-08-20 20:24:26 +00:00
* ~~Work with git~~
2015-06-28 10:23:34 +00:00
* ~~Build every commit, commit with tag, etc~~
2015-06-29 18:57:34 +00:00
* ~~Safe id and build numbers generation~~
2015-07-12 08:39:22 +00:00
* ~~Scheduler~~
2015-06-17 20:14:52 +00:00
* ~~Better tests coverage~~
2015-07-28 17:29:38 +00:00
* ~~Compile client for production~~
2016-01-31 17:58:34 +00:00
* ~~Semantic versioning and plugins~~
* ~~Complete uncompleted builds on server start~~
* ~~Throw away workspace changes on repository update~~
2014-12-02 21:34:59 +00:00
2015-12-08 12:21:00 +00:00
## Bugs/upcoming fixes
2015-12-10 18:59:59 +00:00
* ~~git checkout before reset~~
2015-12-03 19:51:56 +00:00
* slow move out from build page (with lot of output) to main page - several sec
2015-12-27 19:39:49 +00:00
at ff (ff very slow on remove/replace terminal element)
2015-12-13 16:13:59 +00:00
* ~~when long line appear console output row numbers not on the same line with
content~~
2015-12-22 19:13:38 +00:00
* ~~some "undefined" comments in scm changes~~
2015-12-08 12:21:00 +00:00
* projects list scroll
2015-12-13 16:13:59 +00:00
* ~~Error during send: TypeError: Cannot read property 'changes' of undefined~~
2015-12-16 20:52:25 +00:00
* ~~Builds loss~~
* ~~error on git after change branch: fatal: ambiguous argument '18a8ea4..branch':
unknown revision or path not in the working tree.~~
2015-12-17 19:38:09 +00:00
* "Uncaught TypeError: Cannot read property 'name' of undefined" at item.js (jade)
2015-12-22 19:13:38 +00:00
* strange git with merge commits changes detection, e.g. whem update from
"0.3.7" commit to master "new build timeline style, sime layout fixes" and
"add some responsive styles to build timeline, revert in-progress pulsate
animation" appear but should not.
2015-12-24 19:32:25 +00:00
* include fonts and other external static (if any)
2015-12-27 19:39:49 +00:00
* build console doesn't stick to the bottom at ff
2016-01-01 19:12:42 +00:00
* ~~more strict server and project configs valifation~~
* ui browser tests needed
* use one from: jquery or native browser methods
* cleanup project steps (remove cwd, options) inside build by migration
2016-01-10 21:44:04 +00:00
* bad mercurial tags inside scm.rev.tags
2015-12-08 12:21:00 +00:00
## Feature requests
* ~~should write at the end of build console out that build is done (or error)~~
2015-12-08 19:09:46 +00:00
* ~~share workspace files at static~~
2015-12-08 12:21:00 +00:00
* "clear workspace" button
2015-12-17 20:22:14 +00:00
* ~~show more builds button (or infinity scroll) on start page~~
2015-12-09 05:58:33 +00:00
* ~~hide console output by default (when go on completed build page you scroll
down to the output which could be very long)~~
2016-01-31 17:58:34 +00:00
* ~~speed up build points animation at ff (maybe borrow something from animate.css?)~~
2015-12-08 12:21:00 +00:00
* current successfully streak icons at project page
2015-12-28 19:12:27 +00:00
* cancell in progress build + buld/step timeout
2016-01-03 19:11:40 +00:00
* rev hash link to repo web ui
2015-12-08 12:21:00 +00:00
2015-08-13 18:31:06 +00:00
2014-12-02 21:34:59 +00:00
## Roadmap
2015-11-23 19:31:01 +00:00
* ~~Responsive ui (persistent connection via socketio or something else +
data streams (from shell commands, etc))~~
2016-01-31 17:58:34 +00:00
* ~~Console output should be very close to the terminal output~~
2015-11-23 19:31:01 +00:00
* ~~Shell command is the main script~~
* ~~Tasks relations can be set easily (runAfter, runBefore, prevents, prevented)
2015-03-17 21:22:15 +00:00
it also can be attached to the specific branch or commit (e.g. release commits
2015-11-23 19:31:01 +00:00
can trigger auto deploy tasks)~~
* ~~Ability to build every or specified commits (even if they pushed in a bunch)~~
* ~~Simple API for triggering build on scm hook~~
* Project dependencies (all projects specified at dependencies should be built
before build current project) and optional start for all projects after ci
restart
2014-12-02 21:34:59 +00:00
* Build can be continued from the current failed step
* Failing of build step can be prevented if special condition for the build step
is defined and matched (e.g. ui tests timeout error or internet connection
problems detected by regexp) then step will be rerun without error
2015-11-23 19:31:01 +00:00
* ~~Approximate remaining build time should be shown~~
* ~~Named build steps~~
2015-06-17 20:14:52 +00:00
* Ability to change build parameters from ui (at least target branch)
2015-11-23 19:31:01 +00:00
* ~~Embedded database (apparently level db)~~
* ~~Lightweight (minimal dependencies)~~
* ~~Cancel build~~