From 09f1313e120baba2ebe0d20d087c472bba8a24c6 Mon Sep 17 00:00:00 2001 From: Vanshaj Singhania Date: Sat, 2 Jan 2021 15:19:30 -0800 Subject: [PATCH] Update README --- README.md | 113 ++++++++++-------------------------------------------- 1 file changed, 20 insertions(+), 93 deletions(-) diff --git a/README.md b/README.md index ef73fbb7..b9e7c941 100644 --- a/README.md +++ b/README.md @@ -1,103 +1,30 @@ -

- typescript-action status -

+# Block Merge if Keyword in PR Diff -# Create a JavaScript Action using TypeScript +## Setup -Use this template to bootstrap the creation of a TypeScript action.:rocket: +Add a file to `.github/workflows` with similar contents to: -This template includes compilation support, tests, a validation workflow, publishing, and versioning guidance. - -If you are new, there's also a simpler introduction. See the [Hello World JavaScript Action](https://github.com/actions/hello-world-javascript-action) - -## Create an action from this template - -Click the `Use this Template` and provide the new repo details for your action - -## Code in Main - -Install the dependencies -```bash -$ npm install -``` - -Build the typescript and package it for distribution -```bash -$ npm run build && npm run package -``` - -Run the tests :heavy_check_mark: -```bash -$ npm test - - PASS ./index.test.js - ✓ throws invalid number (3ms) - ✓ wait 500 ms (504ms) - ✓ test runs (95ms) - -... -``` - -## Change action.yml - -The action.yml contains defines the inputs and output for your action. - -Update the action.yml with your name, description, inputs and outputs for your action. - -See the [documentation](https://help.github.com/en/articles/metadata-syntax-for-github-actions) - -## Change the Code - -Most toolkit and CI/CD operations involve async operations so the action is run in an async function. - -```javascript -import * as core from '@actions/core'; -... - -async function run() { - try { - ... - } - catch (error) { - core.setFailed(error.message); - } -} - -run() ``` - -See the [toolkit documentation](https://github.com/actions/toolkit/blob/master/README.md#packages) for the various packages. - -## Publish to a distribution branch - -Actions are run from GitHub repos so we will checkin the packed dist folder. - -Then run [ncc](https://github.com/zeit/ncc) and push the results: -```bash -$ npm run package -$ git add dist -$ git commit -a -m "prod dependencies" -$ git push origin releases/v1 +name: "Block @nocommit Merges" +on: [pull_request] + +jobs: + check_pr: + runs-on: ubuntu-latest + steps: + - name: Check for @nocommit + uses: itsvs/no-commit-action@releases/v2 + with: + github-token: ${{github.token}} + keyword: "@nocommit" ``` -Note: We recommend using the `--license` option for ncc, which will create a license file for all of the production node modules used in your project. - -Your action is now published! :rocket: - -See the [versioning documentation](https://github.com/actions/toolkit/blob/master/docs/action-versioning.md) +The `keyword` variable is the string that we don't want the PR to include. -## Validate - -You can now validate the action by referencing `./` in a workflow in your repo (see [test.yml](.github/workflows/test.yml)) - -```yaml -uses: ./ -with: - milliseconds: 1000 -``` +## Contributing -See the [actions tab](https://github.com/actions/typescript-action/actions) for runs of this action! :rocket: +Use [issues](https://github.com/itsvs/no-commit-action/issues)! -## Usage: +## License -After testing you can [create a v1 tag](https://github.com/actions/toolkit/blob/master/docs/action-versioning.md) to reference the stable and latest V1 action +This is a modification of the original template, and is released under the MIT license.