🚀 A GitHub action to publish a new release of the repository

Overview

typescript-action status

Create a JavaScript Action using TypeScript

Use this template to bootstrap the creation of a TypeScript action. 🚀

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

Create an action from this template

Click the Use this Template and provide the new repo details for your action

Code in Main

First, you'll need to have a reasonably modern version of node handy. This won't work with versions older than 9, for instance.

Install the dependencies

$ npm install

Build the typescript and package it for distribution

$ npm run build && npm run package

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 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.

import * as core from '@actions/core';
...

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

run()

See the toolkit documentation 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 and push the results:

$ npm run package
$ git add dist
$ git commit -a -m "prod dependencies"
$ git push origin releases/v1

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! 🚀

See the versioning documentation

Validate

You can now validate the action by referencing ./ in a workflow in your repo (see test.yml)

uses: ./
with:
  milliseconds: 1000

See the actions tab for runs of this action! 🚀

Usage:

After testing you can create a v1 tag to reference the stable and latest V1 action

Comments
Releases(v1.2.1)
  • v1.2.1(Jun 28, 2022)

    What's Changed

    • fix: filter out non-semver commits by @henrycunh in https://github.com/clicampo/action-publish-semver-release/pull/36

    Full Changelog: https://github.com/clicampo/action-publish-semver-release/compare/v1.2.0...v1.2.1

    Source code(tar.gz)
    Source code(zip)
  • v1.2.0(Jun 26, 2022)

    What's Changed

    • feat: add discord support by @henrycunh in https://github.com/clicampo/action-publish-semver-release/pull/33

    Full Changelog: https://github.com/clicampo/action-publish-semver-release/compare/v1.1.0...v1.2.0

    Source code(tar.gz)
    Source code(zip)
  • v1.1.0(Jun 9, 2022)

    What's Changed

    • feat: add support to chore by @gris in https://github.com/clicampo/action-publish-semver-release/pull/27

    New Contributors

    • @gris made their first contribution in https://github.com/clicampo/action-publish-semver-release/pull/27

    Full Changelog: https://github.com/clicampo/action-publish-semver-release/compare/v1.0.4...v1.1.0

    Source code(tar.gz)
    Source code(zip)
  • v1.0.4(Apr 26, 2022)

    What's Changed

    • fix: correct production version bump and add tests by @henrycunh in https://github.com/clicampo/action-publish-semver-release/pull/6

    Full Changelog: https://github.com/clicampo/action-publish-semver-release/compare/v1.0.3...v1.0.4

    Source code(tar.gz)
    Source code(zip)
  • v1.0.3(Apr 26, 2022)

  • v1.0.1(Apr 26, 2022)

  • v1.0.0(Apr 25, 2022)

    What's Changed

    • feat: add better error messages on tagReleaseCandidate by @henrycunh in https://github.com/clicampo/action-publish-semver-release/pull/2
    • feat: support slack notifications by @henrycunh in https://github.com/clicampo/action-publish-semver-release/pull/4
    • chore(deps-dev): bump @antfu/eslint-config from 0.20.7 to 0.21.0 by @dependabot in https://github.com/clicampo/action-publish-semver-release/pull/3

    New Contributors

    • @henrycunh made their first contribution in https://github.com/clicampo/action-publish-semver-release/pull/2
    • @dependabot made their first contribution in https://github.com/clicampo/action-publish-semver-release/pull/3

    Full Changelog: https://github.com/clicampo/action-publish-semver-release/commits/v1.0.0

    Source code(tar.gz)
    Source code(zip)
Owner
Clicampo
Clicampo
Easily publish notes to the web This plugin integrates with obsius.site to publish markdown notes on the web.

Obsius Publish Easily publish notes to the web This plugin integrates with obsius.site to publish markdown notes on the web. Limitations The type of c

Jon Grythe Stødle 66 Dec 20, 2022
Micro.publish is an Obsidian plugin to publish notes directly to Micro.blog, written in TypeScript

Micro.publish Micro.publish is a community maintained plugin for Obsidian to publish notes to a Micro.blog blog. Installing This plugin will be availa

Otavio Cordeiro 14 Dec 9, 2022
Semantic Release plugin to create and publish NuGet packages.

semantic-release-nuget semantic-release plugin to create and publish a NuGet package. Step Description verifyConditions Verify the presence of the NUG

DroidSolutions 6 Jan 2, 2023
🏏 GitHub action to split your Git release tag into SemVer 2.0 parts

?? Git Tag Action GitHub action to split your Git release tag into SemVer 2.0 parts This is a simple action to split your git tag, usually for release

Noel 5 Oct 31, 2022
☁️ Publish your npm package to a GitHub repository branch

git-publish Publish your npm package to a Git branch. Support this project by ⭐️ starring and sharing it. Follow me to see what other cool projects I'

hiroki osame 28 Oct 21, 2022
A GitHub action to generate a stackaid.json file based on your repository's dependency graph

generate-stackaid-json A GitHub action to generate a stackaid.json file based on your repository's dependency graph This action is primarily intended

StackAid 5 Sep 15, 2022
The Blitz.js Recipe for installing @semantic-release/github.

semantic-release-github The Blitz.js Recipe for installing @semantic-release/github. blitz install custom-recipes/semantic-release-github -y More info

Custom Recipes 1 Apr 9, 2022
GitHub Action that posts the report in a comment on a GitHub Pull Request from coverage data generated by nyc (istanbul)

GitHub Action: Report NYC coverage GitHub Action that posts the report in a comment on a GitHub Pull Request from coverage data generated by nyc (ista

Sid 16 Nov 23, 2022
A GitHub action to submit your dependency graph from your Mill build to GitHub.

Mill Dependency Submission A GitHub action to submit your dependency graph from your Mill build to GitHub via their Dependency Submission API. The mai

Chris Kipp 6 Dec 15, 2022
A GitHub Action that allows to debug GitHub workflows using VS Code.

VS Code Server Action A GitHub Action that allows to debug GitHub workflows using VS Code. Failing CI builds can be annoying especially since we don't

stateful 18 Dec 23, 2022
Automatically sync your leetcode solutions to your github account - top 5 trending GitHub repository

LeetHub - Automatically sync your code to GitHub. Top 5 Trending JavaScript Repositories Available on: What is LeetHub? A chrome extension that automa

Qasim Wani 2.8k Dec 31, 2022
This React-Based WebPage allows the client/user system to create their own blog, where users can publish their own opinions.

Getting Started with Create React App This project was bootstrapped with Create React App. Available Scripts In the project directory, you can run: np

Gauri Bhand 4 Jul 28, 2022
Like Obsidian Publish but for self-hosting. Plugin integrations for dataview, admonition, and more.

Obsidian Export Obsidian Publish is great but lacks support for many of the plugins we Obsidian addicts have grown accustomed to — in particular Datav

null 12 Nov 28, 2022
Strapi V4 Plugin to schedule publish and depublish actions

Strapi plugin scheduler This plugin allows you to publish and depublish collection types in the future. There are a couple of steps necessary to get t

Webbio 12 Nov 24, 2022
Upload or Upload & Publish your bundle (apk or aab) to Huawei AppGallery with ConnectApi

appgallery-publisher Upload/Publish your bundle (apk or aab) to AppGallery automatically with appgallery-publisher Usage Single Javascript File Bash F

Mustafa Yiğit 17 Sep 19, 2022
Publish your Obsidian note to a Telegraph page.

Obsidian Telegraph Publish Publish your Obsidian note to a Telegraph page. Features: Publish the active file to a new Telegraph page (create). Publish

Xiao Meng 21 Dec 12, 2022
Free Obisidian Publish alternative, for publishing your digital garden.

What is MindStone? MindStone is a free open-source alternative solution to Obsidian Publish Here how it look like once published, checkout demo versio

Tuan Cao 297 Dec 30, 2022
Write on Obsidian. Publish to Ghost with a single click.

Obsidian & Ghost A simple plugin for Obsidian to publish to Ghost site with a single click. How to use Create a custom integration follow this link. Y

Jay Nguyen 36 Dec 22, 2022
Recursively publish ESM packages as CommonJS!

Commonify.js For us who are still relying on CommonJS, or using Electron which does not support ESM. ?? See also build-electron I made this tool that

Mikael Finstad 31 Dec 29, 2022