spec_helper_acceptance_local.rb: improve comment about lsb-release
[puppet-modules/puppetlabs-apt.git] / REFERENCE.md
1 # Reference
2
3 <!-- DO NOT EDIT: This document was generated by Puppet Strings -->
4
5 ## Table of Contents
6
7 ### Classes
8
9 #### Public Classes
10
11 * [`apt`](#apt): Main class, includes all other classes.
12 * [`apt::backports`](#aptbackports): Manages backports.
13
14 #### Private Classes
15
16 * `apt::params`: Provides defaults for the Apt module parameters.
17 * `apt::update`: Updates the list of available packages using apt-get update.
18
19 ### Defined types
20
21 * [`apt::conf`](#aptconf): Specifies a custom Apt configuration file.
22 * [`apt::key`](#aptkey): Manages the GPG keys that Apt uses to authenticate packages.
23 * [`apt::mark`](#aptmark): defined typeapt::mark
24 * [`apt::pin`](#aptpin): Manages Apt pins. Does not trigger an apt-get update run.
25 * [`apt::ppa`](#aptppa): Manages PPA repositories using `add-apt-repository`. Not supported on Debian.
26 * [`apt::setting`](#aptsetting): Manages Apt configuration files.
27 * [`apt::source`](#aptsource): Manages the Apt sources in /etc/apt/sources.list.d/.
28
29 ### Resource types
30
31 #### Public Resource types
32
33
34 #### Private Resource types
35
36 * `apt_key`: This type provides Puppet with the capabilities to manage GPG keys needed
37 by apt to perform package validation. Apt has it's own GPG keyring that can
38 be manipulated through the `apt-key` command.
39
40 ### Data types
41
42 * [`Apt::Auth_conf_entry`](#aptauth_conf_entry): Login configuration settings that are recorded in the file `/etc/apt/auth.conf`.
43 * [`Apt::Proxy`](#aptproxy): Configures Apt to connect to a proxy server.
44
45 ### Tasks
46
47 * [`init`](#init): Allows you to perform apt functions
48
49 ## Classes
50
51 ### `apt`
52
53 Main class, includes all other classes.
54
55 * **See also**
56   * https://docs.puppetlabs.com/references/latest/function.html#createresources
57     * for the create resource function
58
59 #### Parameters
60
61 The following parameters are available in the `apt` class.
62
63 ##### `provider`
64
65 Data type: `String`
66
67 Specifies the provider that should be used by apt::update.
68
69 Default value: `$apt::params::provider`
70
71 ##### `keyserver`
72
73 Data type: `String`
74
75 Specifies a keyserver to provide the GPG key. Valid options: a string containing a domain name or a full URL (http://, https://, or
76 hkp://).
77
78 Default value: `$apt::params::keyserver`
79
80 ##### `key_options`
81
82 Data type: `Optional[String]`
83
84 Specifies the default options for apt::key resources.
85
86 Default value: `$apt::params::key_options`
87
88 ##### `ppa_options`
89
90 Data type: `Optional[String]`
91
92 Supplies options to be passed to the `add-apt-repository` command.
93
94 Default value: `$apt::params::ppa_options`
95
96 ##### `ppa_package`
97
98 Data type: `Optional[String]`
99
100 Names the package that provides the `apt-add-repository` command.
101
102 Default value: `$apt::params::ppa_package`
103
104 ##### `backports`
105
106 Data type: `Optional[Hash]`
107
108 Specifies some of the default parameters used by apt::backports. Valid options: a hash made up from the following keys:
109
110 Options:
111
112 * **:location** `String`: See apt::backports for documentation.
113 * **:repos** `String`: See apt::backports for documentation.
114 * **:key** `String`: See apt::backports for documentation.
115
116 Default value: `$apt::params::backports`
117
118 ##### `confs`
119
120 Data type: `Hash`
121
122 Creates new `apt::conf` resources. Valid options: a hash to be passed to the create_resources function linked above.
123
124 Default value: `$apt::params::confs`
125
126 ##### `update`
127
128 Data type: `Hash`
129
130 Configures various update settings. Valid options: a hash made up from the following keys:
131
132 Options:
133
134 * **:frequency** `String`: Specifies how often to run `apt-get update`. If the exec resource `apt_update` is notified, `apt-get update` runs regardless of this value.
135 Valid options: 'always' (at every Puppet run); 'daily' (if the value of `apt_update_last_success` is less than current epoch time minus 86400);
136 'weekly' (if the value of `apt_update_last_success` is less than current epoch time minus 604800); and 'reluctantly' (only if the exec resource
137 `apt_update` is notified). Default: 'reluctantly'.
138 * **:loglevel** `Integer`: Specifies the log level of logs outputted to the console. Default: undef.
139 * **:timeout** `Integer`: Specifies how long to wait for the update to complete before canceling it. Valid options: an integer, in seconds. Default: undef.
140 * **:tries** `Integer`: Specifies how many times to retry the update after receiving a DNS or HTTP error. Default: undef.
141
142 Default value: `$apt::params::update`
143
144 ##### `purge`
145
146 Data type: `Hash`
147
148 Specifies whether to purge any existing settings that aren't managed by Puppet. Valid options: a hash made up from the following keys:
149
150 Options:
151
152 * **:sources.list** `Boolean`: Specifies whether to purge any unmanaged entries from sources.list. Default false.
153 * **:sources.list.d** `Boolean`: Specifies whether to purge any unmanaged entries from sources.list.d. Default false.
154 * **:preferences** `Boolean`: Specifies whether to purge any unmanaged entries from preferences. Default false.
155 * **:preferences.d.** `Boolean`: Specifies whether to purge any unmanaged entries from preferences.d. Default false.
156
157 Default value: `$apt::params::purge`
158
159 ##### `proxy`
160
161 Data type: `Apt::Proxy`
162
163 Configures Apt to connect to a proxy server. Valid options: a hash matching the locally defined type apt::proxy.
164
165 Default value: `$apt::params::proxy`
166
167 ##### `sources`
168
169 Data type: `Hash`
170
171 Creates new `apt::source` resources. Valid options: a hash to be passed to the create_resources function linked above.
172
173 Default value: `$apt::params::sources`
174
175 ##### `keys`
176
177 Data type: `Hash`
178
179 Creates new `apt::key` resources. Valid options: a hash to be passed to the create_resources function linked above.
180
181 Default value: `$apt::params::keys`
182
183 ##### `ppas`
184
185 Data type: `Hash`
186
187 Creates new `apt::ppa` resources. Valid options: a hash to be passed to the create_resources function linked above.
188
189 Default value: `$apt::params::ppas`
190
191 ##### `pins`
192
193 Data type: `Hash`
194
195 Creates new `apt::pin` resources. Valid options: a hash to be passed to the create_resources function linked above.
196
197 Default value: `$apt::params::pins`
198
199 ##### `settings`
200
201 Data type: `Hash`
202
203 Creates new `apt::setting` resources. Valid options: a hash to be passed to the create_resources function linked above.
204
205 Default value: `$apt::params::settings`
206
207 ##### `manage_auth_conf`
208
209 Data type: `Boolean`
210
211 Specifies whether to manage the /etc/apt/auth.conf file. When true, the file will be overwritten with the entries specified in
212 the auth_conf_entries parameter. When false, the file will be ignored (note that this does not set the file to absent.
213
214 Default value: `$apt::params::manage_auth_conf`
215
216 ##### `auth_conf_entries`
217
218 Data type: `Array[Apt::Auth_conf_entry]`
219
220 An optional array of login configuration settings (hashes) that are recorded in the file /etc/apt/auth.conf. This file has a netrc-like
221 format (similar to what curl uses) and contains the login configuration for APT sources and proxies that require authentication. See
222 https://manpages.debian.org/testing/apt/apt_auth.conf.5.en.html for details. If specified each hash must contain the keys machine, login and
223 password and no others. Specifying manage_auth_conf and not specifying this parameter will set /etc/apt/auth.conf to absent.
224
225 Default value: `$apt::params::auth_conf_entries`
226
227 ##### `auth_conf_owner`
228
229 Data type: `String`
230
231 The owner of the file /etc/apt/auth.conf. Default: '_apt' or 'root' on old releases.
232
233 Default value: `$apt::params::auth_conf_owner`
234
235 ##### `root`
236
237 Data type: `String`
238
239 Specifies root directory of Apt executable.
240
241 Default value: `$apt::params::root`
242
243 ##### `sources_list`
244
245 Data type: `String`
246
247 Specifies the path of the sources_list file to use.
248
249 Default value: `$apt::params::sources_list`
250
251 ##### `sources_list_d`
252
253 Data type: `String`
254
255 Specifies the path of the sources_list.d file to use.
256
257 Default value: `$apt::params::sources_list_d`
258
259 ##### `conf_d`
260
261 Data type: `String`
262
263 Specifies the path of the conf.d file to use.
264
265 Default value: `$apt::params::conf_d`
266
267 ##### `preferences`
268
269 Data type: `String`
270
271 Specifies the path of the preferences file to use.
272
273 Default value: `$apt::params::preferences`
274
275 ##### `preferences_d`
276
277 Data type: `String`
278
279 Specifies the path of the preferences.d file to use.
280
281 Default value: `$apt::params::preferences_d`
282
283 ##### `config_files`
284
285 Data type: `Hash`
286
287 A hash made up of the various configuration files used by Apt.
288
289 Default value: `$apt::params::config_files`
290
291 ##### `sources_list_force`
292
293 Data type: `Boolean`
294
295 Specifies whether to perform force purge or delete. Default false.
296
297 Default value: `$apt::params::sources_list_force`
298
299 ##### `update_defaults`
300
301 Data type: `Hash`
302
303
304
305 Default value: `$apt::params::update_defaults`
306
307 ##### `purge_defaults`
308
309 Data type: `Hash`
310
311
312
313 Default value: `$apt::params::purge_defaults`
314
315 ##### `proxy_defaults`
316
317 Data type: `Hash`
318
319
320
321 Default value: `$apt::params::proxy_defaults`
322
323 ##### `include_defaults`
324
325 Data type: `Hash`
326
327
328
329 Default value: `$apt::params::include_defaults`
330
331 ##### `apt_conf_d`
332
333 Data type: `String`
334
335
336
337 Default value: `$apt::params::apt_conf_d`
338
339 ##### `source_key_defaults`
340
341 Data type: `Hash`
342
343
344
345 Default value: `$apt::params::source_key_defaults`
346
347 ### `apt::backports`
348
349 Manages backports.
350
351 #### Examples
352
353 ##### Set up a backport source for Linux Mint qiana
354
355 ```puppet
356 class { 'apt::backports':
357   location => 'http://us.archive.ubuntu.com/ubuntu',
358   release  => 'trusty-backports',
359   repos    => 'main universe multiverse restricted',
360   key      => {
361     id     => '630239CC130E1A7FD81A27B140976EAF437D05B5',
362     server => 'hkps.pool.sks-keyservers.net',
363   },
364 }
365 ```
366
367 #### Parameters
368
369 The following parameters are available in the `apt::backports` class.
370
371 ##### `location`
372
373 Data type: `Optional[String]`
374
375 Specifies an Apt repository containing the backports to manage. Valid options: a string containing a URL. Default value for Debian and
376 Ubuntu varies:
377
378 - Debian: 'http://deb.debian.org/debian'
379
380 - Ubuntu: 'http://archive.ubuntu.com/ubuntu'
381
382 Default value: ``undef``
383
384 ##### `release`
385
386 Data type: `Optional[String]`
387
388 Specifies a distribution of the Apt repository containing the backports to manage. Used in populating the `source.list` configuration file.
389 Default: on Debian and Ubuntu, `${facts['os']['distro']['codename']}-backports`. We recommend keeping this default, except on other operating
390 systems.
391
392 Default value: ``undef``
393
394 ##### `repos`
395
396 Data type: `Optional[String]`
397
398 Specifies a component of the Apt repository containing the backports to manage. Used in populating the `source.list` configuration file.
399 Default value for Debian and Ubuntu varies:
400
401 - Debian: 'main contrib non-free'
402
403 - Ubuntu: 'main universe multiverse restricted'
404
405 Default value: ``undef``
406
407 ##### `key`
408
409 Data type: `Optional[Variant[String, Hash]]`
410
411 Specifies a key to authenticate the backports. Valid options: a string to be passed to the id parameter of the apt::key defined type, or a
412 hash of parameter => value pairs to be passed to apt::key's id, server, content, source, and/or options parameters. Default value
413 for Debian and Ubuntu varies:
414
415 - Debian: 'A1BD8E9D78F7FE5C3E65D8AF8B48AD6246925553'
416
417 - Ubuntu: '630239CC130E1A7FD81A27B140976EAF437D05B5'
418
419 Default value: ``undef``
420
421 ##### `pin`
422
423 Data type: `Optional[Variant[Integer, String, Hash]]`
424
425 Specifies a pin priority for the backports. Valid options: a number or string to be passed to the `id` parameter of the `apt::pin` defined
426 type, or a hash of `parameter => value` pairs to be passed to `apt::pin`'s corresponding parameters.
427
428 Default value: `200`
429
430 ##### `include`
431
432 Data type: `Optional[Variant[Hash]]`
433
434 Specifies whether to include 'deb' or 'src', or both.
435
436 Default value: `{}`
437
438 ## Defined types
439
440 ### `apt::conf`
441
442 Specifies a custom Apt configuration file.
443
444 #### Parameters
445
446 The following parameters are available in the `apt::conf` defined type.
447
448 ##### `content`
449
450 Data type: `Optional[String]`
451
452 Required unless `ensure` is set to 'absent'. Directly supplies content for the configuration file.
453
454 Default value: ``undef``
455
456 ##### `ensure`
457
458 Data type: `Enum['present', 'absent']`
459
460 Specifies whether the configuration file should exist. Valid options: 'present' and 'absent'.
461
462 Default value: `present`
463
464 ##### `priority`
465
466 Data type: `Variant[String, Integer]`
467
468 Determines the order in which Apt processes the configuration file. Files with lower priority numbers are loaded first.
469 Valid options: a string containing an integer or an integer.
470
471 Default value: `50`
472
473 ##### `notify_update`
474
475 Data type: `Optional[Boolean]`
476
477 Specifies whether to trigger an `apt-get update` run.
478
479 Default value: ``undef``
480
481 ### `apt::key`
482
483 Manages the GPG keys that Apt uses to authenticate packages.
484
485 * **Note** The apt::key defined type makes use of the apt_key type, but includes extra functionality to help prevent duplicate keys.
486
487 #### Examples
488
489 ##### Declare Apt key for apt.puppetlabs.com source
490
491 ```puppet
492 apt::key { 'puppetlabs':
493   id      => '6F6B15509CF8E59E6E469F327F438280EF8D349F',
494   server  => 'hkps.pool.sks-keyservers.net',
495   options => 'http-proxy="http://proxyuser:proxypass@example.org:3128"',
496 }
497 ```
498
499 #### Parameters
500
501 The following parameters are available in the `apt::key` defined type.
502
503 ##### `id`
504
505 Data type: `Pattern[/\A(0x)?[0-9a-fA-F]{8}\Z/, /\A(0x)?[0-9a-fA-F]{16}\Z/, /\A(0x)?[0-9a-fA-F]{40}\Z/]`
506
507 Specifies a GPG key to authenticate Apt package signatures. Valid options: a string containing a key ID (8 or 16 hexadecimal
508 characters, optionally prefixed with "0x") or a full key fingerprint (40 hexadecimal characters).
509
510 Default value: `$title`
511
512 ##### `ensure`
513
514 Data type: `Enum['present', 'absent', 'refreshed']`
515
516 Specifies whether the key should exist. Valid options: 'present', 'absent' or 'refreshed'. Using 'refreshed' will make keys auto
517 update when they have expired (assuming a new key exists on the key server).
518
519 Default value: `present`
520
521 ##### `content`
522
523 Data type: `Optional[String]`
524
525 Supplies the entire GPG key. Useful in case the key can't be fetched from a remote location and using a file resource is inconvenient.
526
527 Default value: ``undef``
528
529 ##### `source`
530
531 Data type: `Optional[Pattern[/\Ahttps?:\/\//, /\Aftp:\/\//, /\A\/\w+/]]`
532
533 Specifies the location of an existing GPG key file to copy. Valid options: a string containing a URL (ftp://, http://, or https://) or
534 an absolute path.
535
536 Default value: ``undef``
537
538 ##### `server`
539
540 Data type: `Pattern[/\A((hkp|hkps|http|https):\/\/)?([a-z\d])([a-z\d-]{0,61}\.)+[a-z\d]+(:\d{2,5})?(\/[a-zA-Z\d\-_.]+)*\/?$/]`
541
542 Specifies a keyserver to provide the GPG key. Valid options: a string containing a domain name or a full URL (http://, https://,
543 hkp:// or hkps://). The hkps:// protocol is currently only supported on Ubuntu 18.04.
544
545 Default value: `$::apt::keyserver`
546
547 ##### `weak_ssl`
548
549 Data type: `Boolean`
550
551 Specifies whether strict SSL verification on a https URL should be disabled. Valid options: true or false.
552
553 Default value: ``false``
554
555 ##### `options`
556
557 Data type: `Optional[String]`
558
559 Passes additional options to `apt-key adv --keyserver-options`.
560
561 Default value: `$::apt::key_options`
562
563 ### `apt::mark`
564
565 defined typeapt::mark
566
567 #### Parameters
568
569 The following parameters are available in the `apt::mark` defined type.
570
571 ##### `setting`
572
573 Data type: `Enum['auto','manual','hold','unhold']`
574
575 auto, manual, hold, unhold
576 specifies the behavior of apt in case of no more dependencies installed
577 https://manpages.debian.org/sretch/apt/apt-mark.8.en.html
578
579 ### `apt::pin`
580
581 Manages Apt pins. Does not trigger an apt-get update run.
582
583 * **See also**
584   * http://linux.die.net/man/5/apt_preferences
585     * for context on these parameters
586
587 #### Parameters
588
589 The following parameters are available in the `apt::pin` defined type.
590
591 ##### `ensure`
592
593 Data type: `Optional[Enum['file', 'present', 'absent']]`
594
595 Specifies whether the pin should exist. Valid options: 'file', 'present', and 'absent'.
596
597 Default value: `present`
598
599 ##### `explanation`
600
601 Data type: `Optional[String]`
602
603 Supplies a comment to explain the pin. Default: "${caller_module_name}: ${name}".
604
605 Default value: ``undef``
606
607 ##### `order`
608
609 Data type: `Variant[Integer]`
610
611 Determines the order in which Apt processes the pin file. Files with lower order numbers are loaded first.
612
613 Default value: `50`
614
615 ##### `packages`
616
617 Data type: `Variant[String, Array]`
618
619 Specifies which package(s) to pin.
620
621 Default value: `'*'`
622
623 ##### `priority`
624
625 Data type: `Variant[Numeric, String]`
626
627 Sets the priority of the package. If multiple versions of a given package are available, `apt-get` installs the one with the highest
628 priority number (subject to dependency constraints). Valid options: an integer.
629
630 Default value: `0`
631
632 ##### `release`
633
634 Data type: `Optional[String]`
635
636 Tells APT to prefer packages that support the specified release. Typical values include 'stable', 'testing', and 'unstable'.
637
638 Default value: `''`
639
640 ##### `release_version`
641
642 Data type: `Optional[String]`
643
644 Tells APT to prefer packages that support the specified operating system release version (such as Debian release version 7).
645
646 Default value: `''`
647
648 ##### `component`
649
650 Data type: `Optional[String]`
651
652 Names the licensing component associated with the packages in the directory tree of the Release file.
653
654 Default value: `''`
655
656 ##### `originator`
657
658 Data type: `Optional[String]`
659
660 Names the originator of the packages in the directory tree of the Release file.
661
662 Default value: `''`
663
664 ##### `label`
665
666 Data type: `Optional[String]`
667
668 Names the label of the packages in the directory tree of the Release file.
669
670 Default value: `''`
671
672 ##### `origin`
673
674 Data type: `Optional[String]`
675
676
677
678 Default value: `''`
679
680 ##### `version`
681
682 Data type: `Optional[String]`
683
684
685
686 Default value: `''`
687
688 ##### `codename`
689
690 Data type: `Optional[String]`
691
692
693
694 Default value: `''`
695
696 ### `apt::ppa`
697
698 Manages PPA repositories using `add-apt-repository`. Not supported on Debian.
699
700 #### Examples
701
702 ##### Example declaration of an Apt PPA
703
704 ```puppet
705 apt::ppa{ 'ppa:openstack-ppa/bleeding-edge': }
706 ```
707
708 #### Parameters
709
710 The following parameters are available in the `apt::ppa` defined type.
711
712 ##### `ensure`
713
714 Data type: `String`
715
716 Specifies whether the PPA should exist. Valid options: 'present' and 'absent'.
717
718 Default value: `'present'`
719
720 ##### `options`
721
722 Data type: `Optional[String]`
723
724 Supplies options to be passed to the `add-apt-repository` command. Default: '-y'.
725
726 Default value: `$::apt::ppa_options`
727
728 ##### `release`
729
730 Data type: `Optional[String]`
731
732 Specifies the operating system of your node. Valid options: a string containing a valid LSB distribution codename.
733 Optional if `puppet facts show os.distro.codename` returns your correct distribution release codename.
734
735 Default value: `$facts['os']['distro']['codename']`
736
737 ##### `dist`
738
739 Data type: `Optional[String]`
740
741 Specifies the distribution of your node. Valid options: a string containing a valid distribution codename.
742 Optional if `puppet facts show os.name` returns your correct distribution name.
743
744 Default value: `$facts['os']['name']`
745
746 ##### `package_name`
747
748 Data type: `Optional[String]`
749
750 Names the package that provides the `apt-add-repository` command. Default: 'software-properties-common'.
751
752 Default value: `$::apt::ppa_package`
753
754 ##### `package_manage`
755
756 Data type: `Boolean`
757
758 Specifies whether Puppet should manage the package that provides `apt-add-repository`.
759
760 Default value: ``false``
761
762 ### `apt::setting`
763
764 Manages Apt configuration files.
765
766 * **See also**
767   * https://docs.puppetlabs.com/references/latest/type.html#file-attributes
768     * for more information on source and content parameters
769
770 #### Parameters
771
772 The following parameters are available in the `apt::setting` defined type.
773
774 ##### `priority`
775
776 Data type: `Variant[String, Integer, Array]`
777
778 Determines the order in which Apt processes the configuration file. Files with higher priority numbers are loaded first.
779
780 Default value: `50`
781
782 ##### `ensure`
783
784 Data type: `Optional[Enum['file', 'present', 'absent']]`
785
786 Specifies whether the file should exist. Valid options: 'present', 'absent', and 'file'.
787
788 Default value: `file`
789
790 ##### `source`
791
792 Data type: `Optional[String]`
793
794 Required, unless `content` is set. Specifies a source file to supply the content of the configuration file. Cannot be used in combination
795 with `content`. Valid options: see link above for Puppet's native file type source attribute.
796
797 Default value: ``undef``
798
799 ##### `content`
800
801 Data type: `Optional[String]`
802
803 Required, unless `source` is set. Directly supplies content for the configuration file. Cannot be used in combination with `source`. Valid
804 options: see link above for Puppet's native file type content attribute.
805
806 Default value: ``undef``
807
808 ##### `notify_update`
809
810 Data type: `Boolean`
811
812 Specifies whether to trigger an `apt-get update` run.
813
814 Default value: ``true``
815
816 ### `apt::source`
817
818 Manages the Apt sources in /etc/apt/sources.list.d/.
819
820 #### Examples
821
822 ##### Install the puppetlabs apt source
823
824 ```puppet
825 apt::source { 'puppetlabs':
826   location => 'http://apt.puppetlabs.com',
827   repos    => 'main',
828   key      => {
829     id     => '6F6B15509CF8E59E6E469F327F438280EF8D349F',
830     server => 'hkps.pool.sks-keyservers.net',
831   },
832 }
833 ```
834
835 #### Parameters
836
837 The following parameters are available in the `apt::source` defined type.
838
839 ##### `location`
840
841 Data type: `Optional[String]`
842
843 Required, unless ensure is set to 'absent'. Specifies an Apt repository. Valid options: a string containing a repository URL.
844
845 Default value: ``undef``
846
847 ##### `comment`
848
849 Data type: `String`
850
851 Supplies a comment for adding to the Apt source file.
852
853 Default value: `$name`
854
855 ##### `ensure`
856
857 Data type: `String`
858
859 Specifies whether the Apt source file should exist. Valid options: 'present' and 'absent'.
860
861 Default value: `present`
862
863 ##### `release`
864
865 Data type: `Optional[String]`
866
867 Specifies a distribution of the Apt repository.
868
869 Default value: ``undef``
870
871 ##### `repos`
872
873 Data type: `String`
874
875 Specifies a component of the Apt repository.
876
877 Default value: `'main'`
878
879 ##### `include`
880
881 Data type: `Optional[Variant[Hash]]`
882
883 Configures include options. Valid options: a hash of available keys.
884
885 Options:
886
887 * **:deb** `Boolean`: Specifies whether to request the distribution's compiled binaries. Default true.
888 * **:src** `Boolean`: Specifies whether to request the distribution's uncompiled source code. Default false.
889
890 Default value: `{}`
891
892 ##### `key`
893
894 Data type: `Optional[Variant[String, Hash]]`
895
896 Creates a declaration of the apt::key defined type. Valid options: a string to be passed to the `id` parameter of the `apt::key`
897 defined type, or a hash of `parameter => value` pairs to be passed to `apt::key`'s `id`, `server`, `content`, `source`, and/or
898 `options` parameters.
899
900 Default value: ``undef``
901
902 ##### `pin`
903
904 Data type: `Optional[Variant[Hash, Numeric, String]]`
905
906 Creates a declaration of the apt::pin defined type. Valid options: a number or string to be passed to the `id` parameter of the
907 `apt::pin` defined type, or a hash of `parameter => value` pairs to be passed to `apt::pin`'s corresponding parameters.
908
909 Default value: ``undef``
910
911 ##### `architecture`
912
913 Data type: `Optional[String]`
914
915 Tells Apt to only download information for specified architectures. Valid options: a string containing one or more architecture names,
916 separated by commas (e.g., 'i386' or 'i386,alpha,powerpc'). Default: undef (if unspecified, Apt downloads information for all architectures
917 defined in the Apt::Architectures option).
918
919 Default value: ``undef``
920
921 ##### `allow_unsigned`
922
923 Data type: `Boolean`
924
925 Specifies whether to authenticate packages from this release, even if the Release file is not signed or the signature can't be checked.
926
927 Default value: ``false``
928
929 ##### `notify_update`
930
931 Data type: `Boolean`
932
933 Specifies whether to trigger an `apt-get update` run.
934
935 Default value: ``true``
936
937 ## Resource types
938
939 ## Data types
940
941 ### `Apt::Auth_conf_entry`
942
943 Login configuration settings that are recorded in the file `/etc/apt/auth.conf`.
944
945 * **See also**
946   * https://manpages.debian.org/testing/apt/apt_auth.conf.5.en.html
947   * for more information
948
949 Alias of `Struct[{
950     machine => String[1],
951     login => String,
952     password => String
953   }]`
954
955 #### Parameters
956
957 The following parameters are available in the `Apt::Auth_conf_entry` data type.
958
959 ##### `machine`
960
961 Hostname of machine to connect to.
962
963 ##### `login`
964
965 Specifies the username to connect with.
966
967 ##### `password`
968
969 Specifies the password to connect with.
970
971 ### `Apt::Proxy`
972
973 Configures Apt to connect to a proxy server.
974
975 Alias of `Struct[{
976     ensure     => Optional[Enum['file', 'present', 'absent']],
977     host       => Optional[String],
978     port       => Optional[Integer[0, 65535]],
979     https      => Optional[Boolean],
980     https_acng => Optional[Boolean],
981     direct     => Optional[Boolean],
982   }]`
983
984 #### Parameters
985
986 The following parameters are available in the `Apt::Proxy` data type.
987
988 ##### `ensure`
989
990 Specifies whether the proxy should exist. Valid options: 'file', 'present', and 'absent'. Prefer 'file' over 'present'.
991
992 ##### `host`
993
994 Specifies a proxy host to be stored in `/etc/apt/apt.conf.d/01proxy`. Valid options: a string containing a hostname.
995
996 ##### `port`
997
998 Specifies a proxy port to be stored in `/etc/apt/apt.conf.d/01proxy`. Valid options: an integer containing a port number.
999
1000 ##### `https`
1001
1002 Specifies whether to enable https proxies.
1003
1004 ##### `direct`
1005
1006 Specifies whether or not to use a `DIRECT` https proxy if http proxy is used but https is not.
1007
1008 ## Tasks
1009
1010 ### `init`
1011
1012 Allows you to perform apt functions
1013
1014 **Supports noop?** false
1015
1016 #### Parameters
1017
1018 ##### `action`
1019
1020 Data type: `Enum[update, upgrade, dist-upgrade, autoremove]`
1021
1022 Action to perform 
1023