Page MenuHomePhabricator

Toolforge: migrate cron servers to Debian Buster
Closed, ResolvedPublic

Event Timeline

Change 732986 had a related patch set uploaded (by Majavah; author: Majavah):

[operations/puppet@production] toolforge::cronrunner: disable cron on non-active hosts

https://gerrit.wikimedia.org/r/732986

Found a related note in profile::toolforge::grid::cronrunner:

# We need to include exec environment here since the current
# version of jsub checks the local environment to find the full
# path to things before submitting them to the grid. This assumes
# that jsub is always run in an environment identical to the exec
# nodes. This is kind of terrible, so we need to fix that eventually.
# Until then...
include profile::toolforge::grid::exec_environ

@Majavah has pointed out that the rearranged /usr dir structure between buster and stretch may cause us problems here. Need to do some testing to figure out how likely that is to bite us (and whether we can work around it with some symlinks)

Change 732986 merged by Arturo Borrero Gonzalez:

[operations/puppet@production] toolforge::cronrunner: disable cron on non-active hosts

https://gerrit.wikimedia.org/r/732986

Mentioned in SAL (#wikimedia-cloud) [2022-02-08T12:16:47Z] <arturo> created VM toolsbeta-sgecron-02 (T284767)

Change 760933 had a related patch set uploaded (by Arturo Borrero Gonzalez; author: Arturo Borrero Gonzalez):

[operations/puppet@production] toolforge: grid: fix condition for legacy ssh_known_host file generation

https://gerrit.wikimedia.org/r/760933

Change 760933 merged by Arturo Borrero Gonzalez:

[operations/puppet@production] toolforge: grid: fix condition for legacy ssh_known_host file generation

https://gerrit.wikimedia.org/r/760933

Change 761684 had a related patch set uploaded (by Arturo Borrero Gonzalez; author: Arturo Borrero Gonzalez):

[operations/puppet@production] toolforge: automated tests: introduce testcase for different executable paths

https://gerrit.wikimedia.org/r/761684

Change 761684 merged by Arturo Borrero Gonzalez:

[operations/puppet@production] toolforge: automated tests: introduce testcase for different executable paths

https://gerrit.wikimedia.org/r/761684

Change 805848 had a related patch set uploaded (by Majavah; author: Majavah):

[operations/puppet@production] P:toolforge::cronrunner: sync crontabs between hosts

https://gerrit.wikimedia.org/r/805848

I wanted to use this to ensure we only have one active cron runner:

# if this is not the active cron runner, block tool crons for easier migration between nodes,
# but allow root owned crons (most imporantly puppet runs) to still run as intended
# for more details, see crontab(1)
file { '/etc/cron.allow':
    ensure  => $is_active.bool2str('absent', 'file'),
    content => "root\n",
}

That does not work. /etc/cron.allow controls who can use the crontab command, but the cron daemon itself ignores it.

Change 807194 had a related patch set uploaded (by Majavah; author: Majavah):

[operations/puppet@production] P:toolforge::grid::cronrunner: disable cron on non-active hosts

https://gerrit.wikimedia.org/r/807194

Change 807194 merged by Andrew Bogott:

[operations/puppet@production] P:toolforge::grid::cronrunner: disable cron on non-active hosts

https://gerrit.wikimedia.org/r/807194

Change 805848 merged by Andrew Bogott:

[operations/puppet@production] P:toolforge::grid::cronrunner: sync crontabs between hosts

https://gerrit.wikimedia.org/r/805848

Mentioned in SAL (#wikimedia-cloud) [2022-06-27T18:02:44Z] <taavi> switchover active cron server to tools-sgecron-2 T284767