X-Git-Url: https://us-delaporte.pagekite.me/gitweb/dotfiles.git/blobdiff_plain/3e014779652f482864ec47db3334c4fd1c8e5063..2e4d9c857208643627bc75307a0bf593f1bebacf:/psmodules/dash.psm1 diff --git a/psmodules/dash.psm1 b/psmodules/dash.psm1 index f9caa56..c10d868 100644 --- a/psmodules/dash.psm1 +++ b/psmodules/dash.psm1 @@ -8,55 +8,124 @@ function Measure-JournalTodos() { $env:todocount += $todocount.lines } + +<# + +.EXAMPLE + +Get-CommitsSince -From 2023.01.01 + +#> +function Show-GitRevList() { + param( + [string]$from + ) + Invoke-AgileCmd "git rev-list HEAD --count --since=$from" +} + +Export-ModuleMember -Function Show-GitRevList + + + +<# + +.SYNOPSIS + +Show a text dashboard. + +.EXAMPLE + +Include `Todo` list. +Show-MyDashboard -todo + +#> function Show-MyDashBoard() { param( - [switch]$todocount=$true, - [switch]$agenda=$true, - [switch]$gitHub=$false, - [switch]$bugs=$true, - [switch]$todolist=$false, - [switch]$orphans=$false + # [switch]$todocount=$true, + # [switch]$agenda, + [switch]$blocked, + [switch]$bugs, + [switch]$gitHub, + [switch]$help, + [switch]$leeroy, + [switch]$orphans, + [switch]$pr, + [switch]$requested, + [switch]$todo ) + $todocount = $true if($todocount){ Measure-JournalTodos Write-Host "" Write-Host "## Todo items for today: $env:todocount" chart -var todocount } + $agenda = $true if($agenda){ Write-Host "" Write-Host "## Agenda for today:" Get-JournalAgenda } - if($github) { + if($blocked){ Write-Host "" - Write-Host "## GitHub Status (gh status)" - Invoke-Expression "gh status" + Write-Host "## Blocked & Blocker Issues:" + $blockerQuery = "label:blocker,blight,bug,blocked" + Invoke-AgileCmd "gh issue list -S '$blockerQuery'" + Write-Host "" + Write-Host "## Open Questions" + $questionQuery = 'label:"phone a friend",question,"needs context"' + Invoke-AgileCmd "gh issue list -S '$questionQuery'" + } if($bugs) { Write-Host "" Write-Host "## Known Bugs" Invoke-AgileCmd "gh issue list -S 'label:bug'" } - if($todolist) { + if($github) { Write-Host "" - Write-Host "## Todo List" - todolist + Write-Host "## GitHub Status (gh status)" + Invoke-Expression "gh status" + } + if($help) { + Write-Host "## Dasbhoard Help" + Get-Help Show-MyDashboard + } + if($leeroy){ + Write-Host "" + Write-Host "## Leeroy Jenkins!:" + Invoke-AgileCmd "gh issue list -l 'leeroy jenkins'" } if($orphans) { Write-Host "" Write-Host "## Issues with No Milestone" Invoke-AgileCmd "gh issue list -S 'is:open is:issue no:milestone'" } + if($pr) { + Write-Host "" + Write-Host "## Open Pull Requests" + Invoke-AgileCmd "gh pr list" + } + if($requested){ + Write-Host "" + Write-Host "## Open Stakeholder Requests" + invoke-agilecmd "gh issue list -S 'label:requested'" + } + if($todo) { + Write-Host "" + Write-Host "## Journal Todo Items" + todolist + Write-Host "" + Write-Host "## Todo.txt File" + todotxt + } } -function Show-MyTeamWork() { - $team = @('ddriddle', 'zcarrington', 'tzturner', 'mpitcel', 'edthedev') - $team | ForEach-Object { - "## $_ - Issues Assigned" - Get-AgileQuery -Assignee $_ | Invoke-AgileQuery | Show-MarkdownFromGitHub - } +function Write-AgileClosedData() { + $gh_cmd = 'gh issue list --state closed --json title,closedAt,milestone,url' + Write-AgileToFile -gh_command $gh_cmd } +Export-ModuleMember -Function Write-AgileClosedData Export-ModuleMember -Function Show-MyDashboard Export-ModuleMember -Function Show-MyTeamWork \ No newline at end of file