Thanks for that. Now, to test this thing. I didn't find any way to do local testing of a cgi script in the officers' or members' area of whimsy/www. (I'm currently using rackup to test the roster-emeritus code).
So is the best approach here to simply create the coi.cgi in www/officers/ and test using the live instance? If so, do I have to wait for Godot each time I commit code until something catches up? Thanks, Craig > On Jun 12, 2020, at 2:00 PM, Sam Ruby <ru...@intertwingly.net> wrote: > > $:.unshift '/srv/whimsy/lib' > require 'whimsy/asf' > > committees = ASF::Committee.officers + ASF::Committee.nonpmcs > > chairs = committees.map do |committee| > committee.chairs.map {|chair| chair[:id]} > end > > ids = (chairs.flatten + ASF::Service['board'].members.map(&:id)).uniq > > puts ids.map {|id| ASF::Person.find(id)}. > sort_by {|person| person.public_name.split.rotate(-1)}. > map {|person| person.public_name} > > - Sam Ruby > > On Tue, Jun 9, 2020 at 1:05 AM Craig Russell <apache....@gmail.com> wrote: >> >> Here's how I'd like to have the COI affirmation tool work. Once the >> discussion here nears consensus, I'll share the plan with the board. Unless >> anyone thinks that the tool should have a wider discussion on board@... >> >> The tool is protected by officer login and the credentials are sent to the >> server so that only officers can see the results. >> >> The tool executes one GET to retrieve: >> - the current COI document from foundation/officers/COI/fy2020/template.txt >> - the current list of officers who are required to affirm their agreement >> with the COI foundation/officers/COI/fy2020/signatories.txt >> - the current list of officers and their status (whether they have already >> affirmed) >> >> If the user is required to affirm, and has not done so already, the current >> COI document modified with the officer's availid and date is presented to >> the officer in a scroll window along with two buttons: (Cancel) and (Affirm) >> >> If the user is not required to affirm, or has already done so, or (Cancel) >> is pressed, the list of officers and their signing status is displayed. >> >> If Affirm is pressed: >> - the officer's availid and timestamp is sent to the server via POST >> - POST processing: >> -- the COI document with the officer's availid and date is written to the >> file called foundation/officers/COI/fy2020/availid.txt >> -- the list of officers and their signing status is displayed >> >> Open questions: >> - how to manage the list of officers required to affirm? one possibility is >> to create a file: foundation/officers/COI/fy2020/officers.txt which is >> created by secretary/chair at the beginning of each fiscal year. >> >> - is officer credentials sufficient for the purpose of this tool, or should >> the tool be restricted to those officers required to affirm? >> >> Feedback? >> >> Craig Russell >> Director, Apache Board >> apache....@gmail.com >> >> >> >> Craig L Russell c...@apache.org