Move blockchain app READMEs to centralized documentation
Some checks failed
API Endpoint Tests / test-api-endpoints (push) Successful in 10s
Blockchain Synchronization Verification / sync-verification (push) Failing after 3s
CLI Tests / test-cli (push) Failing after 4s
Documentation Validation / validate-docs (push) Successful in 8s
Documentation Validation / validate-policies-strict (push) Successful in 4s
Integration Tests / test-service-integration (push) Successful in 38s
Multi-Node Blockchain Health Monitoring / health-check (push) Successful in 2s
P2P Network Verification / p2p-verification (push) Successful in 3s
Security Scanning / security-scan (push) Successful in 40s
Smart Contract Tests / test-solidity (map[name:aitbc-token path:packages/solidity/aitbc-token]) (push) Successful in 15s
Smart Contract Tests / lint-solidity (push) Successful in 8s
Some checks failed
API Endpoint Tests / test-api-endpoints (push) Successful in 10s
Blockchain Synchronization Verification / sync-verification (push) Failing after 3s
CLI Tests / test-cli (push) Failing after 4s
Documentation Validation / validate-docs (push) Successful in 8s
Documentation Validation / validate-policies-strict (push) Successful in 4s
Integration Tests / test-service-integration (push) Successful in 38s
Multi-Node Blockchain Health Monitoring / health-check (push) Successful in 2s
P2P Network Verification / p2p-verification (push) Successful in 3s
Security Scanning / security-scan (push) Successful in 40s
Smart Contract Tests / test-solidity (map[name:aitbc-token path:packages/solidity/aitbc-token]) (push) Successful in 15s
Smart Contract Tests / lint-solidity (push) Successful in 8s
- Relocate blockchain-event-bridge README content to docs/apps/blockchain/blockchain-event-bridge.md - Relocate blockchain-explorer README content to docs/apps/blockchain/blockchain-explorer.md - Replace app READMEs with redirect notices pointing to new documentation location - Consolidate documentation in central docs/ directory for better organization
This commit is contained in:
223
docs/apps/plugins/plugin-marketplace.md
Normal file
223
docs/apps/plugins/plugin-marketplace.md
Normal file
@@ -0,0 +1,223 @@
|
||||
# Plugin Marketplace
|
||||
|
||||
## Status
|
||||
✅ Operational
|
||||
|
||||
## Overview
|
||||
Marketplace plugin for discovering, installing, and managing AITBC plugins and extensions.
|
||||
|
||||
## Architecture
|
||||
|
||||
### Core Components
|
||||
- **Plugin Catalog**: Catalog of available plugins
|
||||
- **Plugin Installer**: Handles plugin installation and updates
|
||||
- **Dependency Manager**: Manages plugin dependencies
|
||||
- **Version Manager**: Handles plugin versioning
|
||||
- **License Manager**: Manages plugin licenses
|
||||
|
||||
## Quick Start (End Users)
|
||||
|
||||
### Prerequisites
|
||||
- Python 3.13+
|
||||
- Internet access for plugin downloads
|
||||
- Sufficient disk space for plugins
|
||||
|
||||
### Installation
|
||||
```bash
|
||||
cd /opt/aitbc/apps/plugin-marketplace
|
||||
.venv/bin/pip install -r requirements.txt
|
||||
```
|
||||
|
||||
### Configuration
|
||||
Set environment variables in `.env`:
|
||||
```bash
|
||||
PLUGIN_REGISTRY_URL=https://plugins.aitbc.com
|
||||
INSTALLATION_PATH=/opt/aitbc/plugins
|
||||
AUTO_UPDATE_ENABLED=false
|
||||
```
|
||||
|
||||
### Running the Service
|
||||
```bash
|
||||
.venv/bin/python main.py
|
||||
```
|
||||
|
||||
## Developer Guide
|
||||
|
||||
### Development Setup
|
||||
1. Clone the repository
|
||||
2. Create virtual environment: `python -m venv .venv`
|
||||
3. Install dependencies: `pip install -r requirements.txt`
|
||||
4. Configure plugin registry
|
||||
5. Run tests: `pytest tests/`
|
||||
|
||||
### Project Structure
|
||||
```
|
||||
plugin-marketplace/
|
||||
├── src/
|
||||
│ ├── plugin_catalog/ # Plugin catalog
|
||||
│ ├── plugin_installer/ # Plugin installation
|
||||
│ ├── dependency_manager/ # Dependency management
|
||||
│ ├── version_manager/ # Version management
|
||||
│ └── license_manager/ # License management
|
||||
├── tests/ # Test suite
|
||||
└── pyproject.toml # Project configuration
|
||||
```
|
||||
|
||||
### Testing
|
||||
```bash
|
||||
# Run all tests
|
||||
pytest tests/
|
||||
|
||||
# Run installer tests
|
||||
pytest tests/test_installer.py
|
||||
|
||||
# Run dependency manager tests
|
||||
pytest tests/test_dependencies.py
|
||||
```
|
||||
|
||||
## API Reference
|
||||
|
||||
### Plugin Catalog
|
||||
|
||||
#### List Plugins
|
||||
```http
|
||||
GET /api/v1/marketplace/plugins?category=analytics&limit=20
|
||||
```
|
||||
|
||||
#### Get Plugin Details
|
||||
```http
|
||||
GET /api/v1/marketplace/plugins/{plugin_id}
|
||||
```
|
||||
|
||||
#### Search Plugins
|
||||
```http
|
||||
POST /api/v1/marketplace/plugins/search
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"query": "analytics",
|
||||
"filters": {
|
||||
"category": "string",
|
||||
"version": "string"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Plugin Installation
|
||||
|
||||
#### Install Plugin
|
||||
```http
|
||||
POST /api/v1/marketplace/plugins/install
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"plugin_id": "string",
|
||||
"version": "string",
|
||||
"auto_dependencies": true
|
||||
}
|
||||
```
|
||||
|
||||
#### Uninstall Plugin
|
||||
```http
|
||||
DELETE /api/v1/marketplace/plugins/{plugin_id}
|
||||
```
|
||||
|
||||
#### Update Plugin
|
||||
```http
|
||||
POST /api/v1/marketplace/plugins/{plugin_id}/update
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"version": "string"
|
||||
}
|
||||
```
|
||||
|
||||
#### Get Installation Status
|
||||
```http
|
||||
GET /api/v1/marketplace/plugins/{plugin_id}/status
|
||||
```
|
||||
|
||||
### Dependencies
|
||||
|
||||
#### Get Plugin Dependencies
|
||||
```http
|
||||
GET /api/v1/marketplace/plugins/{plugin_id}/dependencies
|
||||
```
|
||||
|
||||
#### Resolve Dependencies
|
||||
```http
|
||||
POST /api/v1/marketplace/dependencies/resolve
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"plugin_ids": ["plugin1", "plugin2"]
|
||||
}
|
||||
```
|
||||
|
||||
### Versions
|
||||
|
||||
#### List Plugin Versions
|
||||
```http
|
||||
GET /api/v1/marketplace/plugins/{plugin_id}/versions
|
||||
```
|
||||
|
||||
#### Get Version Compatibility
|
||||
```http
|
||||
GET /api/v1/marketplace/plugins/{plugin_id}/compatibility?version=1.0.0
|
||||
```
|
||||
|
||||
### Licenses
|
||||
|
||||
#### Validate License
|
||||
```http
|
||||
POST /api/v1/marketplace/licenses/validate
|
||||
Content-Type: application/json
|
||||
|
||||
{
|
||||
"plugin_id": "string",
|
||||
"license_key": "string"
|
||||
}
|
||||
```
|
||||
|
||||
#### Get License Info
|
||||
```http
|
||||
GET /api/v1/marketplace/plugins/{plugin_id}/license
|
||||
```
|
||||
|
||||
## Configuration
|
||||
|
||||
### Environment Variables
|
||||
- `PLUGIN_REGISTRY_URL`: URL for plugin registry
|
||||
- `INSTALLATION_PATH`: Path for plugin installation
|
||||
- `AUTO_UPDATE_ENABLED`: Enable automatic plugin updates
|
||||
- `MAX_CONCURRENT_INSTALLS`: Maximum concurrent installations
|
||||
|
||||
### Plugin Categories
|
||||
- **Analytics**: Data analysis and reporting plugins
|
||||
- **Security**: Security scanning and monitoring plugins
|
||||
- **Infrastructure**: Infrastructure management plugins
|
||||
- **Trading**: Trading and exchange plugins
|
||||
|
||||
### Installation Parameters
|
||||
- **Installation Path**: Directory for plugin installation
|
||||
- **Dependency Resolution**: Automatic dependency handling
|
||||
- **Version Constraints**: Version compatibility checks
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
**Plugin installation failed**: Check plugin compatibility and dependencies.
|
||||
|
||||
**License validation failed**: Verify license key and plugin ID.
|
||||
|
||||
**Dependency resolution failed**: Check dependency conflicts and versions.
|
||||
|
||||
**Auto-update not working**: Verify auto-update configuration and registry connectivity.
|
||||
|
||||
## Security Notes
|
||||
|
||||
- Validate plugin signatures before installation
|
||||
- Scan plugins for security vulnerabilities
|
||||
- Use HTTPS for plugin downloads
|
||||
- Implement plugin sandboxing
|
||||
- Regularly update plugins for security patches
|
||||
- Monitor for malicious plugin behavior
|
||||
Reference in New Issue
Block a user