问题描述
我们将Bamboo用于CI,最后一步,我们将npm prune --production
用作干净的devDependencies。 TypeScript和ts-node也是dev依赖项。
此外,我们将TypeORM用作外出项目的ORM。我们将使用typeorm cli进行自动迁移,应用和还原它。 但是我们有一个问题。 TypeORM使用ts-node运行cli,但是在生产服务器上,我们已经有一个没有开发依赖的映像。
有人可以建议生产中使用Typeorm迁移的最佳做法吗?我们不想在生产服务ts-node和Typescript上部署,这对我们来说不是个好主意。看来这是非常糟糕的做法。我们是否应该像CI步骤之一那样进行迁移?
我们还考虑使用https://www.npmjs.com/package/db-migrate,但更喜欢使用我们orm的现有工具。
解决方法
我们找到了解决方案。我们只是将迁移文件编译到dist文件夹中,然后运行不带--require ts-node/register
的typeorm cli命令。对我们来说很好。