Initial Chef repository
This commit is contained in:
30
cookbooks/windows/resources/auto_run.rb
Normal file
30
cookbooks/windows/resources/auto_run.rb
Normal file
@@ -0,0 +1,30 @@
|
||||
#
|
||||
# Author:: Paul Morton (<pmorton@biaprotect.com>)
|
||||
# Cookbook Name:: windows
|
||||
# Resource:: auto_run
|
||||
#
|
||||
# Copyright:: 2011, Business Intelligence Associates, Inc
|
||||
#
|
||||
# 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.
|
||||
#
|
||||
|
||||
def initialize(name,run_context=nil)
|
||||
super
|
||||
@action = :create
|
||||
end
|
||||
|
||||
actions :create, :remove
|
||||
|
||||
attribute :program, :kind_of => String
|
||||
attribute :name, :kind_of => String, :name_attribute => true
|
||||
attribute :args, :kind_of => String, :default => ''
|
||||
36
cookbooks/windows/resources/batch.rb
Normal file
36
cookbooks/windows/resources/batch.rb
Normal file
@@ -0,0 +1,36 @@
|
||||
#
|
||||
# Author:: Seth Chisamore (<schisamo@chef.io>)
|
||||
# Cookbook Name:: windows
|
||||
# Resource:: batch
|
||||
#
|
||||
# Copyright:: 2011, Chef Software, Inc.
|
||||
#
|
||||
# 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.
|
||||
#
|
||||
|
||||
actions :run
|
||||
|
||||
attribute :command, :kind_of => String, :name_attribute => true
|
||||
attribute :cwd, :kind_of => String, :default => nil
|
||||
attribute :code, :kind_of => String, :default => nil
|
||||
attribute :user, :kind_of => [ String, Integer ], :default => nil
|
||||
attribute :group, :kind_of => [ String, Integer ], :default => nil
|
||||
attribute :creates, :kind_of => [ String ], :default => nil
|
||||
attribute :flags, :kind_of => [ String ], :default => nil
|
||||
attribute :returns, :kind_of => [Integer, Array], :default => 0
|
||||
|
||||
def initialize(name, run_context=nil)
|
||||
super
|
||||
@action = :run
|
||||
@command = name
|
||||
end
|
||||
44
cookbooks/windows/resources/feature.rb
Normal file
44
cookbooks/windows/resources/feature.rb
Normal file
@@ -0,0 +1,44 @@
|
||||
#
|
||||
# Author:: Seth Chisamore (<schisamo@chef.io>)
|
||||
# Cookbook Name:: windows
|
||||
# Resource:: feature
|
||||
#
|
||||
# Copyright:: 2011, Chef Software, Inc.
|
||||
#
|
||||
# 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.
|
||||
#
|
||||
|
||||
include Windows::Helper
|
||||
|
||||
actions :install, :remove, :delete
|
||||
|
||||
attribute :feature_name, :kind_of => String, :name_attribute => true
|
||||
attribute :source, :kind_of => String
|
||||
attribute :all, :kind_of => [ TrueClass, FalseClass ], :default => false
|
||||
|
||||
def initialize(name, run_context=nil)
|
||||
super
|
||||
@action = :install
|
||||
@provider = lookup_provider_constant(locate_default_provider)
|
||||
end
|
||||
|
||||
private
|
||||
def locate_default_provider
|
||||
if node['windows'].attribute?(:feature_provider)
|
||||
"windows_feature_#{node['windows']['feature_provider']}"
|
||||
elsif ::File.exists?(locate_sysnative_cmd('dism.exe'))
|
||||
:windows_feature_dism
|
||||
elsif ::File.exists?(locate_sysnative_cmd('servermanagercmd.exe'))
|
||||
:windows_feature_servermanagercmd
|
||||
end
|
||||
end
|
||||
25
cookbooks/windows/resources/font.rb
Normal file
25
cookbooks/windows/resources/font.rb
Normal file
@@ -0,0 +1,25 @@
|
||||
#
|
||||
# Author:: Sander Botman <sbotman@schubergphilis.com>
|
||||
# Cookbook Name:: windows
|
||||
# Resource:: font
|
||||
#
|
||||
# Copyright:: 2014, Schuberg Philis BV.
|
||||
#
|
||||
# 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.
|
||||
#
|
||||
|
||||
actions :install
|
||||
|
||||
default_action :install
|
||||
|
||||
attribute :file, :kind_of => String, :name_attribute => true
|
||||
29
cookbooks/windows/resources/pagefile.rb
Normal file
29
cookbooks/windows/resources/pagefile.rb
Normal file
@@ -0,0 +1,29 @@
|
||||
#
|
||||
# Author:: Kevin Moser (<kevin.moser@nordstrom.com>)
|
||||
# Cookbook Name:: windows
|
||||
# Resource:: pagefile
|
||||
#
|
||||
# Copyright:: 2012, Nordstrom, Inc.
|
||||
#
|
||||
# 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.
|
||||
#
|
||||
|
||||
actions :set, :delete
|
||||
|
||||
attribute :name, :kind_of => String, :name_attribute => true
|
||||
attribute :system_managed, :kind_of => [TrueClass, FalseClass]
|
||||
attribute :automatic_managed, :kind_of => [TrueClass, FalseClass], :default => false
|
||||
attribute :initial_size, :kind_of => Integer
|
||||
attribute :maximum_size, :kind_of => Integer
|
||||
|
||||
default_action :set
|
||||
28
cookbooks/windows/resources/path.rb
Normal file
28
cookbooks/windows/resources/path.rb
Normal file
@@ -0,0 +1,28 @@
|
||||
#
|
||||
# Author:: Paul Morton (<pmorton@biaprotect.com>)
|
||||
# Cookbook Name:: windows
|
||||
# Resource:: path
|
||||
#
|
||||
# Copyright:: 2011, Business Intelligence Associates, Inc
|
||||
#
|
||||
# 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.
|
||||
#
|
||||
|
||||
def initialize(name,run_context=nil)
|
||||
super
|
||||
@action = :add
|
||||
end
|
||||
|
||||
actions :add, :remove
|
||||
|
||||
attribute :path, :kind_of => String, :name_attribute => true
|
||||
41
cookbooks/windows/resources/printer.rb
Normal file
41
cookbooks/windows/resources/printer.rb
Normal file
@@ -0,0 +1,41 @@
|
||||
#
|
||||
# Author:: Doug Ireton (<doug.ireton@nordstrom.com>)
|
||||
# Cookbook Name:: windows
|
||||
# Resource:: printer
|
||||
#
|
||||
# Copyright:: 2012, Nordstrom, Inc.
|
||||
#
|
||||
# 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.
|
||||
#
|
||||
# See here for more info:
|
||||
# http://msdn.microsoft.com/en-us/library/windows/desktop/aa394492(v=vs.85).aspx
|
||||
|
||||
require 'resolv'
|
||||
|
||||
actions :create, :delete
|
||||
|
||||
default_action :create
|
||||
|
||||
attribute :device_id, :kind_of => String, :name_attribute => true,
|
||||
:required => true
|
||||
attribute :comment, :kind_of => String
|
||||
|
||||
attribute :default, :kind_of => [ TrueClass, FalseClass ], :default => false
|
||||
attribute :driver_name, :kind_of => String, :required => true
|
||||
attribute :location, :kind_of => String
|
||||
attribute :shared, :kind_of => [ TrueClass, FalseClass ], :default => false
|
||||
attribute :share_name, :kind_of => String
|
||||
|
||||
attribute :ipv4_address, :kind_of => String, :regex => Resolv::IPv4::Regex
|
||||
|
||||
attr_accessor :exists
|
||||
40
cookbooks/windows/resources/printer_port.rb
Normal file
40
cookbooks/windows/resources/printer_port.rb
Normal file
@@ -0,0 +1,40 @@
|
||||
#
|
||||
# Author:: Doug Ireton (<doug.ireton@nordstrom.com>)
|
||||
# Cookbook Name:: windows
|
||||
# Resource:: printer_port
|
||||
#
|
||||
# Copyright:: 2012, Nordstrom, Inc.
|
||||
#
|
||||
# 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.
|
||||
#
|
||||
# See here for more info:
|
||||
# http://msdn.microsoft.com/en-us/library/windows/desktop/aa394492(v=vs.85).aspx
|
||||
|
||||
require 'resolv'
|
||||
|
||||
actions :create, :delete
|
||||
|
||||
default_action :create
|
||||
|
||||
attribute :ipv4_address, :name_attribute => true, :kind_of => String,
|
||||
:required => true, :regex => Resolv::IPv4::Regex
|
||||
|
||||
attribute :port_name , :kind_of => String
|
||||
attribute :port_number , :kind_of => Fixnum, :default => 9100
|
||||
attribute :port_description, :kind_of => String
|
||||
attribute :snmp_enabled , :kind_of => [ TrueClass, FalseClass ],
|
||||
:default => false
|
||||
|
||||
attribute :port_protocol, :kind_of => Fixnum, :default => 1, :equal_to => [1, 2]
|
||||
|
||||
attr_accessor :exists
|
||||
29
cookbooks/windows/resources/reboot.rb
Normal file
29
cookbooks/windows/resources/reboot.rb
Normal file
@@ -0,0 +1,29 @@
|
||||
#
|
||||
# Author:: Seth Chisamore (<schisamo@chef.io>)
|
||||
# Cookbook Name:: windows
|
||||
# Resource:: reboot
|
||||
#
|
||||
# Copyright:: 2011, Chef Software, Inc.
|
||||
#
|
||||
# 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.
|
||||
#
|
||||
|
||||
actions :request, :cancel
|
||||
|
||||
attribute :timeout, :kind_of => Integer, :name_attribute => true
|
||||
attribute :reason, :kind_of => String, :default => ''
|
||||
|
||||
def initialize(name,run_context=nil)
|
||||
super
|
||||
@action = :request
|
||||
end
|
||||
34
cookbooks/windows/resources/registry.rb
Normal file
34
cookbooks/windows/resources/registry.rb
Normal file
@@ -0,0 +1,34 @@
|
||||
#
|
||||
# Author:: Doug MacEachern (<dougm@vmware.com>)
|
||||
# Author:: Seth Chisamore (<schisamo@chef.io>)
|
||||
# Cookbook Name:: windows
|
||||
# Resource:: registry
|
||||
#
|
||||
# Copyright:: 2010, VMware, Inc.
|
||||
# Copyright:: 2011, Chef Software, Inc.
|
||||
#
|
||||
# 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.
|
||||
#
|
||||
|
||||
actions :create, :modify, :force_modify, :remove
|
||||
|
||||
attribute :key_name, :kind_of => String, :name_attribute => true
|
||||
attribute :values, :kind_of => Hash
|
||||
attribute :type, :kind_of => Symbol, :default => nil, :equal_to => [:binary, :string, :multi_string, :expand_string, :dword, :dword_big_endian, :qword]
|
||||
|
||||
def initialize(name, run_context=nil)
|
||||
super
|
||||
@action = :modify
|
||||
@key_name = name
|
||||
Chef::Log.warn("Please use the registry_key resource in Chef Client 11. The windows_registry LWRP is still supported for Chef Client 10, but is deprecated in future versions.")
|
||||
end
|
||||
35
cookbooks/windows/resources/shortcut.rb
Normal file
35
cookbooks/windows/resources/shortcut.rb
Normal file
@@ -0,0 +1,35 @@
|
||||
#
|
||||
# Author:: Doug MacEachern <dougm@vmware.com>
|
||||
# Cookbook Name:: windows
|
||||
# Resource:: shortcut
|
||||
#
|
||||
# Copyright:: 2010, VMware, Inc.
|
||||
#
|
||||
# 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.
|
||||
#
|
||||
|
||||
actions :create
|
||||
|
||||
default_action :create
|
||||
|
||||
attribute :name, :kind_of => String
|
||||
attribute :target, :kind_of => String
|
||||
attribute :arguments, :kind_of => String
|
||||
attribute :description, :kind_of => String
|
||||
attribute :cwd, :kind_of => String
|
||||
|
||||
# Covers 0.10.8 and earlier
|
||||
def initialize(*args)
|
||||
super
|
||||
@action = :create
|
||||
end
|
||||
50
cookbooks/windows/resources/task.rb
Normal file
50
cookbooks/windows/resources/task.rb
Normal file
@@ -0,0 +1,50 @@
|
||||
#
|
||||
# Author:: Paul Mooring (<paul@chef.io>)
|
||||
# Cookbook Name:: windows
|
||||
# Resource:: task
|
||||
#
|
||||
# Copyright:: 2012, Chef Software, Inc.
|
||||
#
|
||||
# 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.
|
||||
#
|
||||
|
||||
# Passwords can't be loaded for existing tasks, making :modify both confusing
|
||||
# and not very useful
|
||||
actions :create, :delete, :run, :change, :enable, :disable
|
||||
|
||||
attribute :name, :kind_of => String, :name_attribute => true, :regex => [ /\A[^\\\/\:\*\?\<\>\|]+\z/ ]
|
||||
attribute :command, :kind_of => String
|
||||
attribute :cwd, :kind_of => String
|
||||
attribute :user, :kind_of => String, :default => nil
|
||||
attribute :password, :kind_of => String, :default => nil
|
||||
attribute :run_level, :equal_to => [:highest, :limited], :default => :limited
|
||||
attribute :force, :kind_of => [ TrueClass, FalseClass ], :default => false
|
||||
attribute :frequency_modifier, :kind_of => Integer, :default => 1
|
||||
attribute :frequency, :equal_to => [:minute,
|
||||
:hourly,
|
||||
:daily,
|
||||
:weekly,
|
||||
:monthly,
|
||||
:once,
|
||||
:on_logon,
|
||||
:onstart,
|
||||
:on_idle], :default => :hourly
|
||||
attribute :start_day, :kind_of => String, :default => nil
|
||||
attribute :start_time, :kind_of => String, :default => nil
|
||||
|
||||
attr_accessor :exists, :status, :enabled
|
||||
|
||||
def initialize(name, run_context=nil)
|
||||
super
|
||||
@action = :create
|
||||
end
|
||||
33
cookbooks/windows/resources/zipfile.rb
Normal file
33
cookbooks/windows/resources/zipfile.rb
Normal file
@@ -0,0 +1,33 @@
|
||||
#
|
||||
# Author:: Doug MacEachern (<dougm@vmware.com>)
|
||||
# Author:: Seth Chisamore (<schisamo@chef.io>)
|
||||
# Cookbook Name:: windows
|
||||
# Resource:: zipfile
|
||||
#
|
||||
# Copyright:: 2010, VMware, Inc.
|
||||
# Copyright:: 2011, Chef Software, Inc.
|
||||
#
|
||||
# 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.
|
||||
#
|
||||
|
||||
actions :unzip, :zip
|
||||
|
||||
attribute :path, :kind_of => String, :name_attribute => true
|
||||
attribute :source, :kind_of => String
|
||||
attribute :overwrite, :kind_of => [ TrueClass, FalseClass ], :default => false
|
||||
attribute :checksum, :kind_of => String
|
||||
|
||||
def initialize(name, run_context=nil)
|
||||
super
|
||||
@action = :unzip
|
||||
end
|
||||
Reference in New Issue
Block a user