我正在使用在Jenkins中运行的Groovy脚本。我想知道如何为每次运行增加10000
循环。
我们假设第一天价值为10000
,第二天20000
跟随第二天30000
,40000
,依此类推,直到接下来的10天。
如果我用Jenkins工作完成时难以检索的随机数做这件事,那就有点难了。
答案 0 :(得分:1)
您可以执行以下操作
<html>
<body>
<div class="main-menu">
<div class="left-menu"></div>
</div>
</body>
</html>
答案 1 :(得分:1)
您可以使用Period.between(LocalDate from, LocalDate to)
计算以天为单位的两个日期之间的距离,并乘以您的初始值。请考虑以下脚本:
import java.time.LocalDate
import java.time.Period
final int step = 10000
final int max = 100000
final LocalDate from = LocalDate.parse("2018-02-09")
(0..15).each {
def now = LocalDate.now().plusDays(it)
def days = Period.between(from, now).getDays() + 1
def value = Math.min(step * days, max)
println "Day ${it}: ${value}"
}
这里我们指定开始日期,我们将比较距离(2018年2月9日),然后我们从0到15循环仅出于测试原因,我们指定now
日期作为当前日期加上当前值循环(+ 0,+ 1,+ 2,...)。 Period.between(from, now).getDays() + 1
计算我们的乘数 - 在每一步中,我们将step
乘以days
中表示的距离(我们必须从1开始,所以1 * 10000 == 10000
)。我们还使用Math.min(step * days, max)
安全措施(其中max == 100000
),因此我们所采用的值不能大于max
变量中定义的值。当您运行以下脚本时,您将在控制台中看到类似的内容:
Day 0: 10000
Day 1: 20000
Day 2: 30000
Day 3: 40000
Day 4: 50000
Day 5: 60000
Day 6: 70000
Day 7: 80000
Day 8: 90000
Day 9: 100000
Day 10: 100000
Day 11: 100000
Day 12: 100000
Day 13: 100000
Day 14: 100000
Day 15: 100000
当然,在你的Groovy脚本中,你可以摆脱循环并使用:
def now = LocalDate.now()
当你计算你的最终价值时,你会每天将10000
增加到100000
。希望它有所帮助。