time_epoch = run_command(sh, '-c', 'echo "$SOURCE_DATE_EPOCH"', check: true).stdout().strip()
if time_epoch == '' and git.found() and run_command('test', '-e', '.git', check: false).returncode() == 0
# If we're in a git repository, use the creation time of the latest git tag.
- latest_tag = run_command(git, 'describe', '--abbrev=0', '--tags', check: true).stdout().strip()
- time_epoch = run_command(git, 'log', '--no-show-signature', '-1', '--format=%at', latest_tag, check: true).stdout()
-else
- # Fallback to current epoch.
+ latest_tag = run_command(git, 'describe', '--abbrev=0', '--tags', check: false).stdout().strip()
+ if latest_tag != ''
+ time_epoch = run_command(git, 'log', '--no-show-signature', '-1', '--format=%at', latest_tag, check: true).stdout()
+ endif
+endif
+
+# Fallback to current epoch.
+if time_epoch == ''
time_epoch = run_command(date, '+%s', check: true).stdout()
endif
generate_date = run_command(date, '--utc', '--date=@' + time_epoch, '+%Y-%m-%d', check: true).stdout().strip()