diff --git a/README.md b/README.md index 4746233..17a6f49 100644 --- a/README.md +++ b/README.md @@ -10,6 +10,8 @@ A structured fact is also provided to list installed profiles along with some me ## Usage +> Local profile installation is non-functional on macOS 11 and newer. Use the method => 'mdm' below. +
 mac_profiles_handler::manage { 'com.puppetlabs.myprofile':
   ensure  => present,
@@ -39,7 +41,7 @@ You must pass the profilers identifier as your namevar, ensure accepts present o
 
 ### Profile installation via MicroMDM and MDMDirector
 
-Profiles can be sent via MDMDirector and compatible tools. Add your configuration to Hiera (`eyaml` recommended for secrets). Only template style profiles are supported.
+Profiles can be sent via MDMDirector and compatible tools. Add your configuration to Hiera (`eyaml` recommended for secrets).
 
 
 # MDMDirector information
@@ -50,14 +52,34 @@ mac_profiles_handler::mdmdirector_username: mdmdirector
 mac_profiles_handler::method: mdm
 
-Or you can install only some profiles via MDM + +You can install profiles with a mobileconfig file in the module or an ERB template. + +
+mac_profiles_handler::manage { 'com.puppetlabs.myprofile':
+  ensure  => present,
+  file_source => 'puppet:///modules/mymodule/com.puppetlabs.myprofile.mobileconfig',
+  method => 'mdm'
+}
+
 mac_profiles_handler::manage { 'com.puppetlabs.myprofile':
   ensure  => present,
   file_source => template('mymodule/com.puppetlabs.myprofile.erb'),
   type => 'template',
-  method => 'mdm' # or set this to 'local'
+  method => 'mdm'
+}
+
+ +When ensuring a profile is removed, you must also provide the file_source and method. + +
+mac_profiles_handler::manage { 'com.puppetlabs.myprofile':
+  ensure  => absent,
+  file_source => template('mymodule/com.puppetlabs.myprofile.erb'),
+  type => 'template',
+  method => 'mdm'
 }
 
diff --git a/manifests/mdm.pp b/manifests/mdm.pp index de0cd17..706b3c0 100644 --- a/manifests/mdm.pp +++ b/manifests/mdm.pp @@ -9,15 +9,10 @@ $enrolled = $facts['mdmenrollment']['mdm_enrolled'] - if $type != 'template' { - if 'puppet:///modules/' in $file_source { - $munged_source = inline_template('<%= @file_source[18..-1] %>') - notify{$munged_source: } - $input = file($munged_source) - } - else { - $input = $file_source - } + if 'puppet:///modules/' in $file_source { + $munged_source = inline_template('<%= @file_source[18..-1] %>') + notify{$munged_source: } + $input = file($munged_source) } else { $input = $file_source } @@ -28,7 +23,7 @@ } } - if $enrolled and $type == 'template' { + if $enrolled { $profiles = $facts['profiles']