简单的Google云部署:将Python文件从Google云存储库复制到app engine
我正在为一个大型企业数据仓库项目实施持续集成和持续交付。 所有代码都驻留在谷歌云存储库中,我可以设置谷歌云构建触发器,这样每当特定文件类型(Python脚本)的代码被推送到主分支时,谷歌云构建就会启动 Python脚本并不构成应用程序。它们包含ODBC连接字符串和脚本,用于从源中提取数据并将其存储为CSV文件。Python脚本将在安装了AirFlow的Google Compute Engine VM实例上执行 因此Python脚本的部署非常简单:只需将.py文件从Google Cloud repository文件夹复制到Google VM实例上的特定文件夹。实际上并没有一个传统的构建来运行,因为所有Python文件都是彼此独立的,而不是应用程序的一部分 我原以为这真的很容易,但现在我已经用了好几天的时间试图弄明白这一点,但没有运气。 谷歌云平台提供了几个云建设者,但据我所知,他们中没有一个能完成这个简单的任务。使用GCLOUD也不起作用。它可以复制文件,但只能从本地pc复制到VM,不能从源存储库复制到VM 我要找的是一个YAML或JSON构建配置文件,用于将这些Python文件从源存储库复制到Google Compute Engine VM实例简单的Google云部署:将Python文件从Google云存储库复制到app engine,python,google-cloud-platform,google-cloud-build,google-cloud-repository,Python,Google Cloud Platform,Google Cloud Build,Google Cloud Repository,我正在为一个大型企业数据仓库项目实施持续集成和持续交付。 所有代码都驻留在谷歌云存储库中,我可以设置谷歌云构建触发器,这样每当特定文件类型(Python脚本)的代码被推送到主分支时,谷歌云构建就会启动 Python脚本并不构成应用程序。它们包含ODBC连接字符串和脚本,用于从源中提取数据并将其存储为CSV文件。Python脚本将在安装了AirFlow的Google Compute Engine VM实例上执行 因此Python脚本的部署非常简单:只需将.py文件从Google Cloud rep
希望能得到一些帮助 谷歌云存储库中的文件/文件夹无法直接访问(就像),您需要先克隆repo,然后将所需的文件/文件夹从克隆的repo复制到它们的目标 也许可以使用标准的构建步骤来克隆repo,但对于您的情况,我不是100%确定,因为您实际上没有进行构建: 如果没有,您可能需要一个(或多个)自定义构建步骤。发件人: 自定义构建步骤是云构建工作人员创建的容器映像 VM在源卷装载到
/workspace
的情况下拉取并运行。
您的自定义构建步骤可以在
容器;因此,它可以做容器可以做的任何事情
自定义生成步骤对于以下情况非常有用:
- 从外部位置下载源代码或包
谢谢我将以此作为答案。我希望有一个更简单的解决办法。现在就去找Docker解决这个问题。唉,我这样解决了这个问题:创建了一个单独的Google计算引擎VM,每小时运行一个cron脚本。该脚本从源存储库进行git克隆,并使用gsutil rsync命令将代码推送到Google云存储(GCS)。15分钟后,在VM上部署脚本,执行另一个脚本,使用gsutil rsync将文件从GCS复制到内部驱动器。它工作得很好。
steps:
- name: gcr.io/cloud-builders/git
args: ['clone', 'https://github.com/GoogleCloudPlatform/cloud-builders']