Skip to content

Commit

Permalink
ci: replace travis with actions, setup renovate (#1699)
Browse files Browse the repository at this point in the history
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
  • Loading branch information
gr2m and jsoref committed Jan 20, 2021
1 parent 32a2c91 commit b5aa853
Show file tree
Hide file tree
Showing 15 changed files with 13,629 additions and 93 deletions.
21 changes: 21 additions & 0 deletions .github/workflows/release.yml
@@ -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 changes: 45 additions & 0 deletions .github/workflows/test.yml
@@ -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 changes: 0 additions & 4 deletions .gitignore
Expand Up @@ -125,10 +125,6 @@ $RECYCLE.BIN/
# Windows shortcuts
*.lnk

# Lockfiles
package-lock.json
yarn.lock

# Gitbook
_book

Expand Down
1 change: 0 additions & 1 deletion .npmrc

This file was deleted.

11 changes: 0 additions & 11 deletions .travis.yml

This file was deleted.

2 changes: 0 additions & 2 deletions .travis/codecov.yml

This file was deleted.

3 changes: 0 additions & 3 deletions .travis/greenkeeper.yml

This file was deleted.

3 changes: 0 additions & 3 deletions .travis/node-versions.yml

This file was deleted.

11 changes: 0 additions & 11 deletions .travis/node.yml

This file was deleted.

15 changes: 0 additions & 15 deletions .travis/semantic-release.yml

This file was deleted.

1 change: 0 additions & 1 deletion .yarnrc

This file was deleted.

17 changes: 6 additions & 11 deletions README.md
Expand Up @@ -4,14 +4,8 @@
<a href="https://spectrum.chat/semantic-release">
<img alt="Join the community on Spectrum" src="https://withspectrum.github.io/badge/badge.svg">
</a>
<a href="https://travis-ci.org/semantic-release/semantic-release">
<img alt="Travis" src="https://img.shields.io/travis/semantic-release/semantic-release/master.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 href="https://github.com/semantic-release/semantic-release/actions?query=workflow%3ATest+branch%3Amaster">
<img alt="Build states" src="https://github.com/semantic-release/semantic-release/workflows/Test/badge.svg">
</a>
<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">
Expand Down Expand Up @@ -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:

| Commit message | Release type |
|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------|
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------- |
| `fix(pencil): stop graphite breaking when too much pressure applied` | Patch 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 |
Expand All @@ -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.

**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)
- [Maintenance releases](docs/recipes/maintenance-releases.md#publishing-maintenance-releases)
- [Pre-releases](docs/recipes/pre-releases.md#publishing-pre-releases)
Expand All @@ -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:

| Step | Description |
|-------------------|---------------------------------------------------------------------------------------------------------------------------------|
| ----------------- | ------------------------------------------------------------------------------------------------------------------------------- |
| 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). |
| Analyze commits | Determine the type of release based on the commits added since the last release. |
Expand All @@ -98,6 +93,7 @@ After running the tests, the command `semantic-release` will execute the followi
## Requirements

In order to use **semantic-release** you need:

- 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)
- 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
Expand Down Expand Up @@ -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) |


<p align="center">
<img alt="Kill all humans" src="media/bender.png">
</p>

0 comments on commit b5aa853

Please sign in to comment.