From b817912ea0bfab10a7fbbedf3cb721cc032a0f63 Mon Sep 17 00:00:00 2001 From: William Mantly Date: Mon, 27 May 2019 01:21:35 -0400 Subject: [PATCH] Add generated cookbook content --- .gitignore | 22 +++++ .kitchen.yml | 26 ++++++ Berksfile | 4 + CHANGELOG.md | 11 +++ LICENSE | 3 + README.md | 4 + chefignore | 104 +++++++++++++++++++++++ metadata.rb | 20 +++++ recipes/default.rb | 5 ++ spec/spec_helper.rb | 3 + spec/unit/recipes/default_spec.rb | 35 ++++++++ test/integration/default/default_test.rb | 16 ++++ 12 files changed, 253 insertions(+) create mode 100644 .gitignore create mode 100644 .kitchen.yml create mode 100644 Berksfile create mode 100644 CHANGELOG.md create mode 100644 LICENSE create mode 100644 README.md create mode 100644 chefignore create mode 100644 metadata.rb create mode 100644 recipes/default.rb create mode 100644 spec/spec_helper.rb create mode 100644 spec/unit/recipes/default_spec.rb create mode 100644 test/integration/default/default_test.rb diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..13e41c4 --- /dev/null +++ b/.gitignore @@ -0,0 +1,22 @@ +.vagrant +*~ +*# +.#* +\#*# +.*.sw[a-z] +*.un~ + +# Bundler +Gemfile.lock +gems.locked +bin/* +.bundle/* + +# test kitchen +.kitchen/ +.kitchen.local.yml + +# Chef +Berksfile.lock +.zero-knife.rb +Policyfile.lock.json diff --git a/.kitchen.yml b/.kitchen.yml new file mode 100644 index 0000000..42857ef --- /dev/null +++ b/.kitchen.yml @@ -0,0 +1,26 @@ +--- +driver: + name: vagrant + +provisioner: + name: chef_zero + # You may wish to disable always updating cookbooks in CI or other testing environments. + # For example: + # always_update_cookbooks: <%= !ENV['CI'] %> + always_update_cookbooks: true + +verifier: + name: inspec + +platforms: + - name: ubuntu-16.04 + - name: centos-7 + +suites: + - name: default + run_list: + - recipe[t42-common::default] + verifier: + inspec_tests: + - test/integration/default + attributes: diff --git a/Berksfile b/Berksfile new file mode 100644 index 0000000..0656a99 --- /dev/null +++ b/Berksfile @@ -0,0 +1,4 @@ +# frozen_string_literal: true +source 'https://supermarket.chef.io' + +metadata diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..26adea2 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,11 @@ +# t42-common CHANGELOG + +This file is used to list changes made in each version of the t42-common cookbook. + +# 0.1.0 + +Initial release. + +- change 0 +- change 1 + diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..10b5688 --- /dev/null +++ b/LICENSE @@ -0,0 +1,3 @@ +Copyright 2019 The Authors + +All rights reserved, do not redistribute. diff --git a/README.md b/README.md new file mode 100644 index 0000000..33b6dc0 --- /dev/null +++ b/README.md @@ -0,0 +1,4 @@ +# t42-common + +TODO: Enter the cookbook description here. + diff --git a/chefignore b/chefignore new file mode 100644 index 0000000..4439807 --- /dev/null +++ b/chefignore @@ -0,0 +1,104 @@ +# Put files/directories that should be ignored in this file when uploading +# to a chef-server or supermarket. +# Lines that start with '# ' are comments. + +# OS generated files # +###################### +.DS_Store +Icon? +nohup.out +ehthumbs.db +Thumbs.db + +# SASS # +######## +.sass-cache + +# EDITORS # +########### +\#* +.#* +*~ +*.sw[a-z] +*.bak +REVISION +TAGS* +tmtags +*_flymake.* +*_flymake +*.tmproj +.project +.settings +mkmf.log + +## COMPILED ## +############## +a.out +*.o +*.pyc +*.so +*.com +*.class +*.dll +*.exe +*/rdoc/ + +# Testing # +########### +.watchr +.rspec +spec/* +spec/fixtures/* +test/* +features/* +examples/* +Guardfile +Procfile +.kitchen* +kitchen.yml* +.rubocop.yml +spec/* +Rakefile +.travis.yml +.foodcritic +.codeclimate.yml + +# SCM # +####### +.git +*/.git +.gitignore +.gitmodules +.gitconfig +.gitattributes +.svn +*/.bzr/* +*/.hg/* +*/.svn/* + +# Berkshelf # +############# +Berksfile +Berksfile.lock +cookbooks/* +tmp + +# Bundler # +########### +vendor/* + +# Policyfile # +############## +Policyfile.rb +Policyfile.lock.json + +# Cookbooks # +############# +CONTRIBUTING* +CHANGELOG* +TESTING* + +# Vagrant # +########### +.vagrant +Vagrantfile diff --git a/metadata.rb b/metadata.rb new file mode 100644 index 0000000..fffd3fe --- /dev/null +++ b/metadata.rb @@ -0,0 +1,20 @@ +name 't42-common' +maintainer 'The Authors' +maintainer_email 'you@example.com' +license 'All Rights Reserved' +description 'Installs/Configures t42-common' +long_description 'Installs/Configures t42-common' +version '0.1.0' +chef_version '>= 13.0' + +# The `issues_url` points to the location where issues for this cookbook are +# tracked. A `View Issues` link will be displayed on this cookbook's page when +# uploaded to a Supermarket. +# +# issues_url 'https://github.com//t42-common/issues' + +# The `source_url` points to the development repository for this cookbook. A +# `View Source` link will be displayed on this cookbook's page when uploaded to +# a Supermarket. +# +# source_url 'https://github.com//t42-common' diff --git a/recipes/default.rb b/recipes/default.rb new file mode 100644 index 0000000..fba74aa --- /dev/null +++ b/recipes/default.rb @@ -0,0 +1,5 @@ +# +# Cookbook:: t42-common +# Recipe:: default +# +# Copyright:: 2019, The Authors, All Rights Reserved. diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb new file mode 100644 index 0000000..052d78a --- /dev/null +++ b/spec/spec_helper.rb @@ -0,0 +1,3 @@ +# frozen_string_literal: true +require 'chefspec' +require 'chefspec/berkshelf' diff --git a/spec/unit/recipes/default_spec.rb b/spec/unit/recipes/default_spec.rb new file mode 100644 index 0000000..a26893c --- /dev/null +++ b/spec/unit/recipes/default_spec.rb @@ -0,0 +1,35 @@ +# +# Cookbook:: t42-common +# Spec:: default +# +# Copyright:: 2019, The Authors, All Rights Reserved. + +require 'spec_helper' + +describe 't42-common::default' do + context 'When all attributes are default, on Ubuntu 16.04' do + let(:chef_run) do + # for a complete list of available platforms and versions see: + # https://github.com/customink/fauxhai/blob/master/PLATFORMS.md + runner = ChefSpec::ServerRunner.new(platform: 'ubuntu', version: '16.04') + runner.converge(described_recipe) + end + + it 'converges successfully' do + expect { chef_run }.to_not raise_error + end + end + + context 'When all attributes are default, on CentOS 7.4.1708' do + let(:chef_run) do + # for a complete list of available platforms and versions see: + # https://github.com/customink/fauxhai/blob/master/PLATFORMS.md + runner = ChefSpec::ServerRunner.new(platform: 'centos', version: '7.4.1708') + runner.converge(described_recipe) + end + + it 'converges successfully' do + expect { chef_run }.to_not raise_error + end + end +end diff --git a/test/integration/default/default_test.rb b/test/integration/default/default_test.rb new file mode 100644 index 0000000..62b6b3f --- /dev/null +++ b/test/integration/default/default_test.rb @@ -0,0 +1,16 @@ +# InSpec test for recipe t42-common::default + +# The InSpec reference, with examples and extensive documentation, can be +# found at http://inspec.io/docs/reference/resources/ + +unless os.windows? + # This is an example test, replace with your own test. + describe user('root'), :skip do + it { should exist } + end +end + +# This is an example test, replace it with your own test. +describe port(80), :skip do + it { should_not be_listening } +end