- Sitebuilders
- Install and configure sites
- Software Engineers
- Implement sites with custom programming
- GearBuilders
- Create "Gears" for Gearbox
- Host API - Used for host things, before Box is running
- Box API - Used for Box things
- "Single" Executable
- GearboxOS ISO (Based on Alpine)
- Restful API - Interact with Admin
- Built-in Go-based SSH
- Broadcast
.local
hostnames- NO EDITING HOSTS FILE!!!!
- Compiled #GoLang code
- Same source code for all variants
- One executable for a host computer
- On a Windows
gearbox.exe
- On a Mac, Linux
gearbox
- On a Windows
- One executable inside the Gearbox Box
gearbox
- Start Admin console from local host
- Check for VirtualBox
- If installed ensure correct version and configuration
- If not installed, install and configure if not installed
- Download ISO for GearboxOS
- Create Box using VirtualBox and the ISO
- Configure Box correctly
- Start Admin console from local host
- Re-verify VirtualBox & Box
- Loads User Config file
- Scans Project(s) directories
- Looks for:
- Subdirs with
project.json
file => Projects- When new project is found
- Set to disabled
- Other subdirs => Project candidates
- Subdirs with
- Looks for:
- Enabled
- User Config marks as
"active"
- Causes Gearbox to run required stack of service containers
- If project requires Nginx, an Nginx will be run
- User Config marks as
- Disabled
- Candidates
- Has no project.json
- Turn into a Disabled or Enabled project
- By adding
project.json
- By adding
- Recognize VVV or Local or DDEV or Lando box and allow import
- User config directory (Gearbox Concept)
- macOS:
- For each Project
- Project Config:
gearbox.json
- Project Config:
- Regenerate assets.go
- https://github.com/jteeuwen/go-bindata
go-bindata -dev -o assets.go -pkg gearbox admin/...