Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/xontab/basic-node-ci
Very Basic and minimalistic Node-based CI (Continuous Integration)
https://github.com/xontab/basic-node-ci
ci-server nodejs
Last synced: about 1 month ago
JSON representation
Very Basic and minimalistic Node-based CI (Continuous Integration)
- Host: GitHub
- URL: https://github.com/xontab/basic-node-ci
- Owner: xontab
- License: mit
- Created: 2016-12-12T12:21:56.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2019-12-30T12:15:47.000Z (almost 5 years ago)
- Last Synced: 2024-10-14T07:08:08.077Z (2 months ago)
- Topics: ci-server, nodejs
- Language: JavaScript
- Homepage: http://xontab.com
- Size: 38.1 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Basic Node CI (Continuous Integration)
Very Basic and minimalistic Node-based CI (Continuous Integration) application
**Table of Contents**
- [Why yet another CI](#why-yet-another-ci)
- [Installation](#installation)
- [Start CI Server](#start-ci-server)
- [Future versions](#future-versions)
- [Credits](#credits)## Why yet another CI
* Free for both public and private projects
* Cross-platform, works also on Windows
* Minimal Configuration
* Low resources needed
* Easy to use web interface## Installation
To install just run the following command:> git clone https://github.com/xontab/basic-node-ci.git
> npm install### Configuration
Add `apps.js` in the `config` directory to define the CI enabled apps. The following is a sample config:
```js
[
{
"id": "Test1",
"directory": "C:\\app\\Test1\\",
"post-script": "run.bat"
},
{
"id": "Test2",
"interval": 15000,
"directory": "C:\\app\\Test2\\"
}
]
```Please Note: You need to restart the server when changes are applied to the above file.
### Available Parameters
| Paramater | Type | Remark | Defaut Value |
| --- | --- | --- | --- |
| `id` | string | The name of the application (required) | `undefined` |
| `directory` | string | The source code of the application (required) | `undefined` |
| `post-script` | string | The script filename in the source code directory which will run after the latest source code is pulled | `undefined` |
| `interval` | number | How frequent the latest source code will be pulled from source control | `300000` |
| `plugin` | enum | The source control engine. Currently only `git` is supported | `git` |
| `server` | string | The name of the remote name in source control | `origin` |
| `branch` | string | The branch name in source control | `master` |## Start CI Server
To run the CI server just execute the following command:
> npm start
### Web interface
The web interface is started automatically when the CI server is running. Just open http://localhost:8089 in a web browser for a basic web interface.
The default credentials are:
* Username: admin
* Password: admin123The users' credentials are stored in the `users.json` file in the `config` folder. Also the Web UI can be disabled for security reasons and the port can be changed from the `web.json` file in the `config` directory.
Please Note: You need to restart the server when changes are applied to the above file.
## Future versions
This application is still a WIP and more features will be coming in the near future: Planned feature that will be implemented soon:
* Unit Testing before releases
* Better login system
* More details in dashboard
* Permissions
* Add and configure apps from web portal
* Help page## Credits
React: http://facebook.github.io/react/
Babel: http://babeljs.io/
Webpack: https://webpack.github.io/docs/