Skip to content

Commit 2c7cf66

Browse files
committed
Overhauled publish workflow with manual triggers, dual registry support, and comprehensive validation
- Changed from release-triggered to manual workflow_dispatch with version bump options (patch/minor/major/prerelease) - Added validation job with linting, testing, coverage checks, and n8n package structure verification - Implemented dual publishing: NPM (@Nskha scope) and GitHub Packages (@Automations-Project scope) - Added automatic version bumping based on NPM registry state to prevent conflicts - Integrate
1 parent dc07d3b commit 2c7cf66

21 files changed

Lines changed: 1900 additions & 1021 deletions

.build-full/README.md

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
# Full Version Source Files
2+
3+
This directory contains FFmpeg/Sharp-based conversion files for the **full** version of the package.
4+
5+
## Required Files
6+
7+
Place these files here to enable full version builds:
8+
9+
### FFmpeg-specific files (copy from git history or backup):
10+
- `ffmpegMethods.ts` - Video conversion using FFmpeg/child_process
11+
- `sharpMethods.ts` - Image conversion using Sharp/fs
12+
- `utils.ts` - File system utilities (fs, os, path)
13+
14+
### Variant files (full version of existing files):
15+
- `methods.full.ts` - Methods with FFmpeg imports and conversion calls
16+
- `fields.full.ts` - Fields with "Change Encoding" UI options
17+
- `extentionConvetor.full.ts` - Extension converter with FFmpeg calls
18+
19+
## Build Commands
20+
21+
```bash
22+
# Check status of full version files
23+
pnpm run build:full status
24+
25+
# Build cloud version (default, n8n Cloud compatible)
26+
pnpm run build
27+
28+
# Build full version (self-hosted only)
29+
pnpm run build:full
30+
31+
# Build both variants
32+
pnpm run build:both
33+
```
34+
35+
## Publishing
36+
37+
```bash
38+
# Publish cloud version (default tag)
39+
npm publish --access public
40+
41+
# Publish full version (with "full" tag)
42+
pnpm run publish:full
43+
```
44+
45+
## Installation (for users)
46+
47+
```bash
48+
# Cloud version (default) - works on n8n Cloud
49+
npm install @nskha/n8n-nodes-robolly
50+
51+
# Full version - self-hosted only, requires FFmpeg
52+
npm install @nskha/n8n-nodes-robolly@full
53+
```
54+
55+
## Important Notes
56+
57+
⚠️ **Full version requirements:**
58+
- FFmpeg must be installed on the system
59+
- NOT compatible with n8n Cloud
60+
- Use only for self-hosted n8n instances
61+
62+
**Cloud version (default):**
63+
- Works on n8n Cloud and self-hosted
64+
- No local conversion features
65+
- Images/videos returned in original API format

.github/workflows/ci.yml

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
branches: [ master, main, develop ]
6+
pull_request:
7+
branches: [ master, main, develop ]
8+
9+
jobs:
10+
build-and-test:
11+
runs-on: ubuntu-latest
12+
13+
strategy:
14+
matrix:
15+
node-version: [18.x, 20.x]
16+
17+
steps:
18+
- name: Checkout code
19+
uses: actions/checkout@v4
20+
21+
- name: Install pnpm
22+
uses: pnpm/action-setup@v4
23+
with:
24+
version: 9
25+
26+
- name: Setup Node.js ${{ matrix.node-version }}
27+
uses: actions/setup-node@v4
28+
with:
29+
node-version: ${{ matrix.node-version }}
30+
cache: 'pnpm'
31+
32+
- name: Install dependencies
33+
run: pnpm install --frozen-lockfile
34+
35+
- name: Build
36+
run: pnpm run build
37+
38+
- name: Lint
39+
run: pnpm run lint

0 commit comments

Comments
 (0)