Files
api/plugin/package.json
Eli Bosley 4f5c367fdf feat: begin building plugin with node instead of bash (#1120)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
- Enhanced automated build and release processes with containerized
builds, improved caching, and refined artifact handling.
- Introduced new configuration options to strengthen versioning,
integrity checks, and pull request tracking.
	- Added a new Dockerfile for building the Node.js application.
- Added new environment variables for API versioning and validation
control.
	- Implemented comprehensive management of PM2 processes and state.
- Introduced a new GitHub Actions workflow for automating staging plugin
deployment upon pull request closure.
	- Updated logic for handling plugin installation and error feedback.
	- Added new asynchronous methods for managing PM2 processes.
	- Updated logging configurations for better control over log outputs.
	- Added Prettier configuration for consistent code formatting.
- Introduced a configuration to prevent the application from watching
for file changes.

- **Bug Fixes**
- Improved error handling and user feedback during the installation of
staging versions.

- **Documentation**
- Removed outdated introductory documentation to streamline project
information.

- **Chores**
- Updated deployment routines and validation steps to improve release
consistency and error handling.
- Simplified packaging and build scripts for smoother staging and
production workflows.
	- Excluded sensitive files from the Docker build context.
- Updated the `.gitignore` file to prevent unnecessary files from being
tracked.
- Adjusted the test timeout configuration for improved test reliability.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2025-02-06 12:32:41 -05:00

30 lines
1.2 KiB
JSON

{
"dependencies": {
"conventional-changelog": "^6.0.0",
"date-fns": "^4.1.0",
"glob": "^11.0.1",
"html-sloppy-escaper": "^0.1.0",
"semver": "^7.7.1",
"tsx": "^4.19.2",
"zod": "^3.24.1",
"zx": "^8.3.2"
},
"type": "module",
"scripts": {
"// Build scripts": "",
"build": "tsx scripts/build-plugin-and-txz.ts",
"build:validate": "npm run env:validate && npm run build",
"// Docker commands": "",
"docker:build": "docker build -t plugin-builder .",
"docker:run": "docker run --env-file .env -v $(pwd)/deploy:/app/deploy -v $(cd ../ && pwd)/.git:/app/.git -v $(pwd)/source:/app/source plugin-builder",
"docker:build-and-run": "npm run docker:build && npm run docker:run",
"// Environment management": "",
"env:init": "cp .env.example .env",
"env:validate": "node -e \"require('fs').existsSync('.env') || (console.error('Error: .env file missing. Run npm run env:init first') && process.exit(1))\"",
"env:clean": "rm -f .env",
"// Composite commands": "",
"start": "npm run env:validate && npm run docker:build-and-run",
"test": "npm run env:init && npm run start && npm run env:clean"
}
}