将 C# 可执行文件部署到 GCP Cloud Functions

问题描述 投票:0回答:1

我可以将 C# 可执行文件部署到 GCP Cloud Functions,从而绕过 Cloud Functions 的源代码构建过程吗?

我想将已编译的 C# 可执行文件部署到 GCP Cloud Functions,但 Cloud Functions 似乎要求我提供未编译的源代码,并且它将从中构建一个容器以在 Cloud Functions 上运行。

我认为问题在于我的项目结构是嵌套的 - 入口点的项目依赖于项目结构中更高的项目,我认为这与 Cloud Functions 似乎期望的项目结构配合得不好。

如果我在 CICD 管道中构建可执行文件,并且 Cloud Functions 允许我将可执行文件部署到服务,则可以解决此问题。但是,我没有发现任何内容表明这对于 C# 和 Cloud Functions 是可能的(尽管对于 Java 是可能的)。

c# google-cloud-platform google-cloud-functions
1个回答
0
投票

我可以将 C# 可执行文件部署到 GCP Cloud Functions,从而绕过 Cloud Functions 的源代码构建过程吗?

目前还没有,没有。有一个 Buildpack 功能请求,但我不会屏住呼吸。

就我个人而言,在这种情况下,我可能会考虑将其打包为映像并直接部署到 Cloud Run。 但是,如果目标不是真正的“部署二进制文件”而是“部署我的项目”:

我认为问题在于我的项目结构是嵌套的 - 入口点的项目依赖于项目结构中更高的项目,我认为这与 Cloud Functions 似乎期望的项目结构配合得不好。

...那么我们
do

有一种方法来处理这个问题,如“部署具有本地项目依赖项的函数”中的示例所示。 基本上,您从根目录进行部署(可能使用

.gcloudignore

文件),以便上传所有必需的源代码,然后使用

--set-build-env-vars
在 Buildpack 中设置
GOOGLE_BUILDABLE
环境变量,然后由该变量指定包含您的功能的项目。
函数框架存储库中的

示例

部署为: gcloud functions deploy multi-project \ --runtime dotnet6 \ --trigger-http \ --entry-point=Google.Cloud.Functions.Examples.MultiProjectFunction.Function \ --set-build-env-vars=GOOGLE_BUILDABLE=Google.Cloud.Functions.Examples.MultiProjectFunction

© www.soinside.com 2019 - 2024. All rights reserved.