cleanup
This commit is contained in:
48
mc_test/.gitignore
vendored
Executable file
48
mc_test/.gitignore
vendored
Executable file
@ -0,0 +1,48 @@
|
||||
# Docker
|
||||
.env
|
||||
docker-compose.override.yml
|
||||
|
||||
# Python
|
||||
__pycache__/
|
||||
*.py[cod]
|
||||
*$py.class
|
||||
*.pyc
|
||||
venv/
|
||||
env/
|
||||
.venv/
|
||||
|
||||
# Logs
|
||||
*.log
|
||||
logs/
|
||||
|
||||
# Database
|
||||
*.db
|
||||
*.sqlite
|
||||
|
||||
# Generated SQL files with passwords (SECURITY)
|
||||
*custom*.sql
|
||||
*-admin-user.sql
|
||||
!002-create-admin-user.sql # Except default template
|
||||
*-GENERATED.sql
|
||||
*-DEFAULT-BACKUP.sql
|
||||
update-*.sql
|
||||
create-user-*.sql
|
||||
|
||||
# IDE
|
||||
.vscode/
|
||||
.idea/
|
||||
*.swp
|
||||
*.swo
|
||||
|
||||
# OS
|
||||
.DS_Store
|
||||
Thumbs.db
|
||||
|
||||
# Temporary files
|
||||
*.tmp
|
||||
*.temp
|
||||
|
||||
# PostgreSQL data (if running locally)
|
||||
data/
|
||||
dist/
|
||||
node_modules/
|
||||
@ -1,131 +0,0 @@
|
||||
# Environment Configuration Guide
|
||||
|
||||
## Overview
|
||||
|
||||
All hardcoded IP addresses and domains have been moved to environment variables for easier configuration across different environments.
|
||||
|
||||
## Quick Start
|
||||
|
||||
1. **Copy the example file:**
|
||||
```bash
|
||||
cp env.example .env
|
||||
```
|
||||
|
||||
2. **Edit `.env` with your values:**
|
||||
```bash
|
||||
# For local development
|
||||
VITE_API_URL=http://localhost:8000
|
||||
VITE_DEV_HOST=192.168.200.10
|
||||
|
||||
# For production
|
||||
VITE_API_URL=https://mc.exbytestudios.com
|
||||
VITE_PROD_DOMAIN=mc.exbytestudios.com
|
||||
```
|
||||
|
||||
3. **Start development server:**
|
||||
```bash
|
||||
npm run dev
|
||||
```
|
||||
|
||||
## Environment Variables
|
||||
|
||||
### API Configuration
|
||||
- `VITE_API_URL` - Base URL for API endpoints (default: `https://mc.exbytestudios.com`)
|
||||
- Development: `http://localhost:8000`
|
||||
- Production: `https://mc.exbytestudios.com`
|
||||
|
||||
### Domain Configuration
|
||||
- `VITE_PROD_DOMAIN` - Production domain (default: `mc.exbytestudios.com`)
|
||||
- `VITE_BACKUP_DOMAIN` - Backup domain (default: `backup.mc.exbytestudios.com`)
|
||||
- `VITE_TEST_DOMAIN` - Test domain (default: `test.exbytestudios.com`)
|
||||
|
||||
### Development Server Configuration
|
||||
- `VITE_DEV_HOST` - Vite dev server host (default: `192.168.200.10`)
|
||||
- `VITE_DEV_PORT` - Vite dev server port (default: `5173`)
|
||||
- `VITE_DEV_ALLOWED_HOST` - Allowed host for HMR (default: `test.exbytestudios.com`)
|
||||
|
||||
### Security Settings
|
||||
- `VITE_ENABLE_CERTIFICATE_PINNING` - Enable/disable certificate pinning (default: `true`)
|
||||
- Set to `false` in development
|
||||
- Set to `true` in production
|
||||
- `VITE_CERTIFICATE_PINNING_FALLBACK` - Enable fallback for certificate pinning (default: `true`)
|
||||
|
||||
### Development Settings
|
||||
- `VITE_DEBUG_MODE` - Enable debug mode (default: `false`)
|
||||
- `VITE_LOG_LEVEL` - Logging level: `debug`, `info`, `warn`, `error` (default: `info`)
|
||||
|
||||
## Files Using Environment Variables
|
||||
|
||||
### Configuration Files
|
||||
- `vite.config.ts` - Uses `VITE_DEV_HOST`, `VITE_DEV_PORT`, `VITE_DEV_ALLOWED_HOST`
|
||||
- `src/renderer/config/api.ts` - Uses `VITE_API_URL`
|
||||
|
||||
### Service Files
|
||||
- `src/renderer/services/CertificatePinning.ts` - Uses `VITE_PROD_DOMAIN`, `VITE_BACKUP_DOMAIN`
|
||||
- `src/renderer/utils/csp.ts` - Uses `VITE_PROD_DOMAIN`
|
||||
- `src/renderer/mocks/mockMachines.ts` - Uses `VITE_DEV_HOST`
|
||||
|
||||
### Static Configuration Files (Manual Update Required)
|
||||
- `csp-config.json` - Update production domains manually to match `.env`
|
||||
- `index.html` - CSP meta tag uses hardcoded values (acceptable for development)
|
||||
|
||||
## Development vs Production
|
||||
|
||||
### Development (.env.development)
|
||||
```env
|
||||
VITE_API_URL=http://localhost:8000
|
||||
VITE_DEV_HOST=192.168.200.10
|
||||
VITE_ENABLE_CERTIFICATE_PINNING=false
|
||||
VITE_DEBUG_MODE=true
|
||||
VITE_LOG_LEVEL=debug
|
||||
```
|
||||
|
||||
### Production (.env.production)
|
||||
```env
|
||||
VITE_API_URL=https://mc.exbytestudios.com
|
||||
VITE_PROD_DOMAIN=mc.exbytestudios.com
|
||||
VITE_ENABLE_CERTIFICATE_PINNING=true
|
||||
VITE_DEBUG_MODE=false
|
||||
VITE_LOG_LEVEL=info
|
||||
```
|
||||
|
||||
## Migration from Hardcoded Values
|
||||
|
||||
All instances of hardcoded IP (`192.168.200.10`) and domains (`*.exbytestudios.com`) have been replaced with environment variables:
|
||||
|
||||
### Before
|
||||
```typescript
|
||||
const API_URL = 'https://mc.exbytestudios.com';
|
||||
host: '192.168.200.10'
|
||||
```
|
||||
|
||||
### After
|
||||
```typescript
|
||||
const API_URL = import.meta.env.VITE_API_URL || 'https://mc.exbytestudios.com';
|
||||
host: import.meta.env.VITE_DEV_HOST || '192.168.200.10'
|
||||
```
|
||||
|
||||
## Security Notes
|
||||
|
||||
1. **Never commit `.env` files to git** - They are in `.gitignore` by default
|
||||
2. **Use different values for each environment** - Development, Testing, Production
|
||||
3. **Enable certificate pinning in production** - Set `VITE_ENABLE_CERTIFICATE_PINNING=true`
|
||||
4. **Update `csp-config.json`** - When changing production domains, update CSP config manually
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
### API connection fails
|
||||
- Check `VITE_API_URL` matches your API server
|
||||
- Verify API server is running
|
||||
- Check network connectivity
|
||||
|
||||
### HMR (Hot Module Replacement) not working
|
||||
- Verify `VITE_DEV_HOST` is accessible
|
||||
- Check `VITE_DEV_ALLOWED_HOST` matches your access domain
|
||||
- Ensure WebSocket connections are allowed
|
||||
|
||||
### Certificate pinning errors
|
||||
- Disable in development: `VITE_ENABLE_CERTIFICATE_PINNING=false`
|
||||
- Verify certificate fingerprints in production
|
||||
- Check `VITE_PROD_DOMAIN` matches actual certificate domain
|
||||
|
||||
Reference in New Issue
Block a user