|
1 | 1 | # @semantic-release/apm-config |
2 | 2 |
|
3 | | -[Semantic-release](https://github.com/semantic-release/semantic-release) shareable config for releasing atom packages with [apm](https://github.com/atom/apm). |
| 3 | +[**semantic-release**](https://github.com/semantic-release/semantic-release) shareable config to publish [Atom](https://www.atom.io) packages with with [apm](https://github.com/atom/apm). |
4 | 4 |
|
5 | 5 | [](https://travis-ci.org/semantic-release/apm-config) |
6 | | -[](https://codecov.io/gh/semantic-release/apm-config) |
7 | 6 | [](https://greenkeeper.io/) |
8 | 7 |
|
9 | 8 | [](https://www.npmjs.com/package/@semantic-release/apm-config) |
10 | 9 | [](https://www.npmjs.com/package/@semantic-release/apm-config) |
11 | 10 |
|
12 | | -## Usage |
| 11 | +## Plugins |
| 12 | + |
| 13 | +This shareable configuration use the following plugins: |
| 14 | +- [`@semantic-release/commit-analyzer`](https://github.com/semantic-release/commit-analyzer) |
| 15 | +- [`@semantic-release/git`](https://github.com/semantic-release/git) |
| 16 | +- [`@semantic-release/release-notes-generator`](https://github.com/semantic-release/release-notes-generator) |
| 17 | +- [`@semantic-release/npm`](https://github.com/semantic-release/npm) |
| 18 | +- [`@semantic-release/exec`](https://github.com/semantic-release/exec) |
| 19 | +- [`@semantic-release/changelog`](https://github.com/semantic-release/changelog) |
| 20 | +- [`@semantic-release/github`](https://github.com/semantic-release/github) |
13 | 21 |
|
14 | | -### Local installation |
| 22 | +## Install |
15 | 23 |
|
16 | 24 | ```bash |
17 | 25 | $ npm install --save-dev semantic-release @semantic-release/apm-config |
18 | 26 | ``` |
19 | 27 |
|
20 | | -In `package.json`: |
| 28 | +## Usage |
| 29 | + |
| 30 | +The shareable config can be configured in the [**semantic-release** configuration file](https://github.com/semantic-release/semantic-release/blob/master/docs/usage/configuration.md#configuration): |
21 | 31 |
|
22 | 32 | ```json |
23 | 33 | { |
24 | | - "release": { |
25 | | - "extends": "@semantic-release/apm-config" |
26 | | - } |
| 34 | + "extends": "@semantic-release/apm-config" |
27 | 35 | } |
28 | 36 | ``` |
29 | 37 |
|
30 | | -### Global installation |
31 | | - |
32 | | -```bash |
33 | | -$ npm install -g semantic-release @semantic-release/apm-config |
34 | | -$ semantic-release -e @semantic-release/apm-config |
35 | | -``` |
36 | | - |
37 | 38 | ## Configuration |
38 | 39 |
|
39 | | -### Atom installation |
40 | | - |
41 | | -The `apm` command line has to be installed in your CI environment and available in the `PATH`. |
42 | | - |
43 | | -See the [Atom Package CI Scripts](https://github.com/atom/ci#atom-package-ci-scripts) documentation. |
44 | | - |
45 | | -_Note: If you are running multiple versions of Atom in CI (Stable + Beta), |
46 | | -ensure that the `semantic-release` command is run on a build using the Stable |
47 | | -channel of Atom as the Beta channel builds only provide `apm-beta`. If you are |
48 | | -using [travis-deploy-once](https://github.com/semantic-release/travis-deploy-once) |
49 | | -this can be achieved by setting the Stable channel build to be the last build |
50 | | -to run, or by using the |
51 | | -[`buildLeaderId`](https://github.com/semantic-release/travis-deploy-once#-b---buildleaderid) |
52 | | -option._ |
53 | | - |
54 | | -### Atom authentication |
| 40 | +See each [plugin](#plugins) documentation for required installation and configuration steps. |
55 | 41 |
|
56 | | -The Atom authentication configuration is **required** and can be set via [environment variables](#environment-variables). |
| 42 | +### Overwritten options |
57 | 43 |
|
58 | | -Visit your account page on [Atom.io](https://atom.io/account) to obtain your authentication token. The token has to be made available in your CI environment via the `ATOM_ACCESS_TOKEN` environment variable. |
| 44 | +This following options are set by this shareable config: |
59 | 45 |
|
60 | | -### GitHub authentication |
| 46 | +| Option | Value | |
| 47 | +|--------------------------------------------------------------|---------------------------------------------------| |
| 48 | +| [`message`](https://github.com/semantic-release/git#message) | chore(release): \${nextRelease.version} [skip ci] | |
61 | 49 |
|
62 | | -The GitHub authentication configuration is **required** and can be set via [environment variables](#environment-variables). |
63 | | - |
64 | | -See [GitHub authentication](https://github.com/semantic-release/github#github-authentication). |
65 | | - |
66 | | -### Environment variables |
67 | | - |
68 | | -| Variable | Description | |
69 | | -|------------------------------|----------------------------------------------------------------------| |
70 | | -| `GH_TOKEN` or `GITHUB_TOKEN` | **Required.** The token used to authenticate with GitHub repository. | |
71 | | -| `ATOM_ACCESS_TOKEN` | **Required.** The token used to authenticate with Atom registry. | |
72 | | - |
73 | | -### Additional options |
74 | | - |
75 | | -This shareable config uses the [`@semantic-release/git`](https://github.com/semantic-release/git), [`@semantic-release/npm`](https://github.com/semantic-release/npm), [`@semantic-release/exec`](https://github.com/semantic-release/exec), [`@semantic-release/changelog`](https://github.com/semantic-release/changelog) and [`@semantic-release/github`](https://github.com/semantic-release/github) plugins. See the documentation of each plugins for additional options. |
76 | | - |
77 | | -Options can be set in the Semantic-release configuration. |
78 | | - |
79 | | -For example to change the commit message: |
80 | | - |
81 | | -```json |
82 | | -{ |
83 | | - "release": { |
84 | | - "extends": "@semantic-release/apm-config", |
85 | | - "message": "chore: prepare %s release ${nextRelease.version} [skip ci]" |
86 | | - } |
87 | | -} |
88 | | -``` |
| 50 | +Other options use their default values. See each [plugin](#plugins) documentation for available options. |
0 commit comments