Commit graph

270 commits

Author SHA1 Message Date
Babak K. Shandiz
284880c21e
Fix StatusJSONResponse usage (#10810)
* Fix `StatusJSONResponse` usage

Signed-off-by: Babak K. Shandiz <babakks@github.com>

* Replace `assert` with `require`

Signed-off-by: Babak K. Shandiz <babakks@github.com>

* Improve assertion against errors

Signed-off-by: Babak K. Shandiz <babakks@github.com>

* Add `JSONErrorResponse` helper func

Signed-off-by: Babak K. Shandiz <babakks@github.com>

* Use `httpmock.JSONErrorResponse`

Signed-off-by: Babak K. Shandiz <babakks@github.com>

* Replace `StatusJSONResponse` to `JSONErrorResponse` for better readibility

Signed-off-by: Babak K. Shandiz <babakks@github.com>

* Fix improper use of `StatsJSONResponse`

Signed-off-by: Babak K. Shandiz <babakks@github.com>

---------

Signed-off-by: Babak K. Shandiz <babakks@github.com>
2025-05-01 20:22:43 +01:00
William Martin
408e21ebdd
Merge pull request #10769 from cli/babakks/fix-job-log-resolution
Fix job log resolution to skip legacy logs in favour of normal/new ones
2025-04-11 16:16:39 +02:00
Babak K. Shandiz
f337ce90a0
Explain job log resolution reason
Signed-off-by: Babak K. Shandiz <babakks@github.com>
2025-04-11 14:51:39 +01:00
William Martin
48274f3118 Document UNKNOWN STEP in run view 2025-04-11 15:23:18 +02:00
Babak K. Shandiz
b65286125b
Add $ anchor to log file regexps
Signed-off-by: Babak K. Shandiz <babakks@github.com>

This is to make sure we do not pick up the wrong file if there is a
`.txt` sequence in the middle of a job name.
2025-04-11 12:41:31 +01:00
Babak K. Shandiz
2d21b4624c
Test normal job run log is preferred over legacy one
Signed-off-by: Babak K. Shandiz <babakks@github.com>
2025-04-11 12:40:26 +01:00
Babak K. Shandiz
940bd10a1d
Prefer normal job run log file over legacy one
Signed-off-by: Babak K. Shandiz <babakks@github.com>
2025-04-11 12:39:09 +01:00
William Martin
83bd23b080
Merge pull request #10740 from cli/babakks/fallback-to-job-run-logs
Fallback to job run logs when step logs are missing
2025-04-11 11:39:07 +02:00
Babak K. Shandiz
5adf3285ec
Explain when a negative number prefix appears
Signed-off-by: Babak K. Shandiz <babakks@github.com>
2025-04-11 10:26:14 +01:00
Babak K. Shandiz
d35236948c
Improve explanation for missing step logs
Signed-off-by: Babak K. Shandiz <babakks@github.com>
2025-04-11 10:17:52 +01:00
Babak K. Shandiz
1bf1153c54
Explain the UNKNWON STEP placeholder
Signed-off-by: Babak K. Shandiz <babakks@github.com>
2025-04-11 10:08:36 +01:00
Babak K. Shandiz
f673b409f7
Replace UNKNOWN with UNKNOWN STEP in job run log
Signed-off-by: Babak K. Shandiz <babakks@github.com>
2025-04-11 09:57:13 +01:00
Babak K. Shandiz
0251a8dd6d
Explain why step logs are preferred
Signed-off-by: Babak K. Shandiz <babakks@github.com>
2025-04-11 09:56:17 +01:00
Andy Feller
93e51c583b
Update pkg/cmd/run/shared/presentation.go 2025-04-08 16:40:39 -04:00
Babak K. Shandiz
021537418e
Verify fallback to job run logs when step logs are missing
Signed-off-by: Babak K. Shandiz <babakks@github.com>
2025-04-07 13:54:30 +01:00
Babak K. Shandiz
02e8419124
Verify job run logs attached in attachRunLog test
Signed-off-by: Babak K. Shandiz <babakks@github.com>
2025-04-07 13:54:29 +01:00
Babak K. Shandiz
df8c9a317d
Update run_log.zip fixture
Signed-off-by: Babak K. Shandiz <babakks@github.com>
2025-04-07 13:54:29 +01:00
Babak K. Shandiz
5e78832a7e
Fallback to print entire job run log if step logs are missing
Signed-off-by: Babak K. Shandiz <babakks@github.com>
2025-04-07 13:54:29 +01:00
Babak K. Shandiz
f7efdde5ef
Add Log to Job data structure
Signed-off-by: Babak K. Shandiz <babakks@github.com>
2025-04-07 13:54:28 +01:00
Babak K. Shandiz
4dee1c3c98
Add jobLogFilenameRegexp function
Signed-off-by: Babak K. Shandiz <babakks@github.com>
2025-04-07 13:54:28 +01:00
Babak K. Shandiz
2582948d5f
Extract job name sanitization as a separate function
Signed-off-by: Babak K. Shandiz <babakks@github.com>
2025-04-07 13:54:20 +01:00
Andy Feller
918cafc222 Deprecate ColorScheme.Gray for ColorScheme.Muted
This commit converts all of the places using ColorScheme.Gray and ColorScheme.Grayf to Muted and Mutedf.

There is a little extra tidying up with local variable names or converting code to use Mutedf format.
2025-04-06 10:18:48 -04:00
Andy Feller
d2cd14b4cd Remove out of scope changes, update list commands
After discussing this with the team, the `gh config` changes to display `accessible_colors` have been removed from this branch being outside of acceptance criteria.  This will be moved to a separate issue along with any other work needed to finalize the public preview such as `gh help` entries for `GH_ACCESSIBLE_COLORS` environment variable.

List commands that use ColorScheme.Gray have been updated to use ColorScheme.Muted.
2025-03-31 11:58:30 -04:00
Kynan Ware
229216e830 doc(run shared): clarify 404 handling 2025-03-26 15:29:20 -06:00
Kynan Ware
c6f574ccb1
test(run list): update rulesets test name
Co-authored-by: Andy Feller <andyfeller@github.com>
2025-03-24 14:14:50 -06:00
Kynan Ware
30960d59bc
doc(run list): add enterprise ruleset notes
Co-authored-by: Andy Feller <andyfeller@github.com>
2025-03-24 14:04:16 -06:00
Kynan Ware
a35ae3b8bb refactor(tests): update test name for org workflows 2025-03-24 12:54:47 -06:00
Kynan Ware
d3ad4f410b docs(run list): doc runs without workflow names 2025-03-24 12:45:03 -06:00
Kynan Ware
5817f6fce9 fix(run list): do not fail on org workflows 2025-03-24 12:34:50 -06:00
Azeem Sajid
33c30d5bd1 Inconsistent format of examples in help text 2025-02-27 16:26:25 +05:00
Azeem Sajid
8b7fb231ec Remove trailing whitespace 2025-02-13 11:06:27 +05:00
Azeem Sajid
de7c40789e Use defer instead 2025-01-29 08:22:32 +05:00
Azeem Sajid
359b4a1d63 Stop progress indicator on failure (gh run list --workflow) 2025-01-28 17:18:30 +05:00
petercover
bad7098cfe chore: fix some comments
Signed-off-by: petercover <raowanxiang@outlook.com>
2025-01-23 00:47:27 +08:00
Rajhans Jadhao
b41b77165b
show error message for rerun workflow older than a month ago 2025-01-13 19:21:58 +05:30
Arseni Dziamidchyk
f9767d0a9a add pending status for workflow runs 2024-12-26 19:10:06 +03:00
Uday R
8afb434e59 test(gh run): assert branch names are enclosed in square brackets 2024-12-09 12:45:36 -05:00
Uday R
463105d648 fix: list branches in square brackets in gh run view (#10038) 2024-12-08 12:33:08 -05:00
William Martin
9bd8f09774 Use safepaths for run download 2024-12-04 22:12:58 +01:00
William Martin
a47b4c9f1d Use consistent slice ordering in run download tests 2024-12-04 13:02:25 +01:00
Andy Feller
8720479b0b Consolidate logic for isolating artifacts 2024-12-03 13:33:00 -05:00
Andy Feller
cdfc12caf5 Expand logic and tests to handle edge cases
This commit expands filepathDescendsFrom(string, string) to handle edge cases such as mixing absolute and relative paths or artifact name edge cases.

Additionally, tests for filepathDescendsFrom() and downloadrun() have been expanded to verify additional use cases.
2024-11-22 15:26:11 -05:00
Andy Feller
e7c5706336 Refactor download testing, simpler file descends
This incorporates the work done by @williammartin to improve reasoning about `gh run download` behavior through testing while verifying a simpler solution to checking if a path is contained within a directory.
2024-11-21 17:07:27 -05:00
Tyler McGoffin
83cf411556 Improve test names so there is no repetition 2024-11-19 16:08:31 -08:00
Andy Feller
8da27d2c8a Second attempt to address exploit
This builds off suggestion to reuse logic used already within `gh run download` for detecting path traversals.

This largely works but runs into an issue where detection logic doesn't handle non-separated traversal.
2024-11-19 17:55:18 -05:00
Aarni Koskela
1c4c8e5145 Fix verbiage for deleting workflow runs
It's not deleting _workflows_ (which are specified in YAML)...
2024-11-04 17:55:35 +02:00
Andy Feller
86b4bb9956 Include startedAt, completedAt in run steps data
This commit expands the `Step` structure used with GitHub Actions workflow runs to include fields indicating when steps start and complete.

This information is already provided by the GitHub API, so this only involves expanding the structure, fields exported, and the associated tests.

In the future, I could see `gh` including the duration calculation which is used when viewing workflow or workflow run.
2024-10-16 19:38:10 -04:00
Andy Feller
19daa35c81
Merge pull request #9482 from benebsiny/cli-9153
fix the trimming of log filenames for `gh run view`
2024-08-22 15:23:06 -04:00
benebsiny
64415df08d fix the trimming of log filenames for gh run view 2024-08-18 16:57:19 +08:00
Heath Stewart
81f3526740
Fix tests 2024-08-16 10:11:52 -07:00