forked from Controls/gitea-pages
document new package repository configuration in puppet
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
``profile::package_list``
|
||||
============================
|
||||
|
||||
This module installs a list of packages on the node, with extra options inlcuding the filtering by OS.
|
||||
|
||||
This profile is usually direcly used from Puppet::
|
||||
|
||||
profile::repository_list{'rpm_repos::influx':}
|
||||
|
||||
Parameters
|
||||
----------
|
||||
|
||||
=============================== ======== =============================================
|
||||
**Name** **Type** **Default**
|
||||
------------------------------- -------- ---------------------------------------------
|
||||
packages list []
|
||||
=============================== ======== =============================================
|
||||
|
||||
|
||||
|
||||
``packages``
|
||||
~~~~~~~~~~~~
|
||||
|
||||
This list contains the names of the packages to be installed. The names may be "extended" by tags, separated by ``:``.
|
||||
|
||||
========== ===============================
|
||||
Tag Function
|
||||
---------- -------------------------------
|
||||
absent package will be removed
|
||||
latest always latest version installed
|
||||
os=redhat7 only install on given OS
|
||||
os!redhat7 do not install on given OS
|
||||
========== ===============================
|
||||
|
||||
|
||||
Example definitions::
|
||||
|
||||
java-11-openjdk
|
||||
@Java Platform
|
||||
java-1.8.0-openjdk:os=redhat8:latest:os!redhat9
|
||||
java-1.8.0-openjdk:os=redhat7:absent
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,73 @@
|
||||
``profile::repository_list``
|
||||
============================
|
||||
|
||||
This module configures adds a list of package repositories from hiera
|
||||
and filters those according to OS version.
|
||||
|
||||
Parameters
|
||||
----------
|
||||
|
||||
=============================== =========== =============================================
|
||||
**Name** **Type** **Default**
|
||||
------------------------------- ----------- ---------------------------------------------
|
||||
descr string
|
||||
baseurl string
|
||||
gpgkey string undef
|
||||
gpgcheck bool false
|
||||
disable bool true
|
||||
priority integer undef
|
||||
exclude string/list ''
|
||||
=============================== =========== =============================================
|
||||
|
||||
|
||||
``title``
|
||||
~~~~~~~~~
|
||||
|
||||
The repository definition will end up as ``/etc/yum.repos.d/${title}.repo`` on the node
|
||||
|
||||
|
||||
|
||||
``descr``
|
||||
~~~~~~~~~
|
||||
|
||||
Description of the package repository.
|
||||
|
||||
|
||||
``baseurl``
|
||||
~~~~~~~~~~~
|
||||
|
||||
URL where the repository is available from, e.g.::
|
||||
|
||||
https://repo01.psi.ch/el8/tags/$pli_repo_tag/epel/
|
||||
|
||||
|
||||
``gpgkey``
|
||||
~~~~~~~~~~
|
||||
|
||||
URL or file path where the signing GPG key is available from, e.g.::
|
||||
|
||||
https://repo01.psi.ch/el8/keys/RPM-GPG-KEY-EPEL-8
|
||||
|
||||
|
||||
``gpgcheck``
|
||||
~~~~~~~~~~~~
|
||||
|
||||
Check GPG signature of installed packages.
|
||||
|
||||
|
||||
``disable``
|
||||
~~~~~~~~~~~
|
||||
|
||||
If the repository should be checked for package installation/updates or not.
|
||||
|
||||
|
||||
``priority``
|
||||
~~~~~~~~~~~~
|
||||
|
||||
What priority do packages from this repositry have?
|
||||
|
||||
|
||||
``exclude``
|
||||
~~~~~~~~~~~
|
||||
|
||||
List or comma separated string with packages to be ignored from this repositores. Wildcards are supported.
|
||||
@@ -0,0 +1,47 @@
|
||||
``profile::repository_list``
|
||||
============================
|
||||
|
||||
This module configures adds a list of package repositories from hiera
|
||||
and filters those according to OS version.
|
||||
|
||||
Parameters
|
||||
----------
|
||||
|
||||
=============================== ======== =============================================
|
||||
**Name** **Type** **Default**
|
||||
------------------------------- -------- ---------------------------------------------
|
||||
accept_empty bool false
|
||||
=============================== ======== =============================================
|
||||
|
||||
|
||||
``title``
|
||||
~~~~~~~~~
|
||||
|
||||
Name of the list of software repositores to be installed.
|
||||
It will lookup in Hiera for a list ``$title`` and look up the
|
||||
repository definitons with ``hiera_hash("rpm_repos::repo::${name}")``.
|
||||
|
||||
The repository definitions not suitable for this OS will be filtered away,
|
||||
then with the rest a repository configuration is writen to the node
|
||||
using ``profile::repository``. The ``osversion`` key in the repository definition
|
||||
signals the major RHEL version for which this repository is for.
|
||||
|
||||
Example definition::
|
||||
|
||||
rpm_repos::repo::epel_rhel8:
|
||||
name: 'epel'
|
||||
descr: "Extra Packages for Enterprise Linux 8"
|
||||
baseurl: 'https://repo01.psi.ch/el8/tags/$pli_repo_tag/epel/'
|
||||
gpgkey: 'https://repo01.psi.ch/el8/keys/RPM-GPG-KEY-EPEL-8'
|
||||
disable: false
|
||||
gpgcheck: true
|
||||
osversion: 8
|
||||
exclude:
|
||||
- "slurm*"
|
||||
|
||||
|
||||
|
||||
``accept_empty``
|
||||
~~~~~~~~~~~~~~~~
|
||||
|
||||
Do not fail when the repository list is empty after
|
||||
+19
-21
@@ -1,7 +1,7 @@
|
||||
``profile::yum_client``
|
||||
``profile::rpm_repos``
|
||||
=======================
|
||||
|
||||
This module configures :manpage:`yum(8)`.
|
||||
This module configures :manpage:`dnf(8)` and sets up the default package repositores.
|
||||
|
||||
|
||||
Parameters
|
||||
@@ -10,32 +10,30 @@ Parameters
|
||||
=============================== ======== =============================================
|
||||
**Name** **Type** **Default**
|
||||
------------------------------- -------- ---------------------------------------------
|
||||
exclude list hiera('yum_client::exclude', [])
|
||||
package_groups list hiera_array('yum_client::package_groups', [])
|
||||
purge_repositories bool hiera('yum_client::purge_repositories')
|
||||
repos list hiera_array('yum_client::repositories')
|
||||
repo_list string 'rpm_repos::default'
|
||||
repo_tags hash hiera_hash('rpm_repos::tag')
|
||||
exclude list hiera('base::package_exclude, [])
|
||||
purge_repositories bool hiera('rpm_repos::purge_repositories')
|
||||
=============================== ======== =============================================
|
||||
|
||||
|
||||
``repo_list``
|
||||
~~~~~~~~~~~~~
|
||||
|
||||
Name of the list of default software repositores to be installed.
|
||||
|
||||
``repo_tags``
|
||||
~~~~~~~~~~~~~
|
||||
|
||||
Hash containing the repository tag which should be used per OS.
|
||||
The key for RHEL 7 is ``redhat7`` and points by default to ``prod``,
|
||||
whereas for later versions is ``rhel-$MAJOR_VERSION`` (eg. for ``redhat8`` it is ``rhel-8``)
|
||||
|
||||
``exclude``
|
||||
~~~~~~~~~~~
|
||||
|
||||
An array containing entries suitable for the ``exclude`` option in
|
||||
:manpage:`yum.conf(5)`.
|
||||
|
||||
|
||||
``package_group``
|
||||
~~~~~~~~~~~~~~~~~
|
||||
|
||||
A list containing the names of the package groups to be installed on the
|
||||
systems. The package groups have to be defined through `pkg_group::$NAME`_ and
|
||||
are completely independent of Yum (environment) groups.
|
||||
|
||||
|
||||
``pkg_group::$NAME``
|
||||
~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
The list of packages that comprise the package group ``$NAME``.
|
||||
:manpage:`dnf.conf(5)`.
|
||||
|
||||
|
||||
``purge_repositories``
|
||||
Reference in New Issue
Block a user