ArcShell

ArcShell FAQ

This is where I will post answers to the common ArcShell questions.

Got a question? Ask. I am easy to find.

Ethan Ray Post

Founder Arclogic Software

“Bash Is Back”

Questions

What is ArcShell?

What does ArcShell do?

Is ArcShell Open Source software?

Why did you build ArcShell?

Who needs ArcShell?

What makes ArcShell unique?

Is ArcShell different than products like Ansible, Puppet, or Chef?

What is ArcShell?

“Go away or I will replace you with a very small shell script.”

Are you familiar with this joke? There is some truth in it. Shell is a powerful language that everyone with access to Linux or Unix servers can use. It has been shown repeatedly that simple shell scripts can replace complicated manual tasks.

ArcShell is a framework for building automation solutions with the Bash shell. It provides modules which make authoring and distributing scripts easier. With ArcShell you can craft manageable solutions and solve difficult problems using a language you already familiar with.

See the complete list of available modules here.

ArcShell modules are used together to solve difficult problems. It makes the implementation of common automation and monitoring patterns simple. Users have more time to focus on solving problems. They write less code. And they will create maintainable solutions faster.

ArcShell is the first commercially viable automation framework of it’s kind for Bash.

(It works for the Korn shell too!)

What does ArcShell do?

ArcShell makes the following easier.

  1. Creating scripts.
  2. Organizing, accounting, monitoring, and auditing scripts.
  3. Documenting scripts.
  4. Sharing and deploying scripts.
  5. Configuring scripts.
  6. Maintaining and extending scripts.
  7. Testing and debugging scripts.
  8. Instrumenting scripts.
  9. Integrating scripts.

ArcShell reduces the time to build, test, and deploy scripted solutions.

It ships with more than 30 modules.

New capabilities can be added and delivered within hours or even minutes.

ArcShell encourages users to:

Is ArcShell Open Source software?

Short answer, not yet (as of 2/4/2019), but possibly soon.

I am currently exploring funding options. I expect that period to last a one to two months.

I am inclined to open source ArcShell as soon as it makes sense. I will likely make that decision at the end of this period.

If you are interested in sponsoring ArcShell get in touch.

Why did you build ArcShell?

ArcShell is the tool I need to automate and monitor! You probably need it to.

I have two decades of experience building solutions in heterogeneous Unix, Linux, and Oracle environments supporting dozens of external customers.

The design and architecture of the ArcShell represents the totality of everything I have learned and would need within a single deploy-able framework.

ArcShell is designed to work in highly restrictive environments with limited or no access to the customer’s tool sets.

ArcShell is easy to extend with new scripts, functions, and modules. Assets developed for a particular product or customer are made a permanently available feature of the framework.

Who needs ArcShell?

Shell scripts are common. Some might say they are all too common. The ArcShell customer is anyone who writes shell scripts and wants to do it better.

Beyond this there are a few specific use cases which are highly suitable for ArcShell.

Consulting companies and consultants using ArcShell gain access to a large repository of capabilities that can be easily deployed, extended, and maintained in the most restrictive of customer environments.

ArcShell is well suited for all automation needs but is a suburb solution for automating application operations and building monitoring solutions.

CM platforms may require customized modules to extend usefulness and reach. It’s often easier and faster to build these modules with ArcShell than an alternative.

IOT device manufactures using Linux based operating systems can build in capabilities such as alerting, monitoring, trouble shooting, performance tracking, remote operations and more.

What makes ArcShell unique?

With the exception of ArcShell there are few, if any, actively developed frameworks for shell.

None have the features ArcShell delivers.

Frameworks are highly prevalent in software application development. Popular configuration management tools are also essentially frameworks. Frameworks make application development faster. ArcShell does the same for automation solution development.

The structure of the framework makes it easy for developers to share solutions reliably across heterogeneous environments without the need to modify the original code or configuration.

The framework approach is a proven winner.

Is ArcShell different than products like Ansible, Puppet, or Chef?

ArcShell is a pure scripting framework you use to build things. It’s feasible to build a product like Ansible, Puppet, or Chef using ArcShell but it doesn’t try to match the use cases or features of these products.

CM tools like these often require custom modules. ArcShell is well suited for this purpose. ArcShell is a necessary component in any CI/CD pipeline.

Most of the products in the CI/CD space are strong at provisioning, deploying, and configuration, assuming the required modules exist. ArcShell’s focus is automation, application administration, and monitoring. But it can be used to perform these other tasks as well.

ArcShell is also native Bash. Some of the products in the CI/CD space require users to learn a domain specific language which lack the capabilities and expressiveness of a native language. They are also hard to learn.