# Report definitions for Fedora 14 # Copyright 2010-2011 John Poelstra # # Permission is hereby granted, free of charge, to any person # obtaining a copy of this software and associated documentation files # (the "Software"), to deal in the Software without restriction, # including without limitation the rights to use, copy, modify, merge, # publish, distribute, sublicense, and/or sell copies of the Software, # and to permit persons to whom the Software is furnished to do so, # subject to the following conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS # BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN # ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN # CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE # SOFTWARE. # macro weekly_start [2010-10-03] # Sunday macro weekly_end [2010-10-20] # Wednesday falling two weeks after starting Sunday # Define flags for filtered reporting flags ambassadors flags bugtriage flags blocker # use to proof blocker meeting placement flags design flags devel flags docs flags elections flags fpl flags hidden # used to hide tasks that are not necessary for Fedora reports flags infrastructure flags interface flags key # use for report of key tasks/high level overview--reflected on Fedora wiki flags proto # used for drafting new schedules and shows tasks useful for doing this flags pm flags pr flags marketing flags roadmap # for major milestones appearing on product pages flags translation flags quality flags releng flags spins flags web # Gantt chart viewable and printable through TaskJugglerUI # To enable Gantt charts in these "taskreport" definitions, add "chart" to the end of the "column name" line /* For nicest hardcopy ouput: 1) Generate schedule in GUI and set zoom (drop town middel/top of the screen) to "Days (small)" 2) Set printer properties to --landscape --US legal size paper 3) Select printer name "print to file (pdf) 4) Specify output location 5) "Print" An html gantt chart version is available too, though not a polished as this version */ # Show all teams taskreport "All Tasks" { headline "${content_title} ${major} Tasks & Milestones" sorttasks tree, startup columns name, start, end, duration timeformat "%a %Y-%b-%d" loadunit days scenario actual hidetask hidden } # Show Ambassadors Tasks taskreport "Ambassadors" { headline "${content_title} ${major} Ambassadors Tasks & Milestones" sorttasks tree, startup columns name, start, end, duration timeformat "%a %Y-%b-%d" loadunit days scenario actual hidetask ~ambassadors } # Show Blocker Meeting Tasks taskreport "Blocker" { headline "${content_title} ${major} Blocker Bug Milestones" sorttasks tree, startup columns name, start, end, duration timeformat "%a %Y-%b-%d" loadunit days scenario actual hidetask ~blocker } # Show Elections Schedule taskreport "Elections" { headline "${content_title} ${major} Elections" sorttasks tree, startup columns name, start, end, duration timeformat "%a %Y-%b-%d" loadunit days scenario actual hidetask ~elections } # Design Only taskreport "Design Team" { headline "${content_title} ${major} Design Team Tasks & Milestones" sorttasks startup columns name, start, end, duration timeformat "%a %Y-%b-%d" loadunit days scenario actual hidetask ~design | ~isleaf() # filter out parent tasknames like 'supplemental wallpaper process' } # design + releng dates taskreport "Design + Key" { headline "${content_title} ${major} Design Team Tasks & Milestones" sorttasks tree, startup columns name, start, end, duration timeformat "%a %Y-%b-%d" loadunit days scenario actual hidetask ~design & ~key } # Development Only taskreport "Development" { headline "${content_title} ${major} Development Tasks & Milestones" sorttasks startup columns name, start, end, duration timeformat "%a %Y-%b-%d" loadunit days scenario actual hidetask ~devel } # Documentation Only taskreport "Documentation" { headline "${content_title} ${major} Documentation Tasks & Milestones" sorttasks tree, startup columns name, start, end, duration timeformat "%a %Y-%b-%d" loadunit days scenario actual hidetask ~docs } # Documentation & Key Tasks taskreport "Documentation + Key" { headline "${content_title} ${major} Documentation + Key Tasks & Milestones" sorttasks tree, startup columns name, start, end, duration timeformat "%a %Y-%b-%d" loadunit days scenario actual hidetask ~docs & ~key } # Documentation & Translation taskreport "Docs & Translation" { headline "${content_title} ${major} Documentation & Translation Tasks & Milestones" sorttasks tree, startup columns name, start, end, duration timeformat "%a %Y-%b-%d" loadunit days scenario actual hidetask ~docs & ~translation & ~key } # Fedora Project Leader taskreport "Fedora Project Leader" { headline "${content_title} ${major} FPL Tasks & Milestones" sorttasks tree, startup columns name, start, end, duration timeformat "%a %Y-%b-%d" loadunit days scenario actual hidetask ~fpl } # Media/Public Relations taskreport "Media/Public Relations" { headline "${content_title} ${major} Media/PR Tasks & Milestones" sorttasks tree, startup columns name, start, end, duration timeformat "%a %Y-%b-%d" loadunit days scenario actual hidetask ~pr } taskreport "Infrastructure" { headline "${content_title} ${major} Key Tasks & Milestones" sorttasks startup columns name, start, end, duration timeformat "%a %Y-%b-%d" loadunit days scenario actual hidetask ~infrastructure } # Key Tasks Only--Agrees to # http://poelstra.fedorapeople.org/schedules/f-14/f-14-key-tasks.html taskreport "Key" { headline "${content_title} ${major} Key Tasks & Milestones" sorttasks startup columns name, start, end, duration timeformat "%a %Y-%b-%d" loadunit days scenario actual hidetask ~key } # taskreport "Key (planned)" { # headline "${content_title} ${major} Key Tasks & Milestones" # sorttasks startup # columns name, start, end, duration # timeformat "%a %d-%b-%Y" # loadunit days # scenario plan # hidetask ~key # } # Project Management Only taskreport "PM" { headline "${content_title} ${major} Project Management Tasks & Milestones" sorttasks tree, startup columns name, start, end, duration timeformat "%a %Y-%b-%d" loadunit days scenario actual hidetask ~pm & ~blocker } # Marketing Only taskreport "Marketing" { headline "${content_title} ${major} Marketing Tasks & Milestones" sorttasks tree, startup columns name, start, end, duration timeformat "%a %Y-%b-%d" loadunit days scenario actual hidetask ~marketing } # Quality Assurance Only taskreport "Quality Assurance" { headline "${content_title} ${major} Quality Assurance Tasks & Milestones" sorttasks tree, startup columns name, start, end, duration timeformat "%a %Y-%b-%d" loadunit days scenario actual hidetask ~quality } # Quality Assurance Only taskreport "Quality & Release Engineering" { headline "${content_title} ${major} Quality Assurance & Release Engineering" sorttasks tree, startup columns name, start, end, duration timeformat "%a %Y-%b-%d" loadunit days scenario actual hidetask ~quality & ~releng } # Release Engineering Only taskreport "Release Engineering" { headline "${content_title} ${major} Release Engineering Tasks & Milestones" sorttasks tree, startup columns name, start, end, duration timeformat "%a %Y-%b-%d" loadunit days scenario actual hidetask ~releng } # Spins taskreport "Spins" { headline "${content_title} ${major} Spins Tasks" sorttasks startup columns name, start, end, duration timeformat "%a %Y-%b-%d" loadunit days scenario actual hidetask ~spins } # Spins + Key taskreport "Spins + Key" { headline "${content_title} ${major} Spins + Key Tasks" sorttasks startup columns name, start, end, duration timeformat "%a %Y-%b-%d" loadunit days scenario actual hidetask ~spins & ~key } # Translation Only taskreport "Translation" { headline "${content_title} ${major} Translation Tasks & Milestones" sorttasks tree, startup columns name, start, end, duration timeformat "%a %Y-%b-%d" loadunit days scenario actual hidetask ~translation } # Translation + Key taskreport "Translation + Key" { headline "${content_title} ${major} Translation + Key Tasks" sorttasks tree, startup columns name, start, end, duration timeformat "%a %Y-%b-%d" loadunit days scenario actual hidetask ~translation & ~key } # Web Only taskreport "Web Team" { headline "${content_title} ${major} Web Team Tasks & Milestones" sorttasks startup columns name, start, end, duration timeformat "%a %Y-%b-%d" loadunit days scenario actual hidetask ~web } # Web + Key taskreport "Web + Key" { headline "${content_title} ${major} Web Team + Tasks & Milestones" sorttasks startup columns name, start, end, duration timeformat "%a %Y-%b-%d" loadunit days scenario actual hidetask ~web & ~key } # "Proto" is short for "protoype". It is used to filter tasks # flagged as "proto" for protoyping new release schedules # start name with an "a" so it is at the start of the list taskreport "AProto" { headline "DRAFT ${content_title} ${major} Prototype" sorttasks startup, nameup columns name, start, end, duration, chart timeformat "%a %Y-%b-%d" loadunit days scenario actual hidetask ~proto } taskreport "Development + Key" { headline "${content_title} ${major} Combo Devel" sorttasks tree, startup columns name, start, end, duration timeformat "%a %Y-%b-%d" loadunit days scenario actual hidetask (~devel & ~key) } # E N D of G A N T T / U I R E P O R T definitions # All Teams macro all_navbar [ rawhead '
All Ambassadors Design Devel Docs Elections Project Leader Infrastructure Key Marketing PM Media/PR Quality RelEng Spins Translation Web || F13 F12
' ] htmltaskreport "${content}-${major}-all-tasks.html" { ${all_navbar} headline "${content_title} ${major} Tasks" columns name, start, end, duration sorttasks tree, startup timeformat "%a %Y-%m-%d" scenarios actual hidetask ( hidden ) } icalreport "${content}-${major}-all-milestones.ics" { hidetask ~isMilestone() scenario actual } # Ambassador Team Reports htmltaskreport "${content}-${major}-ambassadors-tasks.html" { ${all_navbar} headline "${content_title} ${major} Ambassadors Team Tasks" sorttasks tree, startup columns no, name, start, end, duration timeformat "%a %Y-%m-%d" scenarios actual hidetask ~ambassadors } icalreport "${content}-${major}-ambassadors.ics" { hidetask (~isMilestone() | ~ambassadors) scenario actual } # Design Team Reports htmltaskreport "${content}-${major}-design-tasks.html" { ${all_navbar} headline "${content_title} ${major} Design Team Tasks" sorttasks startup columns no, name, start, end, duration timeformat "%a %Y-%m-%d" scenarios actual hidetask ~design } icalreport "${content}-${major}-design.ics" { hidetask (~isMilestone() | ~design) scenario actual } # Development Team Reports htmltaskreport "${content}-${major}-devel-tasks.html" { ${all_navbar} sorttasks tree, startup headline "${content_title} ${major} Development Team Tasks" columns no, name, start, end, duration timeformat "%a %Y-%m-%d" scenarios actual hidetask ~devel } icalreport "${content}-${major}-devel.ics" { hidetask (~isMilestone() | ~devel) scenario actual } # Docs Team Reports htmltaskreport "${content}-${major}-docs-tasks.html" { ${all_navbar} sorttasks startup # report all tasks in sequential order headline "${content_title} ${major} Docs Team Tasks" columns no, name, start, end, duration timeformat "%a %Y-%m-%d" scenarios actual hidetask ~docs } htmltaskreport "${content}-${major}-docs-tree-tasks.html" { ${all_navbar} sorttasks tree, startup headline "${content_title} ${major} Docs Team Tasks" columns no, name, start, end, duration timeformat "%a %Y-%m-%d" scenarios actual hidetask ~docs } icalreport "${content}-${major}-docs.ics" { hidetask (~isMilestone() | ~docs) scenario actual } # Elections htmltaskreport "${content}-${major}-elections.html" { ${all_navbar} sorttasks tree, startup headline "${content_title} ${major} Elections " columns no, name, start, end, duration timeformat "%a %Y-%m-%d" scenarios actual hidetask ~elections } # FPL htmltaskreport "${content}-${major}-fpl.html" { ${all_navbar} sorttasks tree, startup headline "${content_title} ${major} FPL" columns no, name, start, end, duration timeformat "%a %Y-%m-%d" scenarios actual hidetask ~fpl } icalreport "${content}-${major}-fpl.ics" { scenario actual hidetask ~fpl } # PR htmltaskreport "${content}-${major}-pr.html" { ${all_navbar} sorttasks tree, startup headline "${content_title} ${major} Media/PR" columns no, name, start, end, duration timeformat "%a %Y-%m-%d" scenarios actual hidetask ~pr } icalreport "${content}-${major}-pr.ics" { hidetask ~pr scenario actual } # Infrastructure htmltaskreport "${content}-${major}-infrastructure.html" { ${all_navbar} sorttasks startup headline "${content_title} ${major} Infrastructure Freezes" columns no, name, start, end, duration timeformat "%a %Y-%m-%d" scenarios actual hidetask ~infrastructure } # key tasks # this report mirrors what should be on the wiki # https://fedoraproject.org/wiki/Releases/14/Schedule htmltaskreport "${content}-${major}-key-tasks.html" { ${all_navbar} headline "${content_title} ${major} Key Tasks & Milestones" columns name, start, end sorttasks startup timeformat "%a %Y-%m-%d" scenarios actual hidetask ~key } icalreport "${content}-${major}-key.ics" { hidetask (~isMilestone() | ~key) scenario actual } # Marketing Team Reports htmltaskreport "${content}-${major}-marketing-tasks.html" { ${all_navbar} sorttasks startup headline "${content_title} ${major} Marketing Team Tasks" columns no, name, start, end, duration timeformat "%a %Y-%m-%d" scenarios actual hidetask ~marketing } icalreport "${content}-${major}-marketing.ics" { hidetask (~isMilestone() | ~marketing) scenario actual } # Release Engineering Team Reports htmltaskreport "${content}-${major}-releng-tasks.html" { ${all_navbar} sorttasks tree, startup headline "${content_title} ${major} Releng Team Tasks" columns no, name, start, end, duration timeformat "%a %Y-%m-%d" scenarios actual hidetask ~releng } icalreport "${content}-${major}-releng.ics" { hidetask (~isMilestone() | ~releng) scenario actual } # Quality Team Reports htmltaskreport "${content}-${major}-quality-tasks.html" { ${all_navbar} sorttasks tree, startup headline "${content_title} ${major} Quality Tasks" columns no, name, start, end, duration timeformat "%a %Y-%m-%d" scenarios actual hidetask ~quality } icalreport "${content}-${major}-quality.ics" { hidetask (~isMilestone() | ~quality) scenario actual } # Spins SIG Reports htmltaskreport "${content}-${major}-spins-tasks.html" { ${all_navbar} sorttasks startup headline "${content_title} ${major} Spins SIG Tasks" columns no, name, start, end, duration timeformat "%a %Y-%m-%d" scenarios actual hidetask ~spins } icalreport "${content}-${major}-spins.ics" { hidetask (~isMilestone() | ~spins) scenario actual } # Translation Team Reports htmltaskreport "${content}-${major}-trans-tasks.html" { ${all_navbar} sorttasks tree, startup headline "${content_title} ${major} Translation Tasks" columns no, name, start, end, duration timeformat "%a %Y-%m-%d" scenarios actual hidetask ~translation } icalreport "${content}-${major}-translation.ics" { hidetask (~isMilestone() | ~translation) scenario actual } # Web Team Reports htmltaskreport "${content}-${major}-web-tasks.html" { ${all_navbar} sorttasks startup # leave out "tree" because major headings clutter report unnecessarily headline "${content_title} ${major} Web Team Tasks" columns no, name, start, end, duration timeformat "%a %Y-%m-%d" scenarios actual hidetask ~web & ~infrastructure } icalreport "${content}-${major}-web.ics" { hidetask (~isMilestone() | ~web) scenario actual } ### Miscelaneous reports ### htmltaskreport "${content}-${major}-pm-tasks.html" { sorttasks startup headline "${content_title} ${major} Project Management Tasks" columns no, name, start, end, duration timeformat "%a %Y-%m-%d" scenarios actual hidetask ~pm } icalreport "${content}-${major}-pm.ics" { hidetask (~isMilestone() | ~pm) scenario actual } htmltaskreport "${content}-${major}-blocker-meetings.html" { sorttasks startup headline "${content_title} ${major} Blocker Meeting" columns no, name, start, end, duration timeformat "%a %Y-%m-%d" scenarios actual hidetask ~blocker & ~key } # XML report that contains all info about the scheduled project. # These two reports export the entire schedule for outside parsing and analysis # These reports are required for other teams--do not remove xmlreport "${content}-${major}-v1.tjx" { version 1 scenarios actual } xmlreport "${content}-${major}-gold.tjx" { version 2 scenarios actual, plan } # Text export of entire schedule for outside parsing and analysis # This report is required for other teams--do not remove csvtaskreport "${content}-${major}.csv" { columns name, id, note, resources, start, end, duration timeformat "%a %Y-%m-%d" scenario actual hidetask ~isTaskOfProject(${content}${major}) # useful filter if doing an "include" from other schedules } # Reports for weekly email to team lists csvtaskreport "${content}-${major}-ambassadors-weekly.csv" { start ${weekly_start} end ${weekly_end} sorttasks startup columns start, end, name timeformat "%a %d-%b" scenario actual hidetask ~ambassadors } csvtaskreport "${content}-${major}-design-weekly.csv" { start ${weekly_start} end ${weekly_end} sorttasks startup columns start, end, name timeformat "%a %d-%b" scenario actual hidetask ~design } csvtaskreport "${content}-${major}-devel-weekly.csv" { start ${weekly_start} end ${weekly_end} sorttasks startup columns start, end, name timeformat "%a %d-%b" scenario actual hidetask ~devel } csvtaskreport "${content}-${major}-docs-weekly.csv" { start ${weekly_start} end ${weekly_end} sorttasks startup columns start, end, name timeformat "%a %d-%b" scenario actual hidetask ~docs } csvtaskreport "${content}-${major}-fpl-weekly.csv" { start ${weekly_start} end ${weekly_end} sorttasks startup columns start, end, name timeformat "%a %d-%b" scenario actual hidetask ~fpl } csvtaskreport "${content}-${major}-infrastructure-weekly.csv" { start ${weekly_start} end ${weekly_end} sorttasks startup columns start, end, name timeformat "%a %d-%b" scenario actual hidetask ~infrastructure } csvtaskreport "${content}-${major}-marketing-weekly.csv" { start ${weekly_start} end ${weekly_end} sorttasks startup columns start, end, name timeformat "%a %d-%b" scenario actual hidetask ~marketing } csvtaskreport "${content}-${major}-pm-weekly.csv" { start ${weekly_start} end ${weekly_end} sorttasks startup columns start, end, name timeformat "%a %d-%b" scenario actual hidetask ~pm } csvtaskreport "${content}-${major}-pr-weekly.csv" { start ${weekly_start} end ${weekly_end} sorttasks startup columns start, end, name timeformat "%a %d-%b" scenario actual hidetask ~pr } csvtaskreport "${content}-${major}-quality-weekly.csv" { start ${weekly_start} end ${weekly_end} sorttasks startup columns start, end, name timeformat "%a %d-%b" scenario actual hidetask ~quality } csvtaskreport "${content}-${major}-releng-weekly.csv" { start ${weekly_start} end ${weekly_end} sorttasks startup columns start, end, name timeformat "%a %d-%b" scenario actual hidetask ~releng & ~devel } csvtaskreport "${content}-${major}-spins-weekly.csv" { start ${weekly_start} end ${weekly_end} sorttasks startup columns start, end, name timeformat "%a %d-%b" scenario actual hidetask ~spins } csvtaskreport "${content}-${major}-trans-weekly.csv" { start ${weekly_start} end ${weekly_end} sorttasks startup columns start, end, name timeformat "%a %d-%b" scenario actual hidetask ~translation } csvtaskreport "${content}-${major}-web-weekly.csv" { start ${weekly_start} end ${weekly_end} sorttasks startup columns start, end, name timeformat "%a %d-%b" scenario actual hidetask ~web } # reports for schedule prototyping csvtaskreport "${content}-${major}-plan.csv" { sorttasks startup columns start, end, name timeformat "%a %d-%b" scenario actual hidetask ~releng & ~quality } htmltaskreport "${content}-${major}-draft-schedule.html" { headline "${content_title} ${major} Primary Tasks" sorttasks startup columns no, name, start, end, duration timeformat "%a %Y-%m-%d" scenarios actual hidetask ~proto }