diff --git a/data/hostname/indexer-worker01.euwest.azure.internal.softwareheritage.org.yaml b/data/hostname/indexer-worker01.euwest.azure.internal.softwareheritage.org.yaml index b0ec09f2..b7b0dc58 100644 --- a/data/hostname/indexer-worker01.euwest.azure.internal.softwareheritage.org.yaml +++ b/data/hostname/indexer-worker01.euwest.azure.internal.softwareheritage.org.yaml @@ -1,19 +1,20 @@ --- swh::deploy::worker::instances: - indexer_origin_extrinsic_metadata - indexer_content_mimetype - indexer_fossology_license mountpoints: /tmp: device: tmpfs fstype: tmpfs options: - "size=%{lookup('tmpfs::size')}" - "nr_inodes=%{lookup('tmpfs::nr_inodes')}" - noexec - nosuid - nodev - relatime - rw +waagent::swap::size_mb: 14336 diff --git a/data/hostname/indexer-worker02.euwest.azure.internal.softwareheritage.org.yaml b/data/hostname/indexer-worker02.euwest.azure.internal.softwareheritage.org.yaml index b0ec09f2..b7b0dc58 100644 --- a/data/hostname/indexer-worker02.euwest.azure.internal.softwareheritage.org.yaml +++ b/data/hostname/indexer-worker02.euwest.azure.internal.softwareheritage.org.yaml @@ -1,19 +1,20 @@ --- swh::deploy::worker::instances: - indexer_origin_extrinsic_metadata - indexer_content_mimetype - indexer_fossology_license mountpoints: /tmp: device: tmpfs fstype: tmpfs options: - "size=%{lookup('tmpfs::size')}" - "nr_inodes=%{lookup('tmpfs::nr_inodes')}" - noexec - nosuid - nodev - relatime - rw +waagent::swap::size_mb: 14336 diff --git a/data/hostname/indexer-worker03.euwest.azure.internal.softwareheritage.org.yaml b/data/hostname/indexer-worker03.euwest.azure.internal.softwareheritage.org.yaml index b0ec09f2..b7b0dc58 100644 --- a/data/hostname/indexer-worker03.euwest.azure.internal.softwareheritage.org.yaml +++ b/data/hostname/indexer-worker03.euwest.azure.internal.softwareheritage.org.yaml @@ -1,19 +1,20 @@ --- swh::deploy::worker::instances: - indexer_origin_extrinsic_metadata - indexer_content_mimetype - indexer_fossology_license mountpoints: /tmp: device: tmpfs fstype: tmpfs options: - "size=%{lookup('tmpfs::size')}" - "nr_inodes=%{lookup('tmpfs::nr_inodes')}" - noexec - nosuid - nodev - relatime - rw +waagent::swap::size_mb: 14336 diff --git a/data/hostname/indexer-worker04.euwest.azure.internal.softwareheritage.org.yaml b/data/hostname/indexer-worker04.euwest.azure.internal.softwareheritage.org.yaml index ef63c1d2..2ae1943a 100644 --- a/data/hostname/indexer-worker04.euwest.azure.internal.softwareheritage.org.yaml +++ b/data/hostname/indexer-worker04.euwest.azure.internal.softwareheritage.org.yaml @@ -1,18 +1,19 @@ --- swh::deploy::worker::instances: - indexer_origin_extrinsic_metadata - indexer_origin_intrinsic_metadata mountpoints: /tmp: device: tmpfs fstype: tmpfs options: - "size=%{lookup('tmpfs::size')}" - "nr_inodes=%{lookup('tmpfs::nr_inodes')}" - noexec - nosuid - nodev - relatime - rw +waagent::swap::size_mb: 14336 diff --git a/data/hostname/indexer-worker05.euwest.azure.internal.softwareheritage.org.yaml b/data/hostname/indexer-worker05.euwest.azure.internal.softwareheritage.org.yaml index ef63c1d2..2ae1943a 100644 --- a/data/hostname/indexer-worker05.euwest.azure.internal.softwareheritage.org.yaml +++ b/data/hostname/indexer-worker05.euwest.azure.internal.softwareheritage.org.yaml @@ -1,18 +1,19 @@ --- swh::deploy::worker::instances: - indexer_origin_extrinsic_metadata - indexer_origin_intrinsic_metadata mountpoints: /tmp: device: tmpfs fstype: tmpfs options: - "size=%{lookup('tmpfs::size')}" - "nr_inodes=%{lookup('tmpfs::nr_inodes')}" - noexec - nosuid - nodev - relatime - rw +waagent::swap::size_mb: 14336 diff --git a/data/hostname/indexer-worker06.euwest.azure.internal.softwareheritage.org.yaml b/data/hostname/indexer-worker06.euwest.azure.internal.softwareheritage.org.yaml index ef63c1d2..2ae1943a 100644 --- a/data/hostname/indexer-worker06.euwest.azure.internal.softwareheritage.org.yaml +++ b/data/hostname/indexer-worker06.euwest.azure.internal.softwareheritage.org.yaml @@ -1,18 +1,19 @@ --- swh::deploy::worker::instances: - indexer_origin_extrinsic_metadata - indexer_origin_intrinsic_metadata mountpoints: /tmp: device: tmpfs fstype: tmpfs options: - "size=%{lookup('tmpfs::size')}" - "nr_inodes=%{lookup('tmpfs::nr_inodes')}" - noexec - nosuid - nodev - relatime - rw +waagent::swap::size_mb: 14336 diff --git a/site-modules/profile/manifests/waagent.pp b/site-modules/profile/manifests/waagent.pp new file mode 100644 index 00000000..6c7370b0 --- /dev/null +++ b/site-modules/profile/manifests/waagent.pp @@ -0,0 +1,39 @@ +class profile::waagent { + $filepath = '/etc/waagent.conf' + $key_swap = 'ResourceDisk.EnableSwap' + $key_swap_size_mb = 'ResourceDisk.SwapSizeMB' + + $swap_size_mb = lookup('waagent::swap::size_mb', { + default_value => 0, + value_type => Integer + }) + + # Make sure the file exists, should have been installed by azure vm provisionning + file {$filepath: + ensure => present, + owner => 'root', + group => 'root', + mode => '0644', + } + + $enable_swap = $swap_size_mb ? { + 0 => 'n', + default => 'y', + } + + file_line {"${filepath}-${key_swap}": + ensure => present, + path => $filepath, + line => "${key_swap}=${enable_swap}", + match => '^ResourceDisk\.EnableSwap=', + require => File[$filepath], + } + + file_line {"${filepath}-${key_swap_size_mb}": + ensure => present, + path => $filepath, + line => "${key_swap_size_mb}=${swap_size_mb}", + match => '^ResourceDisk\.SwapSizeMB=', + require => File[$filepath], + } +} diff --git a/site-modules/role/manifests/swh_worker_azure.pp b/site-modules/role/manifests/swh_worker_azure.pp index a3645e3f..f40c8c1a 100644 --- a/site-modules/role/manifests/swh_worker_azure.pp +++ b/site-modules/role/manifests/swh_worker_azure.pp @@ -1,5 +1,6 @@ # Configuration for Azure workers class role::swh_worker_azure inherits role::swh_worker { include ::profile::swh::deploy::objstorage_cloud + include ::profile::waagent }