Skip to content

Deploy

Deploy #21

Workflow file for this run

name: Deploy
on:
workflow_dispatch:
inputs:
version_tag:
description: "Version tag for the package"
required: true
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
ref: ${{ inputs.version_tag }}
- uses: actions/setup-node@v4
with:
node-version: 18
- name: Update package version
run: |
version=${{ inputs.version_tag }}
npm version $version --no-git-tag-version
- name: Install packages
run: |
npm ci
- name: Build
run: |
npm run build
- name: Generate Docs
run: |
npm run build-docs
mv docs ../docs_wip
- name: Remove Non-distributables
run: |
rm .gitignore
rm tsconfig.json
rm wisp.ts
rm -rf wisp_api wisp_socket .github
- name: Publish
uses: JS-DevTools/npm-publish@v3
with:
token: ${{ secrets.NPM_PUBLISH_TOKEN }}
- name: Configure Git User
run: |
git config user.name github-actions
git config user.email [email protected]
- name: Push package version change
run: |
git add package.json
git add package-lock.json
git commit -m "Update package.json version to: ${{ inputs.version_tag }}" && \
git push --force-with-lease origin main || \
echo "Version tag unchanaged"
- name: Publish Docs
run: |
# Delete everything except .git and .
shopt -s dotglob
rm -rf !( .git | .)
shopt -u dotglob
# Move the docs back and commit only them
mv ../docs_wip docs
git add .
git commit -m "Update Docs for version: ${{ inputs.version_tag }}"
git push --force origin HEAD:docs