星期二补丁后安装Windows更新

时间:2018-12-14 13:23:25

标签: windows puppet

每个补丁星期二之后的星期六(这是该月的第二个星期二),我想通过Puppet安装更新。我为此做了一个计划任务,它本身是通过puppetlabs / scheduled_task模块中的scheduled_task资源来管理的。我正在为此任务使用此触发器:

    $trigger = {
      schedule         => monthly,
      start_time       => '13:15',
      which_occurrence => second,
      day_of_week      => [sat],
      minutes_interval => '80',
      minutes_duration => '560',
    }

。但是,在像这样的月份中,第二个星期二在第二个星期六之后到来,此触发器将在错误的日期启动任务。如何在每个月的第二个星期二之后的第一个星期六触发任务?

也许有可能计算星期二补丁发布后的天数,但这将要求Puppet能够获取每月第二个星期二的日期(不能进行自动对焦)。

1 个答案:

答案 0 :(得分:0)

puppetlabs / task_scheduler模块管理通过Windows内置的Task Scheduler服务运行的任务。 Puppet本身不运行任务。它只是向系统服务注册它们并管理它们的属性。这对您来说是个问题,因为据我所知,Windows任务计划程序不支持您要查找的计划类型。当然,puppetlabs / scheduled_task无法提供底层操作系统不支持的功能。

您的替代方案包括但不一定限于:

  • 为任务选择其他时间表。例如,将任务安排在该月的第三个星期六,该日期将始终在第二个星期二之后。

  • 使用Exec来执行更新,并结合条件逻辑和Puppet时间表来控制应用程序的日期和频率。

的确,后者需要Puppet来执行一些日期计算。 Puppet可以做到这一点,但是您可能需要为此编写一个自定义函数(在Ruby中)。自定义功能可以在目录构建过程中访问,并且可以使用Ruby的几乎所有功能。