Sha256: dc8d61b00cfce9489ad17b1e820e37cb8ab3f812a8e9bd51b3ec5a2e04bca25e

Contents?: true

Size: 1.64 KB

Versions: 5

Compression:

Stored size: 1.64 KB

Contents

# frozen_string_literal: true
context = ChefDK::Generator.context
repo_dir = File.join(context.repo_root, context.repo_name)

# repo root dir
directory repo_dir

# Top level files
template "#{repo_dir}/LICENSE" do
  source "LICENSE.#{context.license}.erb"
  helpers(ChefDK::Generator::TemplateHelper)
  action :create_if_missing
end

cookbook_file "#{repo_dir}/.chef-repo.txt" do
  source 'repo/dot-chef-repo.txt'
  action :create_if_missing
end

cookbook_file "#{repo_dir}/README.md" do
  source 'repo/README.md'
  action :create_if_missing
end

cookbook_file "#{repo_dir}/chefignore" do
  source 'chefignore'
  action :create_if_missing
end

directories_to_create = %w( cookbooks data_bags )

directories_to_create += if context.use_roles
                           %w( roles environments )
                         else
                           %w( policies )
                         end

directories_to_create.each do |tlo|
  remote_directory "#{repo_dir}/#{tlo}" do
    source "repo/#{tlo}"
    action :create_if_missing
  end
end

cookbook_file "#{repo_dir}/cookbooks/README.md" do
  if context.policy_only
    source 'cookbook_readmes/README-policy.md'
  else
    source 'cookbook_readmes/README.md'
  end
  action :create_if_missing
end

# git
if context.have_git
  unless context.skip_git_init
    execute('initialize-git') do
      command('git init .')
      cwd repo_dir
      not_if { File.exist?("#{repo_dir}/.gitignore") }
    end
  end
  template "#{repo_dir}/.gitignore" do
    source 'repo/gitignore.erb'
    helpers(ChefDK::Generator::TemplateHelper)
    action :create_if_missing
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
chef-dk-2.6.2 lib/chef-dk/skeletons/code_generator/recipes/repo.rb
chef-dk-2.6.1 lib/chef-dk/skeletons/code_generator/recipes/repo.rb
chef-dk-2.5.13 lib/chef-dk/skeletons/code_generator/recipes/repo.rb
chef-dk-3.1.0 lib/chef-dk/skeletons/code_generator/recipes/repo.rb
chef-dk-2.5.3 lib/chef-dk/skeletons/code_generator/recipes/repo.rb