diff --git a/site-modules/profile/manifests/network.pp b/site-modules/profile/manifests/network.pp --- a/site-modules/profile/manifests/network.pp +++ b/site-modules/profile/manifests/network.pp @@ -1,4 +1,8 @@ -# Network configuration for Software Heritage servers +# Network configuration for Software Heritage servers. + +# This class is enabled when the `networks` hiera variable returns a value that +# is not empty. + class profile::network { debnet::iface::loopback { 'lo': } diff --git a/site-modules/role/manifests/swh_api.pp b/site-modules/role/manifests/swh_api.pp --- a/site-modules/role/manifests/swh_api.pp +++ b/site-modules/role/manifests/swh_api.pp @@ -1,6 +1,4 @@ class role::swh_api inherits role::swh_base_api { - include profile::network - # Extra deposit and storage services include profile::swh::deploy::deposit include profile::swh::deploy::storage diff --git a/site-modules/role/manifests/swh_base.pp b/site-modules/role/manifests/swh_base.pp --- a/site-modules/role/manifests/swh_base.pp +++ b/site-modules/role/manifests/swh_base.pp @@ -14,5 +14,9 @@ include profile::megacli } + if lookup('networks', {default_value => {}}) { + include profile::network + } + include profile::swh } diff --git a/site-modules/role/manifests/swh_deposit.pp b/site-modules/role/manifests/swh_deposit.pp --- a/site-modules/role/manifests/swh_deposit.pp +++ b/site-modules/role/manifests/swh_deposit.pp @@ -1,6 +1,4 @@ class role::swh_deposit inherits role::swh_server { - include profile::network - # Web UI include profile::swh::deploy::deposit diff --git a/site-modules/role/manifests/swh_forge.pp b/site-modules/role/manifests/swh_forge.pp --- a/site-modules/role/manifests/swh_forge.pp +++ b/site-modules/role/manifests/swh_forge.pp @@ -1,6 +1,4 @@ class role::swh_forge inherits role::swh_server { - include profile::network - include profile::apache::rewrite_domains include profile::phabricator diff --git a/site-modules/role/manifests/swh_gateway.pp b/site-modules/role/manifests/swh_gateway.pp --- a/site-modules/role/manifests/swh_gateway.pp +++ b/site-modules/role/manifests/swh_gateway.pp @@ -1,3 +1,2 @@ class role::swh_gateway inherits role::swh_base { - include profile::network } diff --git a/site-modules/role/manifests/swh_sysadmin.pp b/site-modules/role/manifests/swh_sysadmin.pp --- a/site-modules/role/manifests/swh_sysadmin.pp +++ b/site-modules/role/manifests/swh_sysadmin.pp @@ -1,6 +1,4 @@ class role::swh_sysadmin inherits role::swh_server { - include profile::network - include profile::prometheus::server include profile::grafana diff --git a/site-modules/role/manifests/swh_worker_inria.pp b/site-modules/role/manifests/swh_worker_inria.pp --- a/site-modules/role/manifests/swh_worker_inria.pp +++ b/site-modules/role/manifests/swh_worker_inria.pp @@ -1,3 +1,2 @@ class role::swh_worker_inria inherits role::swh_worker { - include profile::network }