10 月 23 - 25 日,QCon 上海站即将召开,现在大会已开始正式报名,可以享受 8 折优惠 了解详情
写点什么

AWS Lambda 新增 GitHub Actions 支持

  • 2025-08-26
    北京
  • 本文字数:1606 字

    阅读完需:约 5 分钟

大小:610.39K时长:03:28
AWS Lambda 新增 GitHub Actions 支持

AWS 近日宣布 AWS Lambda 现已支持 GitHub Actions,通过 GitHub Actions 工作流中的声明式配置,为 Lambda 函数部署变更提供了更简化的方式。该新功能同时支持 .zip 文件部署和容器镜像部署两种模式。

 

GitHub Actions 是一款自动化工具,可在 Git 代码库发生变更时自动执行构建、测试和部署等任务。针对 AWS Lambda 的新 Action 采用 OpenID Connect(OIDC)认证方式与 IAM 集成,支持配置运行时环境、内存大小、超时时间和环境变量等函数设置,同时提供试运行模式,并支持基于 Amazon S3 的大体积 .zip 文件包部署。

 

OIDC 允许 GitHub Actions 工作流在不存储 AWS 长期凭证的情况下访问云资源。AWS 产品负责人 Shridhar Pandey 在领英上表示

还记得以前需要编写自定义脚本从 GitHub 部署 Lambda 函数的日子吗?那样的时代结束了!现在可以通过简单的声明式配置,直接从 GitHub 代码库自动部署 Lambda 函数(……)最让我兴奋的是这极大简化了无服务应用的 CI/CD 流水线。又少了一个需要维护的环节!

 

开发团队此前必须编写自定义脚本,手动处理打包、权限和错误处理等环节才能从 GitHub Actions 部署 Lambda 函数,这不仅导致重复工作,还增加了出错的风险。新方案提供的声明式 YAML 接口彻底消除了手动部署步骤的复杂性。


name: Deploy AWS Lambda
on: push: branches: - main
jobs: deploy: runs-on: ubuntu-latest permissions: id-token: write # Required for OIDC authentication contents: read # Required to check out the repository steps: - uses: actions/checkout@v4

- name: Configure AWS credentials uses: aws-actions/configure-aws-credentials@v4 with: role-to-assume: arn:aws:iam::123456789012:role/GitHubActionRole aws-region: us-east-1

- name: Deploy Lambda Function uses: aws-actions/aws-lambda-deploy@v1 with: function-name: my-lambda-function code-artifacts-dir: ./dist
复制代码

Lambda 部署所用的 GitHub Actions 工作流。来源:AWS 文档

 

通过 GitHub Action 部署 Lambda 函数的能力获得了社区的积极反馈,许多开发者质疑为何现在才推出该功能。用户 raize_the_roof 评论道:

这个功能早就该有了。即使有了集成,我发现调整运行器环境还是可以显著影响工作流的完成速度(特别是大型构建场景)。

 

而在《为什么你可能会不想使用 AWS 新推出的 GitHub Actions Lambda 部署功能》一文中,Symphonia 合伙人 Mike Roberts 提出不同观点:

从功能角度看,这完全等同于直接调用 AWS Lambda CLI,新 Action 并没有提供更多价值。(……)开发者仍然需要配置和部署角色权限,仍然需要部署触发器配置。这还没说到我略过的所有其他问题!更重要的是,这个 Action 甚至不会构建你的 Lambda 函数。(……)这种部署方式的另一个问题是:它与开发环境的部署方式并不一致

 

Duckbill Group 首席云经济学家 Corey Quinn 在其简报中补充道:

坦白说,我们认为真正需要的是 AWS 能提供类似 Google Cloud Run 的解决方案:开发者只需提供容器镜像,就能自动实现规模化运行。

 

部署所需参数包括 function-name(函数名称)、code-artifacts-dir(代码工件目录)、handler(处理函数)和 runtime(运行时环境)。当指定名称的函数不存在时,还需提供 role(角色)参数,系统将通过 CreateFunction API 创建新函数,并加载 code-artifacts-dir(代码工件目录)中的代码及配置参数。AWS DevOps 工程师 Oleksii Semeniuk 在测试该功能后发布了利用 Github 部署 Lambda 函数的指南,总结道:

整个过程非常直观,显著减少了以往所需的部署开销。

 

这项针对 Lambda 函数的 GitHub Action 新功能已在所有 AWS 区域开放使用。


原文链接:

https://www.infoq.com/news/2025/08/aws-lambda-github-actions/

2025-08-26 11:001

评论

发布
暂无评论

一文让你简单了解教育行业为什么需要堡垒机,保护什么?

行云管家

网络安全 教育 堡垒机

一文搞懂到底什么是 AQS

不在线第一只蜗牛

Java JVM

生产管理MES系统在灯具照明行业怎么数字化转型

万界星空科技

mes 万界星空科技 灯具行业 灯具 照明

“自我实现的预言”摩尔定律,如何继续引领创新

E科讯

使用 Makefile 管理和部署 Go 项目

左诗右码

Go

万字详解!在 Go 语言中操作 ElasticSearch

左诗右码

Elasticsearch SQL

2024年成都等级保护测评机构名单看这里!

行云管家

网络安全 成都 等保 堡垒机

【论文速读】|FuzzAug:探索模糊测试作为神经网络测试生成的数据增强

云起无垠

用flutter实现五种寻路算法的可视化效果,快来看看!

编程的平行世界

flutter 算法

“英特尔x希沃:40分钟高效课堂“诞生记”

E科讯

EMQX 与 MQTT: AI 大模型时代的分布式数据中枢

EMQ映云科技

mqtt mqtt broker

市场表现低迷,本周期的山寨币还有投资机会吗?

区块链软件开发推广运营

dapp开发 区块链开发 链游开发 NFT开发 公链开发

职场<火焰杯>测试开发大赛决赛即将开始!

测试人

软件测试

职场<火焰杯>测试开发大赛决赛即将开始!

测吧(北京)科技有限公司

测试

MES系统生产计划的实施流程

万界星空科技

生产管理系统 mes 万界星空科技 生产计划

Renderless 思想正在影响前端开发

OpenTiny社区

开源 组件库 OpenTiny TinyVue

结合RNN与Transformer双重优点,深度解析大语言模型RWKV

华为云开发者联盟

深度学习 华为云 transformers 华为云开发者联盟 企业号2024年7月PK榜

Rust编程语言到底是不是炒作的噱头?

伤感汤姆布利柏

【邀请函】相约CommunityOverCode Asia 2024,共探Flink、Paimon、Celeborn开源新境界!

Apache Flink

大数据 flink Celeborn paimon

AWS Lambda 新增 GitHub Actions 支持_软件工程_Renato Losio_InfoQ精选文章