4

I'm starting up the DevOps initiative at my company and trying to decide what IDE and other development tooling to invest the team in for our various repositories.

Language wise we have a lot of Ruby and Groovy, but that's hardly the entire picture. We really don't even know fully yet all the systems we will be working with in the near future, and there are some DSLs in the mix:

  • Akamai DSL
  • CloudBees / Jenkins logic in Groovy and Jenkinsfile
  • Chef
  • Ansible, maybe
  • Docker, hopefully
  • One of several release automation products, not yet chosen
  • I would like to use ServerSpec or something like it
  • SaltStack DSL
  • Kubernetes DSL
  • And so on.

Are there any IDEs with plugins to make working with this stuff a little easier?

  • that understand the relationships between these entities
  • that can mock out DNS and network connections to make unit tests possible for these DSLs
  • that can validate DSL syntax or even detect certain logical errors considering multiple of these?

This reddit thread is very discouraging to me as it seems a lot of folks out there are using basic editors with syntax highlighting plugins, which I view as woefully inadequate.

6

I personally really like PyCharm (same guys who made IntelliJ and Android Studio).

I mostly use Ansible, Bash, and Python. Has good plugins + syntax highlighting for Bash (doesn't everything at this point?), and Ansible. Since it's a native Python IDE, it's also very convenient when writing or troubleshooting python scripts, especially since you don't even need to exit the IDE to run them.

It also has integrations through plugins:

Chef: https://plugins.jetbrains.com/plugin/7548-chef-integration

Ruby: https://plugins.jetbrains.com/plugin/1293-ruby

Both should in theory allow full IDE-like experience with both languages (i.e. resource completion, syntax highlighting, jumping to references, etc).

Really, you can't go wrong with anything by JetBrains if you choose to use any of their other IDEs like IntelliJ.

  • I like PyCharm also, however, the reason why I have chosen Atom is that PyCharm on a Mac seems like is eating lots of RAM – Sergiu Sep 28 '17 at 14:40
4

At the moment I am using Atom which I think is a decent application that has wide support for all of the DSL's you've mentioned at the trade off of some speed.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.