Vapor Xcode项目中的多个目标



我正在与Xcode的Vapor合作,部署到Heroku。我的网络应用程序正常工作。对蒸气以及部署到Heroku有多容易感到满意。

我现在正在尝试在同一项目中创建一个单独的HEROKU工作过程。我已经在我的Heroku Procfile中添加了新工作,但是我不清楚如何在Xcode项目中设置第二个目标,以便每次运行vapor xcode重建项目文件时不会被覆盖。p>我的procfile看起来像这样:

web: App --env=production --workdir=./ --config:servers.default.port=$PORT --config:postgresql.url=$DATABASE_URL
worker: Worker --env=production --workdir=./ --config:servers.default.port=$PORT --config:postgresql.url=$DATABASE_URL

因此,如您所见,我只是想要一个可以在Heroku Worker dyno中启动的名为Worker的可执行文件。

任何想法我如何在我的Xcode项目中拥有一个不会被vapor xcode覆盖的XCode项目中的单独的Worker Target?

谢谢-TJ

啊哈哈!解决了。为了在项目中有多个目标,您需要在包装中定义它们。Swift软件包管理器的旋转文件,该文件负责构建项目文件。

所以,我的软件包。现在看起来像这样:

import PackageDescription
let package = Package(
    name: "myapp",
    targets: [
        Target(name: "App", dependencies: ["Shared"]),
        Target(name: "Worker", dependencies: ["Shared"]),
    ],
    dependencies: [
    ],
    exclude: [
        "Config",
        "Database",
        "Localization",
        "Public",
        "Resources",
        ]
)

我的来源目录结构现在看起来像这样:

Sources | - App - Worker - Shared

共享目标包含我的所有共享代码,该代码和工人可执行的目标。

现在,定义上述procfile完美效果。我现在有一个网络应用程序和一个工作流程。

欢呼-TJ

相关内容

  • 没有找到相关文章

最新更新