This is an automated email from the ASF dual-hosted git repository.
sebb pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/whimsy.git
The following commit(s) were added to refs/heads/master by this push:
new 5bb4688 Only read calendar once as part of ASF::SVN.update
5bb4688 is described below
commit 5bb46886ad6c2d69420062d829db8485bbcfdef0
Author: Sebb <[email protected]>
AuthorDate: Tue Jul 7 21:57:28 2020 +0100
Only read calendar once as part of ASF::SVN.update
---
www/board/agenda/views/actions/publish.json.rb | 38 ++++++++++++--------------
1 file changed, 17 insertions(+), 21 deletions(-)
diff --git a/www/board/agenda/views/actions/publish.json.rb
b/www/board/agenda/views/actions/publish.json.rb
index 0233b69..ad5adc1 100755
--- a/www/board/agenda/views/actions/publish.json.rb
+++ b/www/board/agenda/views/actions/publish.json.rb
@@ -41,8 +41,6 @@ CALENDAR = File.join(BOARD_SITE, 'calendar.mdtext')
ASF::SVN.svn('update', dir) # TODO: does this need auth?
end
-calendar = File.read(CALENDAR)
-
# clean up summary
@summary = @summary.gsub(/\r\n/,"\n").sub(/\s+\Z/,'') + "\n"
@@ -52,22 +50,6 @@ date = Date.parse(@date.gsub('_', '-'))
year = date.year
fdate = date.strftime("%d %B %Y")
-# add year header
-unless calendar.include? "##{year}"
- calendar[/^()#.*Board meeting minutes #/,1] =
- "# #{year} Board meeting minutes # {##{year}}\n\n"
-end
-
-# add summary
-if calendar.include? "\n- [#{fdate}]"
- calendar.sub! /\n-\s+\[#{fdate}\].*?(\n[-#])/m, "\n" + @summary + '\1'
-else
- calendar[/# #{year} Board meeting minutes #.*\n()/,1] = "\n" + @summary
-end
-
-# remove from calendar
-calendar.sub! /^(\s*[*-]\s+#{fdate}\s*?\n)/, ''
-
minutes = "board_minutes_#{@date}.txt"
#Commit the Minutes
@@ -88,10 +70,24 @@ ASF::SVN.update MINUTES, @message, env, _ do |tmpdir|
end
# Update the Calendar
-if File.read(CALENDAR) != calendar
- ASF::SVN.update CALENDAR, @message, env, _ do |tmpdir, old_contents|
- calendar
+ASF::SVN.update CALENDAR, @message, env, _ do |tmpdir, calendar|
+ # add year header
+ unless calendar.include? "##{year}"
+ calendar[/^()#.*Board meeting minutes #/,1] =
+ "# #{year} Board meeting minutes # {##{year}}\n\n"
+ end
+
+ # add summary
+ if calendar.include? "\n- [#{fdate}]"
+ calendar.sub! /\n-\s+\[#{fdate}\].*?(\n[-#])/m, "\n" + @summary + '\1'
+ else
+ calendar[/# #{year} Board meeting minutes #.*\n()/,1] = "\n" + @summary
end
+
+ # remove from calendar
+ calendar.sub! /^(\s*[*-]\s+#{fdate}\s*?\n)/, ''
+
+ calendar
end
# Clean up board directory