Skip to content

Commit

Permalink
feat: add semantic-release-action
Browse files Browse the repository at this point in the history
  • Loading branch information
easingthemes committed May 27, 2021
1 parent a0be893 commit ac3c9b5
Show file tree
Hide file tree
Showing 8 changed files with 153 additions and 52 deletions.
14 changes: 9 additions & 5 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,11 +17,15 @@ jobs:
node-version: [14.x]

steps:
- uses: actions/checkout@v2
- name: Use Node.js ${{ matrix.node-version }}
- name: Checkout
uses: actions/checkout@v2
- name: Setup Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
with:
node-version: ${{ matrix.node-version }}
- run: npm ci
- run: npm run lint
- run: npm run build
- name: Install dependencies
run: npm ci
- name: Build Library
run: npm run build
- name: Run Tests
run: npm test --if-present
45 changes: 45 additions & 0 deletions .github/workflows/codeql-analysis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# For most projects, this workflow file will not need changing; you simply need
# to commit it to your repository.
#
# You may wish to alter this file to override the set of languages analyzed,
# or to provide custom queries or build logic.
#
# ******** NOTE ********
# We have attempted to detect the languages in your repository. Please check
# the `language` matrix defined below to confirm you have the correct set of
# supported CodeQL languages.
#
name: "CodeQL"

on:
push:
branches: [ main ]
pull_request:
# The branches below must be a subset of the branches above
branches: [ main ]
schedule:
- cron: '20 12 * * 0'

jobs:
analyze:
name: Analyze
runs-on: ubuntu-latest

strategy:
fail-fast: false
matrix:
language: [ 'javascript' ]
steps:
- name: Checkout
uses: actions/checkout@v2

# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v1
with:
languages: ${{ matrix.language }}

- run: npm run build --if-present

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v1
43 changes: 43 additions & 0 deletions .github/workflows/manual-release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
name: Manual Release
on:
workflow_dispatch:
inputs:
dryrun:
description: 'DryRUn'
required: true
default: 'false'
jobs:
release:
name: Test, Build and Release
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ ubuntu-latest ]
node-version: [ 14.x ]
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Setup Node.js
uses: actions/setup-node@v1
with:
node-version: ${{ matrix['node-version'] }}
- name: Install dependencies
run: npm ci
- name: Build Library
run: npm run build --if-present
- name: Run Tests
run: npm test --if-present
- name: Release
uses: cycjimmy/semantic-release-action@v2
with:
dry_run: ${{ github.event.inputs.dryrun == 'true' }}
extra_plugins: |
@semantic-release/changelog@3.0.0
@semantic-release/git
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GIT_AUTHOR_NAME: github-actions
GIT_AUTHOR_EMAIL: github-actions@github.com
GIT_COMMITTER_NAME: github-actions
GIT_COMMITTER_EMAIL: github-actions@github.com
CI: true
20 changes: 0 additions & 20 deletions .github/workflows/release-test.yml

This file was deleted.

60 changes: 35 additions & 25 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -1,33 +1,43 @@
name: Release

on:
workflow_dispatch:
inputs:
tag:
description: '<newversion> | major | minor | patch'
required: true
default: 'patch'
push:
branches:
- main

jobs:
checkout:
name: checkout
runs-on: ubuntu-latest
release:
name: Test, Build and Release
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ ubuntu-latest ]
node-version: [ 14.x ]

steps:
- name: Checkout
uses: actions/checkout@v2
- run: |
git config user.name github-actions
git config user.email github-actions@github.com
- name: Setup NodeJS and run build
- name: Setup Node.js
uses: actions/setup-node@v1
with:
node-version: 12
- run: |
npm ci
npm run lint
npm run build
- name: Setup version
if: ${{ github.event.inputs.tag != '' }}
run: |
npm version ${{ github.event.inputs.tag }}
git push
- name: Add tag
run: git tag -a v${{ github.event.inputs.tag }} -m "v${{ github.event.inputs.tag }}"
node-version: ${{ matrix['node-version'] }}
- name: Install dependencies
run: npm ci
- name: Build Library
run: npm run build --if-present
- name: Run Tests
run: npm test --if-present
- name: Release
uses: cycjimmy/semantic-release-action@v2
with:
dry_run: false
extra_plugins: |
@semantic-release/changelog@3.0.0
@semantic-release/git
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GIT_AUTHOR_NAME: github-actions
GIT_AUTHOR_EMAIL: github-actions@github.com
GIT_COMMITTER_NAME: github-actions
GIT_COMMITTER_EMAIL: github-actions@github.com
CI: true
19 changes: 19 additions & 0 deletions .releaserc
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
{
"branches": ["main"],
"plugins": [
"@semantic-release/commit-analyzer",
"@semantic-release/release-notes-generator",
[
"@semantic-release/changelog",
{
"changelogFile": "docs/CHANGELOG.md"
}
],
[
"@semantic-release/git",
{
"assets": ["docs/CHANGELOG.md"]
}
]
]
}
Empty file added docs/CHANGELOG.md
Empty file.
4 changes: 2 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "ssh-deploy",
"version": "2.1.9",
"description": "This GitHub Action deploys specific directory from `GITHUB_WORKSPACE` to a folder on a server via rsync over ssh.",
"description": "Fast NodeJS action to deploy specific directory from `GITHUB_WORKSPACE` to a server via rsync over ssh.",
"main": "src/index.js",
"dependencies": {
"command-exists": "1.2.9",
Expand Down Expand Up @@ -29,7 +29,7 @@
"rsync"
],
"author": "Dragan Filipovic",
"license": "ISC",
"license": "MIT",
"bugs": {
"url": "https://github.com/easingthemes/ssh-deploy/issues"
},
Expand Down

0 comments on commit ac3c9b5

Please sign in to comment.