循序渐进 · 教学 · 函数(三)

函数上手:从建仓库到跑通第一个函数

不管你选 TypeScript v1、v2 还是 Python,建仓库 → 开发 → 试跑 → 发布 → 调用这五步是通用的。这一篇讲这条主流程。

全部目录 ← 上一篇 函数上手:从建仓库到跑通第一个函数 下一篇 →
本文来源 · Source 内容整理自 Palantir Foundry 官方文档:
https://www.palantir.com/docs/foundry/functions/getting-started/
原始标题:Functions > Getting started

先记住这几条

① 先建仓库,再写函数
函数必须活在一个「函数仓库」里,仓库在创建时就绑定语言。
② live preview 免发布试跑
实时预览让你在发布之前就跑通函数,是开发期最常用的一步。
③ 发布 = 打版本标签
发布函数实质是给仓库打一个 tag,版本一旦创建不可更改。
④ 三种语言流程相同
具体写法不同,但建仓库、试跑、发布、运行这套平台流程是共用的。
0

写在前面

你可以使用 VS Code 工作区,以相同的界面与工具编写函数仓库。VS Code 工作区支持实时预览、资源导入、SDK 生成与发布管理。

在 Foundry 中开始使用函数有三种语言选择:TypeScript v1、TypeScript v2 和 Python。关于每种语言支持的特性,请查阅语言特性支持规范。

尽管每种语言所支持的特性各不相同,但无论使用哪种语言,你都能访问相同的基础平台功能,包括运行、测试和发布函数。本页概述这些功能,帮助你理解如何使用函数仓库,而不论你将使用哪种语言。

关于特定语言的详细上手说明,请参考以下教程:

阅读下面各节,了解关于函数仓库创建与使用的通用信息。

1

第 1 步 · 创建函数仓库

第 1 步 · 创建函数仓库

要点:从项目或 Code Repositories 应用里新建仓库,此时就要选定语言。

创建函数仓库时,你可以选择最适合你需求的语言。你可以从所选项目的 + New > Repository(+ 新建 > 仓库) 直接初始化函数仓库,也可以在 Code Repositories 应用中点击右上角的 + New repository(+ 新建仓库)。仓库初始化完成后,你就可以添加并运行函数。

创建一个函数代码仓库。
创建一个函数代码仓库。

关于如何为特定语言创建函数仓库的详细说明,请参考以下教程章节:

2

第 2 步 · 选开发环境

第 2 步 · 选开发环境

要点:可以用 VS Code 工作区,也可以用平台内置编辑器 —— 界面和工具链一致。

你可以在 Code Repositories 或 VS Code 工作区中开发函数仓库:

  • VS Code 工作区(推荐): 通过 Palantir 的 Visual Studio Code 扩展,使用实时预览、资源导入、SDK 生成、分支管理、集成终端以及函数发布管理。要在 VS Code 工作区中打开一个函数仓库,请在仓库头部选择 Edit in VS Code(在 VS Code 中编辑)
  • Code Repositories: 使用下面各节描述的、基于 Web 的开发环境来开发和管理函数。

了解如何在 VS Code 中导航函数开发。

3

第 3 步 · 实时预览里试跑

第 3 步 · 实时预览里试跑

要点:不用发布就能运行函数并看结果,是排查逻辑错误最省事的方式。

函数实时预览让你能够在把函数提交到仓库之前先进行测试。在函数加入仓库后,你可以在实时预览中运行它。方法是:打开底部工具栏的 Functions(函数),选择 Live Preview(实时预览)。选择一个函数,输入参数值,然后点击 Run(运行) 执行函数。

在函数实时预览中运行你的新函数。
在函数实时预览中运行你的新函数。

实时预览运行在与已发布函数不同的运行时环境中。差异包括 CPU 资源、可用内存,以及函数在超时前能运行的时长。<br><br> 管理已发布函数的运行时环境。

选择右上角的 Commit(提交),将改动提交到仓库的 master 分支。

4

第 4 步 · 发布(打版本)

第 4 步 · 发布(打版本)

要点:发布即打 tag,之后这个版本就固化下来了。

提交工作后,你会看到 Tag version(打标签版本) 选项。这会将仓库中的所有函数发布到 function registry,使它们能在平台各处被访问

“Tag version” 选项。
“Tag version” 选项。

选择 Tag version,基于 master 分支打一个发布标签。根据改动的范围设置标签名称,然后选择 Tag and release(打标签并发布)

为新的发布选择要打的版本类型。
为新的发布选择要打的版本类型。

要查看函数打标签与发布时的进度,请选择 View(查看) 弹窗,或导航到 Tags(标签) 标签页。一旦 Step 2: Release(第 2 步:发布) 完成,选择已发布的函数即可在 function registry 中查看它们。

在函数发布后,权限传播期间,Workshop 或 function registry 中可能无法立即按名称搜索到这些函数。

标签与发布检查均已通过,新函数已发布。
标签与发布检查均已通过,新函数已发布。
5

第 5 步 · 真正调用它

第 5 步 · 真正调用它

要点:发布后的函数才能在 Workshop、动作类型等地方被真正调用。

当你所打标签的检查项通过后,导航回 Code Repositories 中的 Code(代码) 标签页,从底部工具栏选择 Functions(函数)。你应该能在 Published(已发布) 分区下看到你的新函数。选择它,试着运行这个新函数:

在函数助手中运行新函数。
在函数助手中运行新函数。

进一步了解如何在平台各处利用函数。

延伸阅读 · 相关页面

按主题横向跳转,不必顺着目录一篇篇读。

常见问题速答 · FAQ

关于「函数上手:从建仓库到跑通第一个函数」,读者最常问的几个问题。

第 1 步 · 创建函数仓库是什么?
从项目或 Code Repositories 应用里新建仓库,此时就要选定语言。
第 2 步 · 选开发环境是什么?
可以用 VS Code 工作区,也可以用平台内置编辑器 —— 界面和工具链一致。
第 3 步 · 实时预览里试跑是什么?
不用发布就能运行函数并看结果,是排查逻辑错误最省事的方式。函数实时预览让你能够在把函数提交到仓库之前先进行测试。在函数加入仓库后,你可以在实时预览中运行它。方法是:打开底部工具栏的 Functions(函数),选择 Live Preview(实时预览)。
第 4 步 · 发布(打版本)是什么?
发布即打 tag,之后这个版本就固化下来了。提交工作后,你会看到 Tag version(打标签版本)选项。这会将仓库中的所有函数发布到 function registry,使它们能在平台各处被访问。