Code Monkey home page Code Monkey logo

javscript-action status

Create a JavaScript Action

Use this template to bootstrap the creation of a JavaScript action.:rocket:

This template includes tests, linting, a validation workflow, publishing, and versioning guidance.

If you are new, there's also a simpler introduction. See the 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 Master

Install the dependencies

$ npm install

Run the tests ✔️

$ 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

Change the Code

Most toolkit and CI/CD operations involve async operations so the action is run in an async function.

const core = require('@actions/core');
...

async function run() {
  try { 
      ...
  } 
  catch (error) {
    core.setFailed(error.message);
  }
}

run()

See the toolkit documentation for the various packages.

Package for distribution

GitHub Actions will run the entry point from the action.yml. Packaging assembles the code into one file that can be checked in to Git, enabling fast and reliable execution and preventing the need to check in node_modules.

Actions are run from GitHub repos. Packaging the action will create a packaged action in the dist folder.

Run package

npm run package

Since the packaged index.js is run from the dist folder.

git add dist

Create a release branch

Users shouldn't consume the action from master since that would be latest code and actions can break compatibility between major versions.

Checkin to the v1 release branch

$ git checkout -b v1
$ git commit -a -m "v1 release"
$ git push origin v1

Your action is now published! 🚀

See the versioning documentation

Usage

You can now consume the action by referencing the v1 branch

uses: actions/javascript-action@v1
with:
  milliseconds: 1000

See the actions tab for runs of this action! 🚀

kayal28's Projects

hack icon hack

A typeface designed for source code

httpd icon httpd

Mirror of Apache HTTP Server. Issues: http://issues.apache.org

igtools icon igtools

Tool for extracting and compressing .iga files

issue-label-bot icon issue-label-bot

Code For The Issue Label Bot, an App that automatically labels issues using machine learning, available on the GitHub Marketplace. This is also code for the blog article: "How to automate tasks on GitHub with machine learning for fun and profit"

jacoco-report icon jacoco-report

Github action that publishes the JaCoCo report as a comment in the Pull Request

javascript-action icon javascript-action

Create a JavaScript Action with tests, linting, workflow, publishing, and versioning

ldp icon ldp

The main LDP repository, waiting for your Pull Requests

nextcloudservices icon nextcloudservices

Android app to send notifications from Nextcloud without using GCM(Google cloud messaging)

node icon node

Node.js JavaScript runtime :sparkles::turtle::rocket::sparkles:

quantic-kernel_aosp-pe icon quantic-kernel_aosp-pe

CAF Fest Kernel---Latest CAF tag(LE.UM.3.3.2-07400-SDX55)--Upstreamed (v4.14.175) | This is my personal kernel called Quantic Kernel for AOSP builds

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.