0

我的最终目标是在容器更新时自动运行测试。例如,如果 update /api,它应该同步本地和容器之间的更改。之后它应该自动运行测试......最终。

我从Hello World!每个例子开始:

# DevSpace --version = 5.16.0
version: v1beta11
...
hooks:
- command: |
    echo Hello World!
  container:
    imageSelector: ${APP-NAME}/${API-DEV}
  events: ["after:initialSync:${API}"]
...

我已经尝试了以下所有方法,但没有得到想要的行为:

stop:sync:${API}
restart:sync:${name}
after:initialSync:${API}
devCommand:after:sync

充其量我只能Hello World!在初始运行时打印devspace dev -b,但在我对/api导致文件同步的文件进行更改后什么也没有。

建议?

4

1 回答 1

1

为此,您将需要一个同步后挂钩,它与 DevSpace 生命周期挂钩是分开的。您可以使用直接定义它,dev.sync它看起来像这样:

dev:
  sync:
  - imageSelector: john/devbackend
    onUpload:
      execRemote:         
        onBatch:          
          command: bash
          args:           
          - -c
          - "echo 'Hello World!' && other commands..."

文档中的更多信息:https ://devspace.sh/cli/docs/configuration/development/file-synchronization#onupload

于 2021-10-01T18:35:29.093 回答