Failed update silently rolls back #478

Open
opened 2025-01-08 18:17:27 +00:00 by 3wordchant · 6 comments
Owner

Steps to reproduce:

  1. Deploy Gitea 3.0.1+1.22.3-rootless using an old version of abra that doesn't interact with versions in the .env file
  2. abra app upgrade git.foo.bar

Expected result:

App upgraded

Actual result:

The correct new version is written to the .env file:

@@ -1,4 +1,4 @@
-TYPE=gitea
+TYPE=gitea:3.0.2+1.22.6-rootless

But the old version is still deployed 🤔

Steps to reproduce: 1. Deploy Gitea `3.0.1+1.22.3-rootless` using an old version of abra that doesn't interact with versions in the `.env` file 2. `abra app upgrade git.foo.bar` Expected result: App upgraded Actual result: The correct new version is written to the `.env` file: ``` @@ -1,4 +1,4 @@ -TYPE=gitea +TYPE=gitea:3.0.2+1.22.6-rootless ``` But the old version is still deployed 🤔
3wordchant added the
bug
label 2025-01-08 18:17:27 +00:00
Owner

Hmmmm, it would seem that there is some confusion between a missing .env version and the parsing of the live deployment labels? A wild new edge case, great find! I will try to reproduce shortly.

Hmmmm, it would seem that there is some confusion between a missing `.env` version and the parsing of the live deployment labels? A wild new edge case, great find! I will try to reproduce shortly.
decentral1se added the
release-candidate
label 2025-01-08 21:44:03 +00:00
Owner

@3wordchant had a play with this. I found a bonus side bug which I'm gonna try fix up: #479

However, for the Gitea release latest release, I think it's failing to come up some time after depoloyment? Can you check that? I suspect the runtime is then rolling back to 3.0.1+1.22.3-rootless based on the deploy config and abra can't really do much since the deployment technically succeeded aka "silently rolling back because StAbiLiTy".

I could be wrong but I wasn't able to reproduce this with several integration tests. But I also wasn't able to get a succesful Gitea upgrade from 3.0.1.x to 3.0.2.x 🤔 I was seeing this error: https://github.com/go-gitea/gitea/issues/28388 (the "solution" is a bit of a mystery for me)

In the case I'm right, I'm not sure what we can do to make this obvious to people. Currently, you can docker ps -f name=<stack> -a to see exited containers? Are there better ways? How can this be incorporated into the abra output?

@3wordchant had a play with this. I found a bonus side bug which I'm gonna try fix up: https://git.coopcloud.tech/toolshed/abra/pulls/479 However, for the Gitea release latest release, I think it's failing to come up some time after depoloyment? Can you check that? I suspect the runtime is then rolling back to `3.0.1+1.22.3-rootless` based on the deploy config and `abra` can't really do much since the deployment technically succeeded aka "silently rolling back because StAbiLiTy". I could be wrong but I wasn't able to reproduce this with several integration tests. But I also wasn't able to get a succesful Gitea upgrade from `3.0.1.x` to `3.0.2.x` 🤔 I was seeing this error: https://github.com/go-gitea/gitea/issues/28388 (the "solution" is a bit of a mystery for me) In the case I'm right, I'm not sure what we can do to make this obvious to people. Currently, you can `docker ps -f name=<stack> -a` to see exited containers? Are there better ways? How can this be incorporated into the `abra` output?
Owner
Related: https://git.coopcloud.tech/toolshed/organising/issues/615
decentral1se added
question
and removed
bug
release-candidate
labels 2025-01-10 18:11:32 +00:00
Owner

Holy shit, I've just realised that we've been throwing away the output of the runtime deployment status all this time 😱 What the absolute hell 😂

With this diff:

diff --git a/pkg/upstream/stack/stack.go b/pkg/upstream/stack/stack.go
index 179c9090..18cfb222 100644
--- a/pkg/upstream/stack/stack.go
+++ b/pkg/upstream/stack/stack.go
@@ -4,7 +4,6 @@ import (
        "context"
        "fmt"
        "io"
-       "io/ioutil"
        "os"
        "os/signal"
        "strconv"
@@ -515,7 +514,7 @@ func WaitOnService(ctx context.Context, cl *dockerClient.Client, serviceID, appN
                errChan <- progress.ServiceProgress(ctx, cl, serviceID, pipeWriter)
        }()

-       go io.Copy(ioutil.Discard, pipeReader)
+       go io.Copy(os.Stdout, pipeReader)

        timeout := time.Duration(WaitTimeout) * time.Second

I get:

Chaotic log output
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":" ","progressDetail":{},"id":"1/1"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e                 ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e      ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e      ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e      ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e      ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e      ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e      ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e      ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e      ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e      ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e      ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e      ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e      ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e      ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e      ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e      ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e      ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e      ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e      ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e      ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e      ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e      ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e      ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e      ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e      ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e      ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e      ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e      ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e      ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e      ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e      ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e      ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e      ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e      ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e      ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e      ] ","id":"1/1"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"running  ","progressDetail":{"current":9,"total":9,"hidecounts":true},"progress":"[==================================================\u003e] ","id":"1/1"}
{"status":"1 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"Waiting 5 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"}
{"status":"update rolled back due to failure or early termination of task 53lguaoid5yzmoeqxj4gavm31","progressDetail":{},"id":"rollback"}
{"status":"Waiting 5 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"}
{"status":"Waiting 5 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"}
{"status":"Waiting 4 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"}
{"status":"Waiting 4 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"}
{"status":"Waiting 4 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"}
{"status":"Waiting 3 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"}
{"status":"Waiting 3 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"}
{"status":"Waiting 2 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"}
{"status":"Waiting 2 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"}
{"status":"Waiting 2 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"}
{"status":"Waiting 1 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"}
{"status":"Waiting 1 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"}
{"status":"Service uk5o7v1uknioo8n0q2t61tdqp converged","progressDetail":{},"id":"verify"}
{"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":" ","progressDetail":{},"id":"1/1"}
{"status":"running  ","progressDetail":{"current":9,"total":9,"hidecounts":true},"progress":"[==================================================\u003e] ","id":"1/1"}
{"status":"1 out of 1 tasks","progressDetail":{},"id":"overall progress"}
{"status":"Waiting 5 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"}
{"status":"Waiting 5 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"}
{"status":"Waiting 5 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"}
{"status":"Waiting 4 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"}
{"status":"Waiting 4 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"}
{"status":"Waiting 4 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"}
{"status":"Waiting 3 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"}
{"status":"Waiting 3 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"}
{"status":"Waiting 3 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"}
{"status":"Waiting 2 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"}
{"status":"Waiting 2 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"}
{"status":"Waiting 1 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"}
{"status":"Waiting 1 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"}
{"status":"Waiting 1 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"}
{"status":"Service 77415ylhm56qt7rjypb03lp8i converged","progressDetail":{},"id":"verify"}

Where we can clearly see:

update rolled back due to failure or early termination of task 53lguaoid5yzmoeqxj4gavm31

So, it's now just a question of how to show this. I might try to copy/pasta over the presentation logic of Docker itself. But that wouldn't help with #473. I might try some fancy layout 🤔

Tips welcome!

Holy shit, I've just realised that we've been throwing away the output of the runtime deployment status all this time 😱 What the absolute hell 😂 With this diff: ```diff diff --git a/pkg/upstream/stack/stack.go b/pkg/upstream/stack/stack.go index 179c9090..18cfb222 100644 --- a/pkg/upstream/stack/stack.go +++ b/pkg/upstream/stack/stack.go @@ -4,7 +4,6 @@ import ( "context" "fmt" "io" - "io/ioutil" "os" "os/signal" "strconv" @@ -515,7 +514,7 @@ func WaitOnService(ctx context.Context, cl *dockerClient.Client, serviceID, appN errChan <- progress.ServiceProgress(ctx, cl, serviceID, pipeWriter) }() - go io.Copy(ioutil.Discard, pipeReader) + go io.Copy(os.Stdout, pipeReader) timeout := time.Duration(WaitTimeout) * time.Second ``` I get: <details> <summary>Chaotic log output</summary> ``` {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":" ","progressDetail":{},"id":"1/1"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"preparing","progressDetail":{"current":6,"total":9,"hidecounts":true},"progress":"[=================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"starting ","progressDetail":{"current":8,"total":9,"hidecounts":true},"progress":"[============================================\u003e ] ","id":"1/1"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"running ","progressDetail":{"current":9,"total":9,"hidecounts":true},"progress":"[==================================================\u003e] ","id":"1/1"} {"status":"1 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"Waiting 5 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"} {"status":"update rolled back due to failure or early termination of task 53lguaoid5yzmoeqxj4gavm31","progressDetail":{},"id":"rollback"} {"status":"Waiting 5 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"} {"status":"Waiting 5 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"} {"status":"Waiting 4 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"} {"status":"Waiting 4 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"} {"status":"Waiting 4 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"} {"status":"Waiting 3 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"} {"status":"Waiting 3 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"} {"status":"Waiting 2 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"} {"status":"Waiting 2 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"} {"status":"Waiting 2 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"} {"status":"Waiting 1 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"} {"status":"Waiting 1 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"} {"status":"Service uk5o7v1uknioo8n0q2t61tdqp converged","progressDetail":{},"id":"verify"} {"status":"0 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":" ","progressDetail":{},"id":"1/1"} {"status":"running ","progressDetail":{"current":9,"total":9,"hidecounts":true},"progress":"[==================================================\u003e] ","id":"1/1"} {"status":"1 out of 1 tasks","progressDetail":{},"id":"overall progress"} {"status":"Waiting 5 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"} {"status":"Waiting 5 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"} {"status":"Waiting 5 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"} {"status":"Waiting 4 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"} {"status":"Waiting 4 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"} {"status":"Waiting 4 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"} {"status":"Waiting 3 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"} {"status":"Waiting 3 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"} {"status":"Waiting 3 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"} {"status":"Waiting 2 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"} {"status":"Waiting 2 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"} {"status":"Waiting 1 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"} {"status":"Waiting 1 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"} {"status":"Waiting 1 seconds to verify that tasks are stable...","progressDetail":{},"id":"verify"} {"status":"Service 77415ylhm56qt7rjypb03lp8i converged","progressDetail":{},"id":"verify"} ``` </details> Where we can clearly see: > update rolled back due to failure or early termination of task 53lguaoid5yzmoeqxj4gavm31 So, it's now just a question of how to show this. I might try to copy/pasta over the presentation logic of Docker itself. But that wouldn't help with https://git.coopcloud.tech/toolshed/abra/issues/473. I might try some fancy layout 🤔 Tips welcome!
decentral1se added
bug
release
and removed
question
labels 2025-01-11 11:03:22 +00:00
decentral1se added this to the v0.10.x project 2025-01-11 11:03:25 +00:00
decentral1se changed title from `abra app upgrade` deploys the old version to failed update silently rolls back 2025-01-11 11:03:59 +00:00
decentral1se changed title from failed update silently rolls back to Failed update silently rolls back 2025-01-11 11:08:41 +00:00
decentral1se added
release-candidate
and removed
release
labels 2025-01-11 12:58:36 +00:00
Owner

Oh woah, yeh, the output has several issues with it, also the implementation! I don't think we can just bring in the output as-is, it will be confusing (also it includes a bunch of Docker jargon in it 😬 maybe that is why I naively silenced it ages ago, I can't remember 🤔)

https://github.com/docker/cli/issues/4907

(Just posting my notes as I go...)

Oh woah, yeh, the output has several issues with it, also the implementation! I don't think we can just bring in the output as-is, it will be confusing (also it includes a bunch of Docker jargon in it 😬 maybe that is why I naively silenced it ages ago, I can't remember 🤔) https://github.com/docker/cli/issues/4907 (Just posting my notes as I go...)
Author
Owner

Ah so sorry @decentral1se , I missed all these incredible updates because of The (latest) Great SMTP Breakage. Very stoked about your idea, let me know if you want help testing.

Ah so sorry @decentral1se , I missed all these incredible updates because of The (latest) Great SMTP Breakage. Very stoked about your idea, let me know if you want help testing.
decentral1se added the
design
label 2025-01-16 07:46:46 +00:00
decentral1se added the
critical
label 2025-01-16 08:01:58 +00:00
Sign in to join this conversation.
No Milestone
No project
No Assignees
2 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: toolshed/abra#478
No description provided.