52 строки
1.6 KiB
YAML
52 строки
1.6 KiB
YAML
# This is a basic workflow to help you get started with Actions
|
|
|
|
name: Build VSIX
|
|
|
|
# Controls when the action will run. Triggers the workflow on push or pull request
|
|
# events but only for the master branch
|
|
on:
|
|
workflow_dispatch:
|
|
inputs:
|
|
|
|
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
|
|
jobs:
|
|
# This workflow contains a single job called "build"
|
|
build:
|
|
# The type of runner that the job will run on
|
|
runs-on: ubuntu-latest
|
|
|
|
# Steps represent a sequence of tasks that will be executed as part of the job
|
|
steps:
|
|
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
|
|
- uses: actions/checkout@v2
|
|
|
|
- name: Setup Node.js environment
|
|
uses: actions/setup-node@v2.1.2
|
|
with:
|
|
node-version: '20'
|
|
check-latest: true
|
|
- name: Get Short SHA
|
|
id: get-short-sha
|
|
run: echo "::set-output name=sha::$(git rev-parse --short ${GITHUB_SHA})"
|
|
|
|
- name: Update the package version
|
|
uses: jacobtomlinson/gha-find-replace@master
|
|
with:
|
|
find: "\"version\": \"(\\d+\\.\\d+\\.\\d+)\""
|
|
replace: "\"version\": \"$1-${{ steps.get-short-sha.outputs.sha }}\""
|
|
include: "package.json"
|
|
exclude: ".git"
|
|
|
|
# Runs a single command using the runners shell
|
|
- name: Build the VSIX
|
|
run: |
|
|
yarn install
|
|
yarn run package
|
|
|
|
- name: Upload a Build Artifact
|
|
uses: actions/upload-artifact@v2.1.4
|
|
with:
|
|
name: makefile-tools.vsix
|
|
path: ./makefile-tools.vsix
|
|
if-no-files-found: error
|