Skip to content

Commit

Permalink
ci(release): new release process
Browse files Browse the repository at this point in the history
  • Loading branch information
Ahmad Nassri committed Aug 5, 2020
1 parent 1957181 commit cb745eb
Show file tree
Hide file tree
Showing 15 changed files with 372 additions and 153 deletions.
17 changes: 0 additions & 17 deletions .codeclimate.yml

This file was deleted.

3 changes: 0 additions & 3 deletions .eslintrc

This file was deleted.

14 changes: 14 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
version: 2
updates:
- package-ecosystem: github-actions
open-pull-requests-limit: 10
directory: /
schedule:
interval: daily

- package-ecosystem: npm
open-pull-requests-limit: 10
directory: /
schedule:
interval: daily

153 changes: 153 additions & 0 deletions .github/linters/.markdown-lint.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,153 @@
# Heading levels should only increment by one level at a time
MD001: false

# Heading style
MD003:
style: atx

# Unordered list style
MD004:
style: dash

# Inconsistent indentation for list items at the same level
MD005: true

# Unordered list indentation
MD007:
indent: 2
start_indented: false

# Trailing spaces
MD009:
br_spaces: 2
list_item_empty_lines: false
strict: false

# Hard tabs
MD010:
code_blocks: false

# Reversed link syntax
MD011: true

# Multiple consecutive blank lines
MD012:
maximum: 1

# Line length
MD013:
line_length: 180
strict: true
stern: true

# Dollar signs used before commands without showing output
MD014: false

# No space after hash on atx style heading
MD018: true

# Multiple spaces after hash on atx style heading
MD019: true

# No space inside hashes on closed atx style heading
MD020: true

# Multiple spaces inside hashes on closed atx style heading
MD021: true

# Headings should be surrounded by blank lines
MD022:
lines_above: 1
lines_below: 1


# Headings must start at the beginning of the line
MD023: true

# Multiple headings with the same content
MD024:
allow_different_nesting: true

# Multiple top level headings in the same document
MD025: true

# Trailing punctuation in heading
MD026:
punctuation: ".,;:!?。,;:!?"

# Multiple spaces after blockquote symbol
MD027: true

# Blank line inside blockquote
MD028: true

# Ordered list item prefix
MD029:
style: one_or_ordered

# Spaces after list markers
MD030:
ul_single: 1
ol_single: 1
ul_multi: 1
ol_multi: 1

# Fenced code blocks should be surrounded by blank lines
MD031:
list_items: true

# Lists should be surrounded by blank lines
MD032: true

# inline HTML
MD033:
allowed_elements: []

# Bare URL used
MD034: true

# Horizontal rule style
MD035:
style: "----"

# Emphasis used instead of a heading
MD036:
punctuation: ".,;:!?。,;:!?"

# Spaces inside emphasis markers
MD037: true

# Spaces inside code span elements
MD038: true

# Spaces inside link text
MD039: true

# Fenced code blocks should have a language specified
MD040: true

# First line in file should be a top level heading
MD041: true

# No empty links
MD042: true

# Required heading structure
MD043: false

# Proper names should have the correct capitalization
MD044: false

# Images should have alternate text (alt text)
MD045: false

# Code block style
MD046:
style: fenced

# Files should end with a single newline character
MD047: true

# Code fence style
MD048:
style: backtick
16 changes: 0 additions & 16 deletions .github/settings.yml

This file was deleted.

11 changes: 11 additions & 0 deletions .github/workflows/auto-merge.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
name: auto-merge

on:
pull_request:

jobs:
auto-merge:
runs-on: ubuntu-latest
if: github.actor == 'dependabot[bot]'
steps:
- uses: ahmadnassri/action-dependabot-auto-merge@v1
57 changes: 57 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
name: release

on:
push:
branches:
- master

jobs:
dependencies:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2
- uses: actions/[email protected]

# run checks
- run: npm audit --audit-level=moderate

test:
needs: dependencies

strategy:
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
node-version: [10, 12, 13, 14]

runs-on: ${{ matrix.os }}

steps:
- uses: actions/checkout@v2

- uses: actions/cache@v2
with:
path: ~/.npm
key: client-${{ hashFiles('**/package-lock.json') }}

- uses: actions/[email protected]
with:
node-version: ${{ matrix.node-version }}

# run test
- run: npm ci
- run: npm run test

release:
needs: test

runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2

- name: semantic-release
uses: ahmadnassri/action-semantic-release@v1
env:
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
14 changes: 14 additions & 0 deletions .github/workflows/super-linter.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
name: super-linter

on: push

jobs:
super-linter:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2
- uses: docker://github/super-linter:v3
env:
VALIDATE_ALL_CODEBASE: false
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
43 changes: 43 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
name: test

on:
push:
branches-ignore:
- master

jobs:
dependencies:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2
- uses: actions/[email protected]

# run checks
- run: npm audit --audit-level=moderate

test:
needs: dependencies

strategy:
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
node-version: [10, 12, 13, 14]

runs-on: ${{ matrix.os }}

steps:
- uses: actions/checkout@v2

- uses: actions/cache@v2
with:
path: ~/.npm
key: client-${{ hashFiles('**/package-lock.json') }}

- uses: actions/[email protected]
with:
node-version: ${{ matrix.node-version }}

# run test
- run: npm ci
- run: npm run test
35 changes: 34 additions & 1 deletion .releaserc
Original file line number Diff line number Diff line change
@@ -1,3 +1,36 @@
{
"extends": "@ahmadnassri/semantic-release-config"
"plugins": [
["@semantic-release/commit-analyzer", {
"preset": "conventionalcommits",
"releaseRules": [
{ "breaking": true, "release": "major" },
{ "revert": true, "release": "patch" },
{ "type": "build", "release": "patch" },
{ "type": "docs", "release": "patch" },
{ "type": "feat", "release": "minor" },
{ "type": "fix", "release": "patch" },
{ "type": "perf", "release": "patch" },
{ "type": "refactor", "release": "patch" }
]
}],
["@semantic-release/release-notes-generator", {
"preset": "conventionalcommits",
"presetConfig": {
"types": [
{ "type": "build", "section": "Build", "hidden": false },
{ "type": "chore", "section": "Chores", "hidden": false },
{ "type": "ci", "section": "CI/CD", "hidden": false },
{ "type": "docs", "section": "Docs", "hidden": false },
{ "type": "feat", "section": "Features", "hidden": false },
{ "type": "fix", "section": "Bug Fixes", "hidden": false },
{ "type": "perf", "section": "Performance", "hidden": false },
{ "type": "refactor", "section": "Refactor", "hidden": false },
{ "type": "style", "section": "Code Style", "hidden": false },
{ "type": "test", "section": "Tests", "hidden": false }
]
}
}],
"@semantic-release/github",
"@semantic-release/npm"
]
}
5 changes: 0 additions & 5 deletions .remarkrc

This file was deleted.

Loading

0 comments on commit cb745eb

Please sign in to comment.