> my impression is that the DSL is so extensive you might as well be writing something that's not Ruby.
This is just how Ruby is. It's designed around the idea of building DSLs, so writing in Ruby is almost always an exercise in writing in one DSL or another.
I've spent year and a half writing chef as my first "programming" job, like 6 years ago. I learned almost 0 ruby, and that's probably why ruby didn't stick that much.
Yeah, I suspect this might be one reason why Ruby hasn't gained as much traction as others: knowledge doesn't translate well between frameworks, so there's little advantage to re-using the same language for a new project (unless it's a new project in the framework you're already comfortable with).
Chef you obviously had to, but my impression is that the DSL is so extensive you might as well be writing something that's not Ruby.
Maybe this says something about the power of Ruby, but I don't feel like these tools contributed to the language's popularity or ecosystem - definitely not the way RoR did.