comparison modules/apt/REFERENCE.md @ 386:3fce34f642f1

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