github-node-deploy-workflow/.github/workflows/main.yml

53 lines
1.8 KiB
YAML
Raw Normal View History

2023-06-25 04:49:23 +00:00
name: Build/Publish
on:
2023-06-25 05:00:39 +00:00
workflow_call:
2023-06-25 04:49:23 +00:00
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Use Node.js
uses: actions/setup-node@v3
with:
node-version: 18.x
cache: 'npm'
- run: npm ci
- run: npm run build --if-present
2023-06-25 07:06:46 +00:00
- run: touch build.tar.gz
- name: Archive Release
uses: thedoctor0/zip-release@0.7.1
with:
type: tar
filename: build.tar.gz
2023-06-25 07:13:35 +00:00
exclusions: "*.git* build.tar.gz node_modules/**"
2023-06-25 05:44:46 +00:00
- name: Cache build
uses: actions/upload-artifact@v3
2023-06-25 04:49:23 +00:00
with:
name: cache-${{ github.run_id }}-${{ github.run_attempt }}
path: build.tar.gz
2023-06-25 04:49:23 +00:00
publish:
runs-on: ubuntu-latest
needs: build
steps:
- uses: actions/checkout@v3
2023-06-25 07:12:21 +00:00
- name: Use Node.js
uses: actions/setup-node@v3
with:
node-version: 18.x
cache: 'npm'
- name: Fetch build cache
uses: actions/download-artifact@v3
with:
name: cache-${{ github.run_id }}-${{ github.run_attempt }}
- name: Extract build cache
run: tar xvf build.tar.gz && rm build.tar.gz -f
2023-06-25 04:49:23 +00:00
- name: Install SSH key
uses: shimataro/ssh-key-action@v2
with:
key: ${{ secrets.GITEA_SSH_KEY }}
name: gitea # optional
known_hosts: ${{ secrets.GITEA_KNOWN_HOST }}
- run: npm run semantic-release