renovate/readme.md

57 lines
2.8 KiB
Markdown
Raw Permalink Normal View History

2016-12-17 09:26:06 -07:00
# renovate
2017-06-25 00:21:48 -06:00
Keep npm dependencies up-to-date.
2017-06-25 00:24:51 -06:00
[![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://raw.githubusercontent.com/singapore/renovate/master/license)
2017-06-25 00:21:48 -06:00
[![codecov](https://codecov.io/gh/singapore/renovate/branch/master/graph/badge.svg)](https://codecov.io/gh/singapore/renovate)
[![Join the chat at https://gitter.im/renovate-app/Lobby](https://badges.gitter.im/renovate-app/Lobby.svg)](https://gitter.im/renovate-app/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
2017-06-25 00:24:51 -06:00
2017-06-02 14:46:58 -06:00
## Why
2017-01-12 12:56:46 -07:00
- Creates or updates Pull Requests for each dependency that needs updating
- Discovers and processes all `package.json` files in repository (supports monorepo architecture)
- Supports multiple major versions per-dependency at once
- Configurable via file, environment, CLI, and `package.json`
- Supports `yarn.lock` and `package-lock.json` files
- Supports GitHub and GitLab
- Open source and can be self-hosted
2017-01-12 12:56:46 -07:00
2017-06-02 14:46:58 -06:00
## GitHub App
Renovate is now available as a free GitHub "App". Go to [https://github.com/apps/renovate](https://github.com/apps/renovate) to enable it now.
2017-06-02 14:46:58 -06:00
2017-01-15 10:59:32 -07:00
## Install
2016-12-18 04:00:41 -07:00
2017-01-15 10:59:32 -07:00
```
$ npm install -g renovate
```
2016-12-18 04:00:41 -07:00
2017-01-15 10:59:32 -07:00
## Authentication
2016-12-18 04:00:41 -07:00
2017-02-11 00:14:19 -07:00
You need to select a repository user for `renovate` to assume the identity of, and generate a Personal Access Token. It's recommended that you use a dedicated "bot" account for this to avoid user confusion.
2016-12-18 04:00:41 -07:00
You can find instructions for GitHub [here](https://help.github.com/articles/creating-an-access-token-for-command-line-use/) (select "repo" permissions)
2017-02-11 00:14:19 -07:00
You can find instructions for GitLab [here](https://docs.gitlab.com/ee/api/README.html#personal-access-tokens).
2016-12-18 04:00:41 -07:00
2017-01-15 10:59:32 -07:00
This token needs to be configured via file, environment variable, or CLI. See [docs/configuration.md](docs/configuration.md) for details.
2017-02-11 00:14:19 -07:00
The simplest way is to expose it as `GITHUB_TOKEN` or `GITLAB_TOKEN`.
2016-12-18 04:00:41 -07:00
## Usage
2016-12-18 04:00:41 -07:00
Run `renovate --help` for usage details.
2017-01-15 11:57:20 -07:00
2017-02-11 00:14:19 -07:00
Note: The first time you run `renovate` on a repository, it will not upgrade any dependencies. Instead, it will create a Pull Request (Merge Request if GitLab) called 'Configure Renovate' and commit a default `renovate.json` file to the repository. This PR can be close unmerged if the default settings are fine for you. Also, this behaviour can be disabled if you set the `onboarding` configuration option to `false` before running.
2017-01-29 23:37:43 -07:00
2017-01-15 11:57:20 -07:00
## Deployment
See [deployment docs](https://github.com/singapore/renovate/blob/master/docs/deployment.md) for details.
## Configuration
The [Configuration](https://github.com/singapore/renovate/blob/master/docs/configuration.md) and [Configuration FAQ](https://github.com/singapore/renovate/blob/master/docs/faq.md) documents should be helpful.
2017-01-15 11:57:20 -07:00
2017-01-16 02:55:02 -07:00
## Design Decisions
2017-01-15 11:57:20 -07:00
See [design decisions doc](https://github.com/singapore/renovate/blob/master/docs/design-decisions.md) for details.