Sha256: c9a98e207307169e3a71926e3a1d9cc13b54635ae82e3067e3612a7e5f4047c0
Contents?: true
Size: 1.52 KB
Versions: 10
Compression:
Stored size: 1.52 KB
Contents
# # Copyright:: Copyright (c) 2018, Noah Kantrowitz # License:: Apache License, Version 2.0 # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # require "fileutils" require "chef/knife" class Chef class Knife class ConfigUseProfile < Knife banner "knife config use-profile PROFILE" # Disable normal config loading since this shouldn't fail if the profile # doesn't exist of the config is otherwise corrupted. def configure_chef apply_computed_config end def run context_file = ChefConfig::PathHelper.home(".chef", "context").freeze profile = @name_args[0]&.strip if profile && !profile.empty? # Ensure the .chef/ folder exists. FileUtils.mkdir_p(File.dirname(context_file)) IO.write(context_file, "#{profile}\n") ui.msg("Set default profile to #{profile}") else show_usage ui.fatal("You must specify a profile") exit 1 end end end end end
Version data entries
10 entries across 10 versions & 1 rubygems