ci: replace travis with actions, setup renovate
This commit is contained in:
parent
32a2c91d7c
commit
a2266ca47d
21
.github/workflows/release.yml
vendored
Normal file
21
.github/workflows/release.yml
vendored
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
name: Release
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- master
|
||||||
|
- next
|
||||||
|
- beta
|
||||||
|
- "*.x" # maintenance releases branches
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
release:
|
||||||
|
name: release
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- uses: actions/setup-node@v1
|
||||||
|
- uses: bahmutov/npm-install@v1
|
||||||
|
- run: npx semantic-release
|
||||||
|
env:
|
||||||
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
NPM_TOKEN: ${{ secrets.SEMANTIC_RELEASE_BOT_NPM_TOKEN }}
|
45
.github/workflows/test.yml
vendored
Normal file
45
.github/workflows/test.yml
vendored
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
name: Test
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- master
|
||||||
|
- renovate/**
|
||||||
|
|
||||||
|
pull_request:
|
||||||
|
types:
|
||||||
|
- opened
|
||||||
|
- synchronize
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
test_matrix:
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
node-version:
|
||||||
|
- 10
|
||||||
|
- 12
|
||||||
|
- 14
|
||||||
|
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- run: git config --global user.name github-actions
|
||||||
|
- run: git config --global user.email github-actions@github.com
|
||||||
|
- name: Use Node.js ${{ matrix.node-version }}
|
||||||
|
uses: actions/setup-node@v1
|
||||||
|
with:
|
||||||
|
node-version: ${{ matrix.node-version }}
|
||||||
|
- uses: bahmutov/npm-install@v1
|
||||||
|
- run: npm run test:ci
|
||||||
|
|
||||||
|
# separate job to set as required in branch protection,
|
||||||
|
# as the build names above change each time Node versions change
|
||||||
|
test:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
needs: test_matrix
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- uses: actions/setup-node@v1
|
||||||
|
- uses: bahmutov/npm-install@v1
|
||||||
|
- run: npm run lint
|
4
.gitignore
vendored
4
.gitignore
vendored
@ -125,10 +125,6 @@ $RECYCLE.BIN/
|
|||||||
# Windows shortcuts
|
# Windows shortcuts
|
||||||
*.lnk
|
*.lnk
|
||||||
|
|
||||||
# Lockfiles
|
|
||||||
package-lock.json
|
|
||||||
yarn.lock
|
|
||||||
|
|
||||||
# Gitbook
|
# Gitbook
|
||||||
_book
|
_book
|
||||||
|
|
||||||
|
11
.travis.yml
11
.travis.yml
@ -1,11 +0,0 @@
|
|||||||
version: ~> 1.0
|
|
||||||
|
|
||||||
services:
|
|
||||||
- docker
|
|
||||||
|
|
||||||
import:
|
|
||||||
- .travis/node.yml
|
|
||||||
- .travis/node-versions.yml
|
|
||||||
- .travis/semantic-release.yml
|
|
||||||
- .travis/greenkeeper.yml
|
|
||||||
- .travis/codecov.yml
|
|
@ -1,2 +0,0 @@
|
|||||||
after_success:
|
|
||||||
- npm run codecov
|
|
@ -1,3 +0,0 @@
|
|||||||
branches:
|
|
||||||
only:
|
|
||||||
- /^greenkeeper.*$/
|
|
@ -1,3 +0,0 @@
|
|||||||
node_js:
|
|
||||||
- 12
|
|
||||||
- 10.18
|
|
@ -1,11 +0,0 @@
|
|||||||
language: node_js
|
|
||||||
|
|
||||||
cache:
|
|
||||||
npm: false
|
|
||||||
|
|
||||||
# Retry install on fail to avoid failing a build on network/disk/external errors
|
|
||||||
install:
|
|
||||||
- travis_retry npm install
|
|
||||||
|
|
||||||
script:
|
|
||||||
- npm run test
|
|
@ -1,15 +0,0 @@
|
|||||||
branches:
|
|
||||||
only:
|
|
||||||
- master
|
|
||||||
- next
|
|
||||||
- beta
|
|
||||||
- /^\d+\.(\d+|x)(\.x)?$/
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
include:
|
|
||||||
- stage: release
|
|
||||||
node_js: lts/*
|
|
||||||
install:
|
|
||||||
- travis_retry npm install
|
|
||||||
script:
|
|
||||||
- npm run semantic-release
|
|
17
README.md
17
README.md
@ -4,14 +4,8 @@
|
|||||||
<a href="https://spectrum.chat/semantic-release">
|
<a href="https://spectrum.chat/semantic-release">
|
||||||
<img alt="Join the community on Spectrum" src="https://withspectrum.github.io/badge/badge.svg">
|
<img alt="Join the community on Spectrum" src="https://withspectrum.github.io/badge/badge.svg">
|
||||||
</a>
|
</a>
|
||||||
<a href="https://travis-ci.org/semantic-release/semantic-release">
|
<a href="https://github.com/semantic-release/semantic-release/actions?query=workflow%3ATest+branch%3Amaster">
|
||||||
<img alt="Travis" src="https://img.shields.io/travis/semantic-release/semantic-release/master.svg">
|
<img alt="Build states" src="https://github.com/semantic-release/semantic-release/workflows/Test/badge.svg">
|
||||||
</a>
|
|
||||||
<a href="https://codecov.io/gh/semantic-release/semantic-release">
|
|
||||||
<img alt="Codecov" src="https://img.shields.io/codecov/c/github/semantic-release/semantic-release/master.svg">
|
|
||||||
</a>
|
|
||||||
<a href="https://greenkeeper.io">
|
|
||||||
<img alt="Greenkeeper" src="https://badges.greenkeeper.io/semantic-release/semantic-release.svg">
|
|
||||||
</a>
|
</a>
|
||||||
<a href="#badge">
|
<a href="#badge">
|
||||||
<img alt="semantic-release" src="https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg">
|
<img alt="semantic-release" src="https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg">
|
||||||
@ -61,7 +55,7 @@ Tools such as [commitizen](https://github.com/commitizen/cz-cli) or [commitlint]
|
|||||||
Here is an example of the release type that will be done based on a commit messages:
|
Here is an example of the release type that will be done based on a commit messages:
|
||||||
|
|
||||||
| Commit message | Release type |
|
| Commit message | Release type |
|
||||||
|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------|
|
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------- |
|
||||||
| `fix(pencil): stop graphite breaking when too much pressure applied` | Patch Release |
|
| `fix(pencil): stop graphite breaking when too much pressure applied` | Patch Release |
|
||||||
| `feat(pencil): add 'graphiteWidth' option` | ~~Minor~~ Feature Release |
|
| `feat(pencil): add 'graphiteWidth' option` | ~~Minor~~ Feature Release |
|
||||||
| `perf(pencil): remove graphiteWidth option`<br><br>`BREAKING CHANGE: The graphiteWidth option has been removed.`<br>`The default graphite width of 10mm is always used for performance reasons.` | ~~Major~~ Breaking Release |
|
| `perf(pencil): remove graphiteWidth option`<br><br>`BREAKING CHANGE: The graphiteWidth option has been removed.`<br>`The default graphite width of 10mm is always used for performance reasons.` | ~~Major~~ Breaking Release |
|
||||||
@ -75,6 +69,7 @@ Here is an example of the release type that will be done based on a commit messa
|
|||||||
For each new commits added to one of the release branches (for example `master`, `next`, `beta`), with `git push` or by merging a pull request or merging from another branch, a CI build is triggered and runs the `semantic-release` command to make a release if there are codebase changes since the last release that affect the package functionalities.
|
For each new commits added to one of the release branches (for example `master`, `next`, `beta`), with `git push` or by merging a pull request or merging from another branch, a CI build is triggered and runs the `semantic-release` command to make a release if there are codebase changes since the last release that affect the package functionalities.
|
||||||
|
|
||||||
**semantic-release** offers various ways to control the timing, the content and the audience of published releases. See example workflows in the following recipes:
|
**semantic-release** offers various ways to control the timing, the content and the audience of published releases. See example workflows in the following recipes:
|
||||||
|
|
||||||
- [Using distribution channels](docs/recipes/distribution-channels.md#publishing-on-distribution-channels)
|
- [Using distribution channels](docs/recipes/distribution-channels.md#publishing-on-distribution-channels)
|
||||||
- [Maintenance releases](docs/recipes/maintenance-releases.md#publishing-maintenance-releases)
|
- [Maintenance releases](docs/recipes/maintenance-releases.md#publishing-maintenance-releases)
|
||||||
- [Pre-releases](docs/recipes/pre-releases.md#publishing-pre-releases)
|
- [Pre-releases](docs/recipes/pre-releases.md#publishing-pre-releases)
|
||||||
@ -84,7 +79,7 @@ For each new commits added to one of the release branches (for example `master`,
|
|||||||
After running the tests, the command `semantic-release` will execute the following steps:
|
After running the tests, the command `semantic-release` will execute the following steps:
|
||||||
|
|
||||||
| Step | Description |
|
| Step | Description |
|
||||||
|-------------------|---------------------------------------------------------------------------------------------------------------------------------|
|
| ----------------- | ------------------------------------------------------------------------------------------------------------------------------- |
|
||||||
| Verify Conditions | Verify all the conditions to proceed with the release. |
|
| Verify Conditions | Verify all the conditions to proceed with the release. |
|
||||||
| Get last release | Obtain the commit corresponding to the last release by analyzing [Git tags](https://git-scm.com/book/en/v2/Git-Basics-Tagging). |
|
| Get last release | Obtain the commit corresponding to the last release by analyzing [Git tags](https://git-scm.com/book/en/v2/Git-Basics-Tagging). |
|
||||||
| Analyze commits | Determine the type of release based on the commits added since the last release. |
|
| Analyze commits | Determine the type of release based on the commits added since the last release. |
|
||||||
@ -98,6 +93,7 @@ After running the tests, the command `semantic-release` will execute the followi
|
|||||||
## Requirements
|
## Requirements
|
||||||
|
|
||||||
In order to use **semantic-release** you need:
|
In order to use **semantic-release** you need:
|
||||||
|
|
||||||
- To host your code in a [Git repository](https://git-scm.com)
|
- To host your code in a [Git repository](https://git-scm.com)
|
||||||
- Use a Continuous Integration service that allows you to [securely set up credentials](docs/usage/ci-configuration.md#authentication)
|
- Use a Continuous Integration service that allows you to [securely set up credentials](docs/usage/ci-configuration.md#authentication)
|
||||||
- Git CLI version [2.7.1 or higher](docs/support/FAQ.md#why-does-semantic-release-require-git-version--271) installed in your Continuous Integration environment
|
- Git CLI version [2.7.1 or higher](docs/support/FAQ.md#why-does-semantic-release-require-git-version--271) installed in your Continuous Integration environment
|
||||||
@ -160,7 +156,6 @@ Let people know that your package is published using **semantic-release** by inc
|
|||||||
| ------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- |
|
| ------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- |
|
||||||
| [Stephan Bönnemann](https://github.com/boennemann) | [Rolf Erik Lekang](https://github.com/relekang) | [Johannes Jörg Schmidt](https://github.com/jo) | [Finn Pauls](https://github.com/finnp) | [Christoph Witzko](https://github.com/christophwitzko) |
|
| [Stephan Bönnemann](https://github.com/boennemann) | [Rolf Erik Lekang](https://github.com/relekang) | [Johannes Jörg Schmidt](https://github.com/jo) | [Finn Pauls](https://github.com/finnp) | [Christoph Witzko](https://github.com/christophwitzko) |
|
||||||
|
|
||||||
|
|
||||||
<p align="center">
|
<p align="center">
|
||||||
<img alt="Kill all humans" src="media/bender.png">
|
<img alt="Kill all humans" src="media/bender.png">
|
||||||
</p>
|
</p>
|
||||||
|
13445
package-lock.json
generated
Normal file
13445
package-lock.json
generated
Normal file
File diff suppressed because it is too large
Load Diff
@ -122,7 +122,8 @@
|
|||||||
"lint": "xo",
|
"lint": "xo",
|
||||||
"pretest": "npm run lint",
|
"pretest": "npm run lint",
|
||||||
"semantic-release": "./bin/semantic-release.js",
|
"semantic-release": "./bin/semantic-release.js",
|
||||||
"test": "nyc ava -v"
|
"test": "nyc ava -v",
|
||||||
|
"test:ci": "nyc ava -v"
|
||||||
},
|
},
|
||||||
"xo": {
|
"xo": {
|
||||||
"prettier": true,
|
"prettier": true,
|
||||||
@ -130,5 +131,10 @@
|
|||||||
"rules": {
|
"rules": {
|
||||||
"unicorn/string-content": "off"
|
"unicorn/string-content": "off"
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
"renovate": {
|
||||||
|
"extends": [
|
||||||
|
"github>semantic-release/.github"
|
||||||
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user