How Do You Troubleshoot the Chef Error “Field ‘name” invalid” after Running a chef-server-ctl Command?

Problem scenario
You are trying to create an organization using the chef-server-ctl org-create command.  But you get an error that the “name” entered was invalid.  For example, you run this:

sudo chef-server-ctl org-create ContInt “ContinualIntegration” –association_user contintuser –filename /bin/good.pem

But you get this:

ERROR: The data in your request was invalid
Response: Field ‘name’ invalid

What should you do?

Solution
For the “shortname” that is immediately after the “org-create” command,

How Will Trends in DevOps and Automation Affect SDETs?

Question
Will current trends in DevOps and automation affect the role SDETs play?

Answer
If you want a definition of an SDET (and its etymology), see this posting. (As of 9/2/19, Wikipedia has no definition of the job title SDET.) If you Google the phrase “devops venn diagram” for images you will not see pictures of merely two overlapping circles with one circle representing “development” and another representing “operations.”  You will see DevOps in the middle of an intersection of three circles — one of the circles is also QA! 

What Is an SDET?

Question
What is an SDET and where did the term originate?

Answer
The book How We Test Software at Microsoft says that the formal title for a software tester at Microsoft is “Software Development Engineer in Test, or SDET” (page 23).  This SDET acronym (free of punctuation) was adopted in 2005 (page 24 of the above referenced book). Microsoft’s adoption of SDET gave this acronym recognition and serious meaning given the company’s leadership in the industry. 

How Do You Write a Tic-Tac-Toe Game in Python?

Updated on 9/17/19 to support version 2 and version 3 of Python

Arguably the oldest video games was a variation of Tic-tac-toe.  To read more about this, see this link.  Many English-speaking countries outside the U.S. refer to the game as Noughts and Crosses (according to Wikipedia). 

In the U.S., November 11th is the day America observes Veteran’s Day

How Do You Write a Chef Recipe to Deploy a Apache Web Server to Linux Servers?

Problem scenario
You have Linux servers that need Apache web server installed on them.  How do you write a Chef recipe to deploy Apache web server?

Solution
Prerequisite

This solution requires that the Chef server must have access to GitHub.  If you want to install Chef server, see this posting.  If you want to install Chef client, see this posting

How Do You Fix “404 not found” Errors When You Run Knife Commands?

Problem scenario
You try to run a knife command but you get 404 not found.  What should you do?

Solution
Run this command: knife client list

If you get a 404 error with this command, then look at your client.rb file.  Is the chef_server_url correct?  Is the hostname actually the Chef server or is it something else?  Is the “organizations/companynickname” present and correctly typed?

How Do You Configure Ruby to Work Properly with the Chef Development Kit on Ubuntu 16.04?

Problem scenario
You are running Ubuntu 16.04 Linux.  You tried to follow the directions for installing the Chef development kit on these two sites: GitHub and Chef.io.  But they do not work.  What should you do?

Solution
Follow these steps:

1.  Change directories to the home directory (e.g., /home/ubuntu or /root/) of the user are logged in as. 
2. 

How Do You Create a Chef Recipe to Install Java on Linux Chef-Client Nodes?

Problem scenario
You have Linux servers that need Java 1.8 installed on them.  How do you write a Chef recipe to deploy Java?

Solution
Prerequisite
This solution requires that the Chef server must have access to GitHub.  If you want to install Chef server, see this posting.  If you want to install Chef client, see this posting

How Do You Troubleshoot the Knife (Chef) Error “You authenticated successfully but you are not authorized … missing read permission”?

Problem scenario
You have installed Chef on Ubuntu.  You run this command:

sudo knife client list

You expect to see a list of Chef client nodes.  But you see an error like this:

“ERROR: You authenticated successfully to https://<FQDN of Chef Server>/organizations/companynickname as <FQDN of Chef client node> but you are not authorized for this action
Response:  missing read permission”

What do you do?