1
0
mirror of https://github.com/openshift/openshift-docs.git synced 2026-02-06 06:46:26 +01:00
Files
openshift-docs/modules/serverless-typescript-template.adoc
2022-02-16 10:02:01 -06:00

40 lines
1.4 KiB
Plaintext

// Module included in the following assemblies
//
// * serverless/functions/serverless-developing-typescript-functions.adoc
:_content-type: REFERENCE
[id="serverless-typescript-template_{context}"]
= TypeScript function template structure
When you create a TypeScript function using the `kn` CLI, the project directory looks like a typical TypeScript project with the exception of an additional `func.yaml` configuration file.
Both `http` and `event` trigger functions have the same template structure:
.Template structure
[source,terminal]
----
.
├── func.yaml <1>
├── package.json <2>
├── package-lock.json
├── README.md
├── src
│   └── index.ts <3>
├── test <4>
│   ├── integration.ts
│   └── unit.ts
└── tsconfig.json
----
<1> The `func.yaml` configuration file is used to determine the image name and registry.
<2> You are not restricted to the dependencies provided in the template `package.json` file. You can add additional dependencies as you would in any other TypeScript project.
+
.Example of adding npm dependencies
[source,terminal]
----
npm install --save opossum
----
+
When the project is built for deployment, these dependencies are included in the created runtime container image.
<3> Your project must contain an `src/index.js` file which exports a function named `handle`.
<4> Integration and unit test scripts are provided as part of the function template.