diff options
author | Tim Smith <tsmith@chef.io> | 2018-10-29 09:27:00 -0700 |
---|---|---|
committer | Tim Smith <tsmith@chef.io> | 2018-10-29 09:27:00 -0700 |
commit | 72d725015a29455c81650076ceaba2b962f313fa (patch) | |
tree | 8f826b31b55a3907ed5413da7305eeef4e80dfc8 | |
parent | 1561a17a5c7339a05a8ea3b7dd0008f0b6c8e8c4 (diff) | |
download | chef-72d725015a29455c81650076ceaba2b962f313fa.tar.gz |
Yank old chef-config files
Signed-off-by: Tim Smith <tsmith@chef.io>
-rw-r--r-- | chef-config/.gitignore | 9 | ||||
-rw-r--r-- | chef-config/.travis.yml | 31 | ||||
-rw-r--r-- | chef-config/README.md | 4 | ||||
-rw-r--r-- | chef-config/Rakefile | 8 | ||||
-rw-r--r-- | chef-config/chef-config.gemspec | 4 | ||||
-rw-r--r-- | chef-config/lib/chef-config/package_task.rb | 289 |
6 files changed, 4 insertions, 341 deletions
diff --git a/chef-config/.gitignore b/chef-config/.gitignore deleted file mode 100644 index 0cb6eeb067..0000000000 --- a/chef-config/.gitignore +++ /dev/null @@ -1,9 +0,0 @@ -/.bundle/ -/.yardoc -/Gemfile.lock -/_yardoc/ -/coverage/ -/doc/ -/pkg/ -/spec/reports/ -/tmp/ diff --git a/chef-config/.travis.yml b/chef-config/.travis.yml deleted file mode 100644 index 927580f35f..0000000000 --- a/chef-config/.travis.yml +++ /dev/null @@ -1,31 +0,0 @@ -language: ruby - -sudo: false -# Early warning system to catch if Rubygems breaks something -before_install: - gem update --system - -branches: - only: - - master - -matrix: - include: - - rvm: 2.0 - - rvm: 2.1 - -notifications: - on_change: true - on_failure: true - on_success: change - on_pull_requests: false - irc: - channels: - - chat.freenode.net#chef-hacking - hipchat: - rooms: - # Build Statuses - - secure: G8MNo94L8bmWWwkH2/ViB2QaZnZHZscYM/mEjDbOGd15sqrruwckeARyBoUcRI7P1C6AFmS4IKCNVXa6KzX4Pbh51gQWM92zRpRTZpplwtXz53/1l8ajLFLLMLvEMTlBFAANUKEUFAQPY4dMa14V3Qc5oijfIncN61k4nZNTKpY= - - rvm: 2.2 - # Open Source - - secure: hmcex4PpG5dn8WvjndONO4xCUKOC5kPU/bUEGRrfVbe2YKJE7t0XXbNDC96W/xBgzgnJzvf1Er0zJKDrNf4qEDEWFoozdN00WLcqREgaLLS3Seto2FjR/BpBk5q+sCV0rwwEMms2P4Qk+VSnDCnm9EaeM55hOabqNuOrRzoZLBQ= diff --git a/chef-config/README.md b/chef-config/README.md deleted file mode 100644 index c36527282e..0000000000 --- a/chef-config/README.md +++ /dev/null @@ -1,4 +0,0 @@ -# ChefConfig - -This repo is experimental. Use at your own risk. - diff --git a/chef-config/Rakefile b/chef-config/Rakefile index fd6497a287..df2f59e298 100644 --- a/chef-config/Rakefile +++ b/chef-config/Rakefile @@ -1,10 +1,6 @@ -require "chef-config/package_task" +require "bundler/gem_tasks" -ChefConfig::PackageTask.new(File.expand_path("..", __FILE__), "ChefConfig", "chef-config") do |package| - package.module_path = "chef-config" -end - -task :default => :spec +task default: :spec begin require "rspec/core/rake_task" diff --git a/chef-config/chef-config.gemspec b/chef-config/chef-config.gemspec index 0db9f548b4..547735bb55 100644 --- a/chef-config/chef-config.gemspec +++ b/chef-config/chef-config.gemspec @@ -21,13 +21,13 @@ Gem::Specification.new do |spec| spec.add_dependency "addressable" spec.add_dependency "tomlrb", "~> 1.2" - spec.add_development_dependency "rake", "~> 10.0" + spec.add_development_dependency "rake" %w{rspec-core rspec-expectations rspec-mocks}.each do |rspec| spec.add_development_dependency(rspec, "~> 3.2") end - spec.files = %w{Rakefile LICENSE README.md} + Dir.glob("*.gemspec") + + spec.files = %w{Rakefile LICENSE} + Dir.glob("*.gemspec") + Dir.glob("{lib,spec}/**/*", File::FNM_DOTMATCH).reject { |f| File.directory?(f) } spec.bindir = "bin" diff --git a/chef-config/lib/chef-config/package_task.rb b/chef-config/lib/chef-config/package_task.rb deleted file mode 100644 index 3ab273532d..0000000000 --- a/chef-config/lib/chef-config/package_task.rb +++ /dev/null @@ -1,289 +0,0 @@ -# -# Author:: Kartik Null Cating-Subramanian (<ksubramanian@chef.io>) -# Copyright:: Copyright 2015-2016, Chef, Inc. -# 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 "rake" -require "rubygems" -require "rubygems/package_task" - -module ChefConfig - class PackageTask < Rake::TaskLib - - # Full path to root of top-level repository. All other files (like VERSION or - # lib/<module_path>/version.rb are rooted at this path). - attr_accessor :root_path - - # Name of the top-level module/library build built. This is used to define - # the top level module which contains VERSION and MODULE_ROOT. - attr_accessor :module_name - - # Name of the gem being built. This is used to find the lines to fix in - # Gemfile.lock. - attr_accessor :gem_name - - # Should the generated version.rb be in a class or module? Default is false (module). - attr_accessor :generate_version_class - - # Paths to the roots of any components that also support ChefPackageTask. - # If relative paths are provided, they are rooted against root_path. - attr_accessor :component_paths - - # This is the module name as it appears on the path "lib/module/". - # e.g. for module_name "ChefDK", you'd want module_path to be "chef-dk". - # The default is module_name but lower-cased. - attr_writer :module_path - - def module_path - @module_path || module_name.downcase - end - - # Directory used to store package files and output that is generated. - # This has the same meaning (or lack thereof) as package_dir in - # rake/packagetask. - attr_accessor :package_dir - - # Name of git remote used to push tags during a release. Default is origin. - attr_accessor :git_remote - - # True if should use Chef::VersionString. - attr_accessor :use_versionstring - - def initialize(root_path = nil, module_name = nil, gem_name = nil) - init(root_path, module_name, gem_name) - yield self if block_given? - define unless root_path.nil? || module_name.nil? - end - - def init(root_path, module_name, gem_name) - @root_path = root_path - @module_name = module_name - @gem_name = gem_name - @component_paths = [] - @module_path = nil - @package_dir = "pkg" - @git_remote = "origin" - @generate_version_class = false - end - - def component_full_paths - component_paths.map { |path| File.expand_path(path, root_path) } - end - - def version_rb_path - File.expand_path("lib/#{module_path}/version.rb", root_path) - end - - def chef_root_path - module_name == "Chef" ? root_path : File.dirname(root_path) - end - - def version_file_path - File.join(chef_root_path, "VERSION") - end - - def gemfile_lock_path - File.join(root_path, "Gemfile.lock") - end - - def version - IO.read(version_file_path).strip - end - - def full_package_dir - File.expand_path(package_dir, root_path) - end - - def class_or_module - generate_version_class ? "class" : "module" - end - - def with_clean_env(&block) - if defined?(Bundler) - Bundler.with_clean_env(&block) - else - yield - end - end - - def define - raise "Need to provide package root and module name" if root_path.nil? || module_name.nil? - - desc "Build Gems of component dependencies" - task :package_components do - component_full_paths.each do |component_path| - Dir.chdir(component_path) do - sh "rake package" - end - end - end - - task :package => :package_components - - desc "Build and install component dependencies" - task :install_components => :package_components do - component_full_paths.each do |component_path| - Dir.chdir(component_path) do - sh "rake install" - end - end - end - - task :install => :install_components - - desc "Clean up builds of component dependencies" - task :clobber_component_packages do - component_full_paths.each do |component_path| - Dir.chdir(component_path) do - sh "rake clobber_package" - end - end - end - - task :clobber_package => :clobber_component_packages - - desc "Update the version number for component dependencies" - task :update_components_versions do - component_full_paths.each do |component_path| - Dir.chdir(component_path) do - sh "rake version" - end - end - end - - namespace :version do - desc "Regenerate lib/#{module_path}/version.rb from VERSION file" - task :update => :update_components_versions do - update_version_rb - update_gemfile_lock - end - - task :bump => %w{version:bump_patch version:update} - - task :show do - puts version - end - - # Add 1 to the current patch version in the VERSION file, and write it back out. - task :bump_patch do - current_version = version - new_version = current_version.sub(/^(\d+\.\d+\.)(\d+)/) { "#{$1}#{$2.to_i + 1}" } - puts "Updating version in #{version_rb_path} from #{current_version.chomp} to #{new_version.chomp}" - IO.write(version_file_path, new_version) - end - - task :bump_minor do - current_version = version - new_version = current_version.sub(/^(\d+)\.(\d+)\.(\d+)/) { "#{$1}.#{$2.to_i + 1}.0" } - puts "Updating version in #{version_rb_path} from #{current_version.chomp} to #{new_version.chomp}" - IO.write(version_file_path, new_version) - end - - task :bump_major do - current_version = version - new_version = current_version.sub(/^(\d+)\.(\d+\.\d+)/) { "#{$1.to_i + 1}.0.0" } - puts "Updating version in #{version_rb_path} from #{current_version.chomp} to #{new_version.chomp}" - IO.write(version_file_path, new_version) - end - - def update_version_rb # rubocop:disable Lint/NestedMethodDefinition - puts "Updating #{version_rb_path} to include version #{version} ..." - contents = <<-VERSION_RB -# Copyright:: Copyright 2010-2016, Chef Software, Inc. -# 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. - -#!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -# NOTE: This file is generated by running `rake version` in the top level of -# this repo. Do not edit this manually. Edit the VERSION file and run the rake -# task instead. -#!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -#{"\nrequire \"chef/version_string\"\n" if use_versionstring} -#{class_or_module} #{module_name} - #{module_name.upcase}_ROOT = File.expand_path("../..", __FILE__) - VERSION = #{use_versionstring ? "Chef::VersionString.new(\"#{version}\")" : "\"#{version}\""} -end - -# -# NOTE: the Chef::Version class is defined in version_class.rb -# -# NOTE: DO NOT Use the Chef::Version class on #{module_name}::VERSIONs. The -# Chef::Version class is for _cookbooks_ only, and cannot handle -# pre-release versions like "10.14.0.rc.2". Please use Rubygem's -# Gem::Version class instead. -# - VERSION_RB - IO.write(version_rb_path, contents) - end - - def update_gemfile_lock # rubocop:disable Lint/NestedMethodDefinition - if File.exist?(gemfile_lock_path) - puts "Updating #{gemfile_lock_path} to include version #{version} ..." - contents = IO.read(gemfile_lock_path) - contents.gsub!(/^\s*(chef|chef-config)\s*\((= )?\S+\)\s*$/) do |line| - line.gsub(/\((= )?\d+(\.\d+)+/) { "(#{$1}#{version}" } - end - IO.write(gemfile_lock_path, contents) - end - end - end - - task :version => "version:update" - - gemspec_platform_to_install = "" - Dir[File.expand_path("*.gemspec", root_path)].reverse_each do |gemspec_path| - gemspec = eval(IO.read(gemspec_path)) - Gem::PackageTask.new(gemspec) do |task| - task.package_dir = full_package_dir - end - gemspec_platform_to_install = "-#{gemspec.platform}" if gemspec.platform != Gem::Platform::RUBY && Gem::Platform.match(gemspec.platform) - end - - desc "Build and install a #{module_path} gem" - task :install => [:package] do - with_clean_env do - full_module_path = File.join(full_package_dir, module_path) - sh %{gem install #{full_module_path}-#{version}#{gemspec_platform_to_install}.gem --no-rdoc --no-ri} - end - end - - task :uninstall do - sh %{gem uninstall #{module_path} -x -v #{version} } - end - - desc "Build it, tag it and ship it" - task :ship => [:clobber_package, :gem] do - sh("git tag #{version}") - sh("git push #{git_remote} --tags") - Dir[File.expand_path("*.gem", full_package_dir)].reverse_each do |built_gem| - sh("gem push #{built_gem}") - end - end - end - end - -end |