Text
This commit is contained in:
		@@ -1,5 +1,5 @@
 | 
			
		||||
---
 | 
			
		||||
title: "GitLab — выполнение по расписанию"
 | 
			
		||||
title: "GitLab: выполнение по расписанию"
 | 
			
		||||
category: Программирование
 | 
			
		||||
tags: программирование, gitlab, git,
 | 
			
		||||
...
 | 
			
		||||
@@ -21,3 +21,16 @@ only:
 | 
			
		||||
* в веб-интерфейсе в меню **CI/CD** / **Расписания** добавить **Новое расписание**
 | 
			
		||||
и назначить исполнение задачи на время, когда нагрузка на сервер минимальна.
 | 
			
		||||
 | 
			
		||||
Для пропуска запланированной задачи в исполняемый скрипт нужно добавить
 | 
			
		||||
проверку условия запуска. Например, чтобы отменить запуск компиляции,
 | 
			
		||||
если за последний день (86400 секунд) не было изменений, можно оформить
 | 
			
		||||
`.gitlab-ci.yml` примерно так:
 | 
			
		||||
 | 
			
		||||
```yaml
 | 
			
		||||
nightly-job:
 | 
			
		||||
    only:
 | 
			
		||||
        - schedules
 | 
			
		||||
    script:
 | 
			
		||||
        - "[ $(($(date +%s)-$(git log -1 --date=format:%s --format=%cd))) -gt 86400 ] && exit 0"
 | 
			
		||||
        - make
 | 
			
		||||
```
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user