Move out None checks one level
Split build_resources into two methods