The Armbian build system is well documented, but it builds everything from source. If you don't have access to the source and/or don't know which source to take, it might be easier to start with an existing firmware and/or kernel. You should have serial console access to the board and know how deal with the firmware (u-boot). If have have access to the sources you can just re-cycle the slot of an existing board (unfortunately Armbian doesn't offer "spare" or "intentionally left blank" slots).
http://linux-sunxi.org/Fex_Guide
A FEX file defines various aspects of how the SoC works. It configures the GPIO pins and sets up DRAM, Display, etc parameters.
Having a fex file is usually good enough to boot the board - with kernel 3.4.x. For new (4.x) you will probably need to construct your own device tree. If it's close to Cubieboard 2 than you start with it's source. It might just work out of the box. The same states for u-boot.
Board customizations among my script are on system level - firmware loading, extra modules loading, custom repository, custom applications, ...
Roughly, if you want to add a new board:
1. Add to menu and choose a dedicated name: (Myboard A20)
https://github.com/igorpecovnik/lib/blob/next/main.sh#L27
2. Add an entry to configuration - copy paste cubieboard and use a previously chosen board name
https://github.com/igorpecovnik/lib/blob/next/configuration.sh
3. Copy your fex file to lib/config/Myboard.fex
------
From this point - if you can't boot - you need to tweak U-boot configuration and add exceptions - if necessary - to: https://github.com/igorpecovnik/lib/blob/next/boards.sh and to board configuration if you need some special module.