octo diff on scheduler nodes, this wants to install said cron:tests within vagrant as well:
```
$ bin/octocatalog-diff --octocatalog-diff-args --no-truncroot@scheduler0:~# systemctl status swh-scheduler-update-details --to staging saatchimetrics.timer
Found host saatchi● swh-scheduler-update-metrics.timer - regular scheduler update-metrics refresh
Loaded: loaded (/etc/systemd/system/swh-scheduler-update-metrics.timer; enabled; vendor preset: enabled)
Active: active (waiting) since Tue 2021-08-03 14:29:18 UTC; 1min 6s ago
Trigger: Wed 2021-08-04 00:00:00 UTC; 9h left
Aug 03 14:29:18 scheduler0 systemd[1]: Started regular scheduler update-metrics refresh.
root@scheduler0:~# systemctl status swh-scheduler-update-metrics.service
● swh-scheduler-update-metrics.service - Software Heritage scheduler update-metrics
Loaded: loaded (/etc/systemd/system/swh-scheduler-update-metrics.service; disabled; vendor preset: enabled)
Active: inactive (dead)
```
octo diff on scheduler nodes, this wants to install the timer and service (only
scheduler0.staging, same goes for saatchi):
```
$ bin/octocatalog-diff --octocatalog-diff-args --no-truncate-details --to staging scheduler0.internal.staging.swh.network
Found host scheduler0.internal.softwareheritage.orgstaging.swh.network
WARN -> Environment "wip-pg-hba-rules-in-yaml" contained non-word characters, correcting name to wip_pg_hba_rules_in_yaml
Cloning into '/tmp/swh-ocd.b817WRJpQOfKHR5l/environments/production/data/private'...
done.
Cloning into '/tmp/swh-ocd.b817WRJpQOfKHR5l/environments/staging/data/private'...
done.
*** Running octocatalog-diff on host saatchischeduler0.internal.softwareheritage.orgstaging.swh.network
I, [2021-08-03T14:22:48.825291 #172446:32:17.362308 #28127] INFO -- : Catalogs compiled for saatchischeduler0.internal.softwareheritage.orgstaging.swh.network
I, [2021-08-03T14:22:49.945494 #172446:32:20.069655 #28127] INFO -- : Diffs computed for saatchischeduler0.internal.softwareheritage.orgstaging.swh.network
diff origin/production/saatchicheduler0.internal.softwareheritage.orgstaging.swh.network current/saatchicheduler0.internal.softwareheritage.orgstaging.swh.network
*******************************************
+ Concat_fragment[profile::cron::scheduler_update_metrics] =>
parameters =>
"order": "10"
"tag": "profile::cron::default"
"target": "profile::cron::default"
"content": >>>
# Cron snippet scheduler_update_metrics
016 * * * * swhscheduler /usr/bin/swh scheduler --config-file /etc/softwareheritage/scheduler/listener-runner.yml origin update-metrics
<<<
*******************************************
+ Profile::Cron::D[scheduler_update_metrics] = File[/etc/systemd/system/prometheus-node-exporter.service.d/restart.conf] =>
parameters =>
selinux_ignore_defaults =>
"command": "/usr/bin/swh scheduler --config-file /etc/softwareheritage/scheduler/listener-runner.yml origin update-metrics"+ false
*******************************************
File[/etc/systemd/system/prometheus-node-exporter.service.d] =>
parameters =>
selinux_ignore_defaults =>
"minute": "fqdn_rand"+ false
*******************************************
File[/etc/systemd/system/prometheus-statsd-exporter.service.d/restart.conf] =>
parameters =>
selinux_ignore_defaults =>
"target": "default"+ false
*******************************************
File[/etc/systemd/system/prometheus-statsd-exporter.service.d] =>
parameters =>
selinux_ignore_defaults =>
"unique_tag": "scheduler_update_metrics"+ false
*******************************************
File[/etc/systemd/system/rabbitmq-server.service.d/90-limits.conf] =>
parameters =>
selinux_ignore_defaults =>
"user": "swhscheduler"+ false
*******************************************
*** End octocatalog-diff on saatchi.internal.softwareheritage.org File[/etc/systemd/system/rabbitmq-server.service.d] =>
$ bin/octocatalog-diff --octocatalog-diff-args --no-truncate-details --to staging scheduler0.internal.staging.swh.network parameters =>
Found host scheduler0.internal.staging.swh.network selinux_ignore_defaults =>
WARN -> Environment "wip-pg-hba-rules-in-yaml" contained non-word characters, correcting name to wip_pg_hba_rules_in_yaml + false
Cloning into '/tmp/swh-ocd.wuPrxq8x/environments/production/data/private'...*******************************************
done.+ File[/etc/systemd/system/swh-scheduler-update-metrics.service] =>
Cloning into '/tmp/swh-ocd.wuPrxq8x/environments/staging/data/private'... parameters =>
done. "ensure": "file"
*** Running octocatalog-diff on host scheduler0.internal.staging.swh.network "group": "root"
"mode": "0444"
I, [2021-08-03T14:23:18.157225 #22233] INFO -- : Catalogs compiled for scheduler0.internal.staging.swh.network "notify": "Class[Systemd::Systemctl::Daemon_reload]"
I, [2021-08-03T14:23:19.302618 #22233] INFO -- : Diffs computed for scheduler0.internal.staging.swh.network "owner": "root"
diff origin/production/scheduler0.internal.staging.swh.network current/scheduler0.internal.staging.swh.network "show_diff": true
"content": >>>
# Scheduler Update Metrics unit file
# Managed by puppet class profile::swh::deploy::scheduler
# Changes will be overwritten
[Unit]
Description=Software Heritage scheduler update-metrics
Requires=network.target
After=network.target
[Service]
User=swhscheduler
Group=swhscheduler
Type=simple
ExecStart=/usr/bin/swh scheduler --config-file /etc/softwareheritage/scheduler/listener-runner.yml origin update-metrics
[Install]
WantedBy=multi-user.target
<<<
*******************************************
+ Concat_fragment[profile::cron::+ File[/etc/systemd/system/swh-scheduler_-update_-metrics] =.timer] =>
parameters =>
"order"ensure": "10"file"
"tag": "profile::cron::default""group": "root"
"target": "profile::cron::default"mode": "0444"
"notify": ["Class[Systemd::Systemctl::Daemon_reload]", "Service[swh-scheduler-update-metrics.timer]"]
"owner": "root"
"show_diff": true
"content": >>>
# Cron snippet scheduler_update_metrics[Install]
16 * * * * swhscheduler /usr/bin/swh scheduler --config-file /etc/softwareheritage/scheduler/listener-runner.yml origin update-metricsWantedBy=timers.target
[Timer]
OnCalendar=daily
Unit=swh-scheduler-update-metrics.service
[Unit]
Description=regular scheduler update-metrics refresh
<<<
*******************************************
+ Profile::Cron::D[scheduler_update_metrics] =>
parameters =>
"command": "/usr/bin/swh scheduler --config-file /etc/softwareheritage/scheduler/listener-runner.yml origin update-metrics"
"minute": "fqdn_rand"
"target": "default"
"unique_tag": "scheduler_update_metrics"
"user": "swhscheduler"
*******************************************
+ Service[swh-scheduler-update-metrics.timer] =>
parameters =>
"enable": true
"ensure": true
"provider": "systemd"
*******************************************
Systemd::Dropin_file[prometheus-node-exporter/restart.conf] =>
parameters =>
selinux_ignore_defaults =>
+ false
*******************************************
Systemd::Dropin_file[prometheus-statsd-exporter/restart.conf] =>
parameters =>
selinux_ignore_defaults =>
+ false
*******************************************
Systemd::Dropin_file[rabbitmq-server.service-90-limits.conf] =>
parameters =>
selinux_ignore_defaults =>
+ false
*******************************************
Systemd::Service_limits[rabbitmq-server.service] =>
parameters =>
selinux_ignore_defaults =>
+ false
*******************************************
+ Systemd::Timer[swh-scheduler-update-metrics.timer] =>
parameters =>
"active": true
"enable": true
"ensure": "present"
"group": "root"
"mode": "0444"
"owner": "root"
"path": "/etc/systemd/system"
"show_diff": true
"service_content": >>>
# Scheduler Update Metrics unit file
# Managed by puppet class profile::swh::deploy::scheduler
# Changes will be overwritten
[Unit]
Description=Software Heritage scheduler update-metrics
Requires=network.target
After=network.target
[Service]
User=swhscheduler
Group=swhscheduler
Type=simple
ExecStart=/usr/bin/swh scheduler --config-file /etc/softwareheritage/scheduler/listener-runner.yml origin update-metrics
[Install]
WantedBy=multi-user.target
<<<
"timer_content": >>>
[Install]
WantedBy=timers.target
[Timer]
OnCalendar=daily
Unit=swh-scheduler-update-metrics.service
[Unit]
Description=regular scheduler update-metrics refresh
<<<
*******************************************
Systemd::Tmpfile[gunicorn-swh-scheduler.conf] =>
parameters =>
filename =>
+ gunicorn-swh-scheduler.conf
*******************************************
Systemd::Tmpfile[gunicorn.conf] =>
parameters =>
filename =>
+ gunicorn.conf
*******************************************
+ Systemd::Unit_file[swh-scheduler-update-metrics.service] =>
parameters =>
"ensure": "present"
"group": "root"
"mode": "0444"
"owner": "root"
"path": "/etc/systemd/system"
"show_diff": true
"content": >>>
# Scheduler Update Metrics unit file
# Managed by puppet class profile::swh::deploy::scheduler
# Changes will be overwritten
[Unit]
Description=Software Heritage scheduler update-metrics
Requires=network.target
After=network.target
[Service]
User=swhscheduler
Group=swhscheduler
Type=simple
ExecStart=/usr/bin/swh scheduler --config-file /etc/softwareheritage/scheduler/listener-runner.yml origin update-metrics
[Install]
WantedBy=multi-user.target
<<<
*******************************************
+ Systemd::Unit_file[swh-scheduler-update-metrics.timer] =>
parameters =>
"active": true
"enable": true
"ensure": "present"
"group": "root"
"mode": "0444"
"owner": "root"
"path": "/etc/systemd/system"
"show_diff": true
"content": >>>
[Install]
WantedBy=timers.target
[Timer]
OnCalendar=daily
Unit=swh-scheduler-update-metrics.service
[Unit]
Description=regular scheduler update-metrics refresh
<<<
*******************************************
*** End octocatalog-diff on scheduler0.internal.staging.swh.network
```
tests within vagrant as well.