106 lines
2.9 KiB
Markdown
106 lines
2.9 KiB
Markdown
# Deployment Guide
|
|
|
|
Quick instructions for deploying a new version of the Text Texture Generator addon.
|
|
|
|
## Prerequisites
|
|
|
|
- Git repository with proper tags
|
|
- Python 3.10+
|
|
- All changes committed and pushed to main branch
|
|
|
|
## Deployment Steps
|
|
|
|
### 1. Create Version Tag
|
|
|
|
```bash
|
|
# Create and push a version tag
|
|
git tag v1.1.0
|
|
git push origin v1.1.0
|
|
```
|
|
|
|
### 2. Generate Changelog (Optional)
|
|
|
|
```bash
|
|
# Generate changelog for the new version
|
|
python3 build/generate_changelog.py --version 1.1.0 --output CHANGELOG_v1.1.0.md
|
|
|
|
# Or generate full changelog
|
|
python3 build/generate_changelog.py --full --output CHANGELOG.md
|
|
```
|
|
|
|
### 3. Build Packages
|
|
|
|
```bash
|
|
# Build both versions (recommended)
|
|
python3 scripts/build_addon.py --type all --version 1.1.0
|
|
|
|
# Or build individually:
|
|
# python3 scripts/build_addon.py --type full --version 1.1.0
|
|
# python3 scripts/build_addon.py --type free --version 1.1.0
|
|
```
|
|
|
|
### 4. Validate Packages
|
|
|
|
```bash
|
|
# Validate the generated packages
|
|
python3 build/validate_package.py dist/text_texture_generator_v1.1.0.zip --type full
|
|
python3 build/validate_package.py dist/text_texture_generator_v1.1.0_free.zip --type free
|
|
```
|
|
|
|
### 5. Deploy
|
|
|
|
Upload the validated packages from the `dist/` directory:
|
|
|
|
- `text_texture_generator_v1.1.0.zip` (Full version)
|
|
- `text_texture_generator_v1.1.0_free.zip` (Free version)
|
|
|
|
## Build System Overview
|
|
|
|
The deployment uses a sophisticated build-time file exclusion system:
|
|
|
|
- **Version Sync**: [`sync_version.py`](build/sync_version.py) automatically updates version information from git tags
|
|
- **Package Build**: [`build_addon.py`](scripts/build_addon.py) creates separate packages with different feature sets
|
|
- **Validation**: [`validate_package.py`](build/validate_package.py) ensures package integrity
|
|
- **Changelog**: [`generate_changelog.py`](build/generate_changelog.py) creates release notes from git history
|
|
|
|
## Configuration Files
|
|
|
|
- [`build/config.json`](build/config.json) - Project metadata and build settings
|
|
- [`build/file_exclusions.json`](build/file_exclusions.json) - Defines which files are excluded from free builds
|
|
|
|
## Troubleshooting
|
|
|
|
### No Git Tags Found
|
|
|
|
If version sync fails, ensure you have created and pushed the version tag:
|
|
|
|
```bash
|
|
git tag -l # List existing tags
|
|
git tag v1.1.0 # Create new tag
|
|
git push origin v1.1.0 # Push to remote
|
|
```
|
|
|
|
### Build Validation Fails
|
|
|
|
Check the validation output for specific errors:
|
|
|
|
```bash
|
|
python3 build/validate_package.py dist/your_package.zip --type full
|
|
```
|
|
|
|
### Version Mismatch
|
|
|
|
The build system automatically syncs versions from git tags. If you need to override:
|
|
|
|
```bash
|
|
python3 build/sync_version.py --version 1.1.0 --type full
|
|
```
|
|
|
|
## Quick Deploy Command
|
|
|
|
For experienced users, deploy in one command:
|
|
|
|
```bash
|
|
git tag v1.1.0 && git push origin v1.1.0 && python3 scripts/build_addon.py --type all --version 1.1.0 && python3 build/validate_package.py dist/text_texture_generator_v1.1.0.zip && python3 build/validate_package.py dist/text_texture_generator_v1.1.0_free.zip
|
|
```
|