Merge pull request #1554 from aluzzardi/tty-log-collapse-hidden-fields

logger: collapse logs for hidden fields
This commit is contained in:
Andrea Luzzardi 2022-02-04 10:41:48 -08:00 committed by GitHub
commit d7c43fadc8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 16 additions and 9 deletions

View File

@ -52,7 +52,13 @@ func (l *Logs) Add(event Event) error {
return nil return nil
} }
// Hide `#up.*` from log group names
// FIXME: remove in Europa
groupKey := strings.Split(task, ".#up")[0] groupKey := strings.Split(task, ".#up")[0]
// Hide hidden fields (e.g. `._*`) from log group names
groupKey = strings.Split(groupKey, "._")[0]
group := l.groups[groupKey] group := l.groups[groupKey]
// If the group doesn't exist, create it // If the group doesn't exist, create it
@ -70,15 +76,16 @@ func (l *Logs) Add(event Event) error {
// Handle state events // Handle state events
// For state events, we just want to update the group status -- no need to // For state events, we just want to update the group status -- no need to
// dispanything // display anything
//
// FIXME: Since we don't know in advance how many tasks are in a group, the state will change back and forth.
// For each task in a group, the status will transition from computing to complete, then back to computing and so on.
// The transition is fast enough not to cause a problem.
if st, ok := event["state"].(string); ok { if st, ok := event["state"].(string); ok {
// Ignore state updates for "sub" tasks
if task != groupKey {
return nil
}
group.State = environment.State(st) group.State = environment.State(st)
if group.State != environment.StateComputing { if group.State == environment.StateComputing {
group.Completed = nil
} else {
now := time.Now() now := time.Now()
group.Completed = &now group.Completed = &now
} }

View File

@ -43,7 +43,7 @@ dagger.#Plan & {
contents: data.output contents: data.output
} }
_alpine: alpine.#Build & { image: alpine.#Build & {
packages: { packages: {
bash: {} bash: {}
curl: {} curl: {}
@ -52,7 +52,7 @@ dagger.#Plan & {
// Check if the website was deployed // Check if the website was deployed
verify: bash.#Run & { verify: bash.#Run & {
input: _alpine.output input: image.output
script: #""" script: #"""
test "$(curl \#(deploy.deployUrl))" = "\#(marker)" test "$(curl \#(deploy.deployUrl))" = "\#(marker)"
"""# """#