我正在尝试为我们的一个项目创建一个 snap。项目存储库包含两个目录,我想用go
插件构建一个目录,用插件构建另一个nodejs
目录。我尝试将它们构建为单独的部分并使用,source-subdir
但它没有像我预期的那样工作。所以我的问题是,在开始构建之前,如何告诉插件进入目录?
我们通常使用 dockergo
和node
容器或使用预装了构建工具的构建机器来构建此项目。它有一个工作方式Makefile
,但我试图避免从外部管理构建依赖项(无论是在 go/nodejs 还是 docker 上),而是使用 snap craft 插件提供的 go/nodejs 工具。
更新:
以下是项目结构草图:
./go-module-1/...
./go-module-2/...
./go-module-3/...
./go-module-main/static/package.json
./go-module-main/static/...
./go-module-main/main.go
./go-module-main/...
./pkg-build.sh
./...
因此,构建该项目的正常流程如下:
(cd go-module-main && go build .)
(cd go-module-main/static && npm run build)
./pkg-build.sh
go
项目的一部分公开了 restful API,而另一nodejs
部分实际上仅用于编译客户端应用程序(Angular/SASS/bower/gulp)。