-
Notifications
You must be signed in to change notification settings - Fork 21
feat: display juju debug-log in integration test runs #360
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
51e1c4b
ff8b379
706ba5a
e0bccf9
24cad08
af60010
c92b376
0e9cc17
157caef
08ba49b
ed42b55
19f2c95
0f89835
07e6f65
d4eabcf
51af1bd
c4d473c
3efe189
0f42f3a
7573884
3941a91
1e584ba
1af4b03
1761712
ee57f07
fbd1783
07b4840
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
@@ -7,6 +7,16 @@ on: | |||||||||||||||
| type: string | ||||||||||||||||
| required: false | ||||||||||||||||
| default: . | ||||||||||||||||
| log-path: | ||||||||||||||||
| type: string | ||||||||||||||||
| description: | | ||||||||||||||||
| Path to a directory where the .txt logfiles for an integration testing run will be stored. | ||||||||||||||||
| Relative and absolute file paths are both allowed. | ||||||||||||||||
| Relative paths are rooted against the charm repository root. | ||||||||||||||||
| Paths that begin with a wildcard character should be quoted to avoid being | ||||||||||||||||
|
Comment on lines
+14
to
+16
|
||||||||||||||||
| Relative and absolute file paths are both allowed. | |
| Relative paths are rooted against the charm repository root. | |
| Paths that begin with a wildcard character should be quoted to avoid being | |
| Relative and absolute file paths are both allowed. | |
| Relative paths are rooted against the charm directory specified by `charm-path` | |
| (which defaults to the repository root, `.`). | |
| Paths that begin with a wildcard character should be quoted to avoid being |
Copilot
AI
Apr 23, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Security: the workflow later interpolates ${{ inputs.log-path }} / derived outputs directly into run: bash scripts. If a caller supplies a value containing $()/backticks/newlines, it can lead to script-injection. Prefer passing the input via env: (e.g., LOG_PATH: ${{ inputs.log-path }}) and then using "$LOG_PATH" inside the script, which treats the value as data rather than code.
Copilot
AI
Apr 23, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The log display/upload steps appear to be added only to the parallel integration job. If parallelize-integration is disabled (sequential integration run), logs won’t be shown or uploaded; consider applying the same log handling to the sequential integration job as well so behavior is consistent across integration modes.
Copilot
AI
Apr 23, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In the implementation of this log-path feature, the subsequent steps are intended to help debug failing integration tests. Ensure the log display + artifact upload steps are configured to run even when the integration test step fails (e.g., if: always()), and ensure the "show logs" loop does not fail the job when the directory exists but contains no matching *.txt files (bash will otherwise iterate the literal glob and cat will error).
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
|
|
@@ -8,6 +8,16 @@ on: | |||||
| default: '.' | ||||||
| required: false | ||||||
| type: string | ||||||
| log-path: | ||||||
| type: string | ||||||
| description: | | ||||||
| Path to a directory where the .txt logfiles for an integration testing run will be stored. | ||||||
|
||||||
| Path to a directory where the .txt logfiles for an integration testing run will be stored. | |
| Path to a directory where the .txt log files for an integration testing run will be stored. |
Copilot
AI
Apr 23, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The log-path description says relative paths are rooted against the "charm repository root", but the called workflow’s implementation prepends inputs.charm-path for relative paths. Please align this description with the actual behavior so callers don’t misplace logs.
| Relative paths are rooted against the charm repository root. | |
| Relative paths are resolved relative to `charm-path`. |
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
|
|
@@ -60,6 +60,8 @@ block-beta | |||||
| qualitychecksslow["<b>Quality Checks (integration)</b>"] | ||||||
| pack["Pack the charm"] | ||||||
| integration["Integration tests"] | ||||||
| displaylogs["Display logs"] | ||||||
| uploadlogs["Upload logs zipfile"] | ||||||
|
||||||
| uploadlogs["Upload logs zipfile"] | |
| uploadlogs["Upload logs zip file"] |
Copilot
AI
Apr 23, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In the Mermaid workflow diagram, displaylogs and uploadlogs are added but not connected to the existing flow. Consider adding edges (e.g., integration --> displaylogs --> uploadlogs) so the diagram reflects when these steps run.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Spelling: use "log files" instead of "logfiles".