Repository is intended for hosts, NOT end users. All hosts are manually vetted and approved by brickbox.io at this time.
Mason is an onboarding script to streamline the processes of connecting pre-qualified hosts to the brickbox.io platform. The repository also contains additional onboarding scripts that are used as part of our virtualization platform.
For quick installation the mason.sh script has been mapped to mason.brickbox.io and can be downloaded and ran with the following line:
sudo wget -qO- mason.brickbox.io | bash /dev/stdin [options] [arguments]
Option Flag | Description | Example |
---|---|---|
-d | Debug Flag | wget -qO- mason.brickbox.io | sudo bash /dev/stdin -d |
Process | Description |
---|---|
bb_root | Check if the user "bb_root" exsists, if not create it and set to root. Create SSH storage location if it does not exist. |
SSH Tunnel | Create sshtunnel directory (/etx/sshtunnel/ and create SSH key. |
Serial Number | Read the host serial number and confirm it is registered with brickbox.io "OK" status indicates readiness. |
bb_root PubKey | Receive the pubkey for bb_root from brickbox.io then validate it before adding to authorized key file. |
Find GPU | Cycles through the compatible GPUs and finds a match, otherwise exits. |
GPU Pass - IOMMMU | Configure the system for IOMMU based on the install CPU manufacturer. |
GPU Pass - initramfs-tools | Configure boot time behavior. |
GPU Pass - Modules | Add new driver module. |
GPU Pass - Modprobe Nidia | Add the NVidia driver to modprobe. |
GPU Pass - Modprobe VFIO | Add the VFIO driver to modprobe. |
GPU Pass - Blacklist nouveau | Add the nouveau driver to modprobe blacklist. |
Assigned Prot | Receive the assigned port from brickbox.io to be used for the SSH tunnel. |
.
βββ .github # CI/CD using GitHub Actions and other functions.
βββ mason.sh # Primary onboarding script.
βββ LICENSE # Repository license.