control-repo/scripts/code_manager_config_version.rb
Nate McCurdy e5189b5515 Show the short hostname, not the FQDN in config_version
This is mainly a style and readability change.

Prior to this, on masters whose hostname is actually their FQDN, the
config_version script would show the entire FQDN. On nodes with really
longs FQDN's, it was not very nice to look at.

This takes the hostname of the master, splits it on dots (.) and takes
the first segment.

Now this: compile-master-02.int.lab.dmz.company-name.net-production-48fd18ab
Is this:  compile-master-02-production-48fd18ab
2017-12-15 12:52:14 -06:00

20 lines
724 B
Ruby
Executable File

#!/opt/puppetlabs/puppet/bin/ruby
require 'json'
require 'socket'
environmentpath = ARGV[0]
environment = ARGV[1]
# Get the hostname of the Puppet master compiling the catalog.
# Sometimes the hostname is the fqdn, so we'll take the first segment.
compiling_master = Socket.gethostname.split('.').first
# Get the path to the Code Manager deployment info file.
r10k_deploy_file_path = File.join(environmentpath, environment, '.r10k-deploy.json')
# Get the first 12 characters of the commit ID out of the deployment file.
commit_id = JSON.parse(File.read(r10k_deploy_file_path))['signature'][0...11]
# Show the compiling master, environment name, and commit ID.
puts "#{compiling_master}-#{environment}-#{commit_id}"