Skip to content

Commit 65d5bb8

Browse files
Refactor GitHub event logging to parse JSON and enhance event data structure
1 parent 982038e commit 65d5bb8

File tree

1 file changed

+40
-1
lines changed

1 file changed

+40
-1
lines changed

scripts/main.ps1

Lines changed: 40 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,46 @@ process {
9696
}
9797

9898
LogGroup ' - Event Info' {
99-
Get-GithubEventData | Format-List
99+
$gitHubEventJson = Get-Content -Path $env:GITHUB_EVENT_PATH
100+
$gitHubEvent = $gitHubEventJson | ConvertFrom-Json
101+
102+
$eventAction = $gitHubEvent.action
103+
$eventSender = $gitHubEvent.sender | Select-Object -Property login, type, id, node_id, html_url
104+
$eventEnterprise = $gitHubEvent.enterprise | Select-Object -Property name, slug, id, node_id, html_url
105+
$eventOrganization = $gitHubEvent.organization | Select-Object -Property login, id, node_id
106+
$eventOwner = $gitHubEvent.repository.owner | Select-Object -Property login, type, id, node_id, html_url
107+
$eventRepository = $gitHubEvent.repository | Select-Object -Property name, full_name, html_url, id, node_id, default_branch
108+
109+
$gitHubEvent = $gitHubEvent | Select-Object -ExcludeProperty action, sender, enterprise, organization, repository
110+
111+
$hashtable = @{}
112+
$gitHubEvent.PSObject.Properties | ForEach-Object {
113+
$name = $_.Name
114+
$name = $name | Convert-StringCasingStyle -To PascalCase
115+
$hashtable[$_.Name] = $_.Value
116+
}
117+
$gitHubEvent = [pscustomobject]$hashtable
118+
119+
$gitHubEvent | Add-Member -MemberType NoteProperty -Name Name -Value $env:GITHUB_EVENT_NAME -Force
120+
if ($eventAction) {
121+
$gitHubEvent | Add-Member -MemberType NoteProperty -Name Action -Value $eventAction -Force
122+
}
123+
if ($eventSender) {
124+
$gitHubEvent | Add-Member -MemberType NoteProperty -Name Sender -Value $eventSender -Force
125+
}
126+
if ($eventEnterprise) {
127+
$gitHubEvent | Add-Member -MemberType NoteProperty -Name Enterprise -Value $eventEnterprise -Force
128+
}
129+
if ($eventOrganization) {
130+
$gitHubEvent | Add-Member -MemberType NoteProperty -Name Organization -Value $eventOrganization -Force
131+
}
132+
if ($eventOwner) {
133+
$gitHubEvent | Add-Member -MemberType NoteProperty -Name Owner -Value $eventOwner -Force
134+
}
135+
if ($eventRepository) {
136+
$gitHubEvent | Add-Member -MemberType NoteProperty -Name Repository -Value $eventRepository -Force
137+
}
138+
$gitHubEvent
100139
}
101140

102141
LogGroup ' - Runner Info' {

0 commit comments

Comments
 (0)