That said, last year Chef changed their licensing[1]. My understanding is that their code is now all open source under Apache License 2.0 (there used to be a split between open source and commercial). But, and this is a big BUT, their distributions (installers, compiled code, etc.) are not open source. This is similar to Red Hat where all the main code in RHEL is open source, but they don't provide an ISO to install RHEL.
If you are looking for server configuration management, I've used all four of the major ones (Puppet, Chef, Salt, and Ansible), I'd recommend giving SaltStack[2][3] a look. The PyObjects renderer[4] is especially interesting because it allows writing the configuration in a full programming language (Python), similar to how Chef configuration is written in Ruby.
[1] https://www.chef.io/press-release/chef-open-sources-100-perc...
[2] https://www.saltstack.com/
[3] https://github.com/saltstack/salt
[4] https://docs.saltstack.com/en/master/ref/renderers/all/salt....