Add --local-only flag to website-creator for local testing before deploy
This commit is contained in:
@@ -10,14 +10,20 @@ Creates complete Astro projects with:
|
||||
- Cookie consent management
|
||||
- Consent logging database (Astro DB)
|
||||
- PDPA-compliant legal pages
|
||||
- Easypanel deployment
|
||||
- Easypanel deployment (optional with --local-only)
|
||||
|
||||
Usage:
|
||||
python3 create_astro_website.py \
|
||||
--name "Deal Plus Tech" \
|
||||
--type "corporate" \
|
||||
--languages "th,en" \
|
||||
python3 create_astro_website.py \\
|
||||
--name "Deal Plus Tech" \\
|
||||
--type "corporate" \\
|
||||
--languages "th,en" \\
|
||||
--output "./dealplustech-website"
|
||||
|
||||
# Local only (skip Gitea/Easypanel):
|
||||
python3 create_astro_website.py \\
|
||||
--name "My Website" \\
|
||||
--local-only \\
|
||||
--output "./my-website"
|
||||
"""
|
||||
|
||||
import os
|
||||
@@ -254,6 +260,8 @@ def main():
|
||||
help='Output directory')
|
||||
parser.add_argument('--no-interactive', action='store_true',
|
||||
help='Skip interactive setup (use defaults)')
|
||||
parser.add_argument('--local-only', action='store_true',
|
||||
help='Create website locally only, skip Gitea sync and Easypanel deploy')
|
||||
|
||||
args = parser.parse_args()
|
||||
|
||||
@@ -333,12 +341,39 @@ def main():
|
||||
print(" 3. Update .env with your credentials")
|
||||
print(" 4. npm run dev")
|
||||
|
||||
# Auto-deploy (always on)
|
||||
print("")
|
||||
print("=" * 60)
|
||||
print("🚀 AUTO-DEPLOY STARTING")
|
||||
print("=" * 60)
|
||||
print("")
|
||||
# Check if local-only mode
|
||||
if args.local_only:
|
||||
print("")
|
||||
print("=" * 60)
|
||||
print("🏠 LOCAL MODE - No auto-deploy")
|
||||
print("=" * 60)
|
||||
print("")
|
||||
print("Website created locally. To preview:")
|
||||
print(f" cd {args.output}")
|
||||
print(" npm install")
|
||||
print(" npm run dev")
|
||||
print("")
|
||||
|
||||
# Ask if they want to deploy (skip if no-interactive mode)
|
||||
if args.no_interactive:
|
||||
print("✅ Done! Website is ready at:", args.output)
|
||||
return
|
||||
|
||||
deploy_choice = input("Do you want to sync to Gitea and deploy to Easypanel? (y/n): ").strip().lower()
|
||||
|
||||
if deploy_choice != 'y':
|
||||
print("")
|
||||
print("✅ Done! Website is ready at:", args.output)
|
||||
return
|
||||
else:
|
||||
print("")
|
||||
print("Proceeding with deployment...")
|
||||
else:
|
||||
print("")
|
||||
print("=" * 60)
|
||||
print("🚀 AUTO-DEPLOY STARTING")
|
||||
print("=" * 60)
|
||||
print("")
|
||||
|
||||
# Step 1: Sync to Gitea
|
||||
print("📦 Step 1/3: Syncing to Gitea...")
|
||||
|
||||
Reference in New Issue
Block a user