egg-ci
---------------
[![NPM version][npm-image]][npm-url]
[![Node.js CI](https://github.com/eggjs/egg-ci/actions/workflows/nodejs.yml/badge.svg)](https://github.com/eggjs/egg-ci/actions/workflows/nodejs.yml)
[![Test coverage][codecov-image]][codecov-url]
[![npm download][download-image]][download-url]
[npm-image]: https://img.shields.io/npm/v/egg-ci.svg?style=flat-square
[npm-url]: https://npmjs.org/package/egg-ci
[codecov-image]: https://codecov.io/github/eggjs/egg-ci/coverage.svg?branch=master
[codecov-url]: https://codecov.io/github/eggjs/egg-ci?branch=master
[download-image]: https://img.shields.io/npm/dm/egg-ci.svg?style=flat-square
[download-url]: https://npmjs.org/package/egg-ci
Auto gen [GitHub Action](https://github.com/features/actions) ci config file.
## Installation
```bash
$ npm i egg-ci --save-dev
```
## Usage
Add `ci` property to your `package.json`:
```js
"ci": {
"os": "linux, windows, macos",
"npminstall": false, // use `npminstall` or `npm install`, default is false
"version": "14, 16, 18", // test LTS node version by default
// npm ci command
"command": "ci",
// custom service, only support on "linux" os, if you enable service, os will set to "linux" only
"service": {
"mysql": {
"version": "8"
},
"redis-server": {
"version": "6"
}
},
"license": false // generate license
}
```
## How
Use `npm postinstall` hook to create the `*.yml` after each `npm install` run.
## License
[MIT](LICENSE)
## Contributors
|[
fengmk2](https://github.com/fengmk2)
|[
atian25](https://github.com/atian25)
|[
dead-horse](https://github.com/dead-horse)
|[
popomore](https://github.com/popomore)
|[
ngot](https://github.com/ngot)
|[
thonatos](https://github.com/thonatos)
|
| :---: | :---: | :---: | :---: | :---: | :---: |
[
azure-pipelines[bot]](https://github.com/apps/azure-pipelines)
|[
ahungrynoob](https://github.com/ahungrynoob)
|[
zhennann](https://github.com/zhennann)
This project follows the git-contributor [spec](https://github.com/xudafeng/git-contributor), auto updated at `Fri Jun 03 2022 17:58:16 GMT+0800`.