Skip to content

Commit

Permalink
feat: Create initial version of is-release-commit-action
Browse files Browse the repository at this point in the history
  • Loading branch information
nioe committed Jul 15, 2024
0 parents commit 035e1ef
Show file tree
Hide file tree
Showing 30 changed files with 10,361 additions and 0 deletions.
7 changes: 7 additions & 0 deletions .commitlintrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"extends": ["@commitlint/config-conventional"],
"rules": {
"subject-case": [2, "always", "sentence-case"],
"scope-case": [2, "always", ["camel-case", "upper-case"]]
}
}
1 change: 1 addition & 0 deletions .eslintignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
dist
10 changes: 10 additions & 0 deletions .eslintrc.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
module.exports = {
parser: '@typescript-eslint/parser',
parserOptions: {
ecmaVersion: 2020,
sourceType: 'module',
project: ['tsconfig.json'],
},
extends: ['plugin:@typescript-eslint/recommended', 'plugin:prettier/recommended'],
rules: {},
};
22 changes: 22 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
name: build
on:
push:
branches:
- main
- feature/**
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Node.js & npm
uses: actions/setup-node@v4
with:
node-version: '20.x'
- name: Install dependencies
run: npm ci
- name: Linting
run: npm run lint
- name: Run Build Script
run: npm run build
16 changes: 16 additions & 0 deletions .github/workflows/release-please.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
on:
push:
branches:
- main

permissions:
contents: write
pull-requests: write

name: release-please

jobs:
release-please:
runs-on: ubuntu-latest
steps:
- uses: googleapis/release-please-action@v4
8 changes: 8 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# node / npm
node_modules

# OS
.DS_Store

# Project Specific
dist-test
4 changes: 4 additions & 0 deletions .husky/commit-msg
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
#!/bin/sh
. "$(dirname "$0")/_/husky.sh"

npx --no -- commitlint --edit $1
9 changes: 9 additions & 0 deletions .husky/pre-commit
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
#!/bin/sh
. "$(dirname "$0")/_/husky.sh"

# Since the dist folder is checked in we make sure to run a build before commiting
npm run build
git add dist

# Prettify changed files
npx pretty-quick --staged
8 changes: 8 additions & 0 deletions .idea/.gitignore

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions .idea/inspectionProfiles/Project_Default.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

11 changes: 11 additions & 0 deletions .idea/is-release-commit-action.iml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions .idea/misc.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 8 additions & 0 deletions .idea/modules.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 8 additions & 0 deletions .idea/prettier.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions .idea/vcs.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions .prettierignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
dist
6 changes: 6 additions & 0 deletions .prettierrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"printWidth": 130,
"singleQuote": true,
"trailingComma": "all",
"bracketSpacing": false
}
3 changes: 3 additions & 0 deletions .release-please-manifest.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
".": "0.0.0"
}
36 changes: 36 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# Is Release Commit Action

Checks whether the current commit is a release commit.

## Inputs

### `release-tag-prefix`

A glob prefix to filter tag names. Set to `*` if all tags shall be taken into account.
Default: `v*`

### `fallback-tag`

The fallback if no release tag could have been found.
Default: `0.0.0`

## Outputs

### `latest-release-tag`

The content of the latest release tag. E.g. "v1.2.3" or the value of `fallback-tag` if no tag could be found.

### `is-release-commit`

Whether the current commit is a release commit (`"true"`) or not (`"false"`)

## Example usage

<!-- x-release-please-start-version -->

```yaml
- uses: NiverEngineering/is-release-commit-action@v0.0.0
id: is-release-commit
```
<!-- x-release-please-end -->
17 changes: 17 additions & 0 deletions action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
name: 'Maven Artifact Existence Checker'
description: 'Check whether an artifact exists within the given maven repository'
inputs:
release-tag-prefix:
description: 'A glob prefix to filter tag names. Set to "*" if all tags shall be taken into account'
default: 'v*'
fallback-tag:
description: 'The fallback if no release tag could have been found.'
default: '0.0.0'
outputs:
latest-release-tag:
description: 'The content of the latest release tag. E.g. "v1.2.3"'
is-release-commit:
description: 'Whether the current commit is a release commit (`true`) or not (`false`)'
runs:
using: 'node20'
main: 'dist/action.js'
68 changes: 68 additions & 0 deletions dist/action.js

Large diffs are not rendered by default.

7 changes: 7 additions & 0 deletions jest.config.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
/** @type {import('ts-jest').JestConfigWithTsJest} **/
module.exports = {
testEnvironment: 'node',
transform: {
'^.+.tsx?$': ['ts-jest', {}],
},
};
Loading

0 comments on commit 035e1ef

Please sign in to comment.