Skip to content

Releases: upbound/function-template-typescript

v0.1.0 - Initial Release

06 Feb 21:52
bcbba80

Choose a tag to compare

What's New

This is the initial release of the Crossplane Function Template for TypeScript. This template provides a complete starting point for building Crossplane composition functions using TypeScript and the official Function SDK.

Features

  • Full TypeScript Support: Build Crossplane functions with TypeScript 5+ or TypeScript 7 (tsgo)
  • Function SDK Integration: Uses @crossplane-org/function-sdk-typescript v0.3.0
  • Example Implementation: Sample function that creates Kubernetes resources (Deployment, Service, ServiceAccount, Ingress)
  • Testing Support: Jest-based testing with YAML test case support
  • GitHub Actions CI/CD: Automated workflows for building, testing, and publishing packages
  • Multi-Architecture Support: Docker images and packages for both amd64 and arm64
  • Code Quality Tools: ESLint, Prettier, and TypeScript strict mode configuration
  • Complete Documentation: Extensive README with implementation guide and examples

Package Structure

  • Configuration Package: Contains the XRD and Composition for deploying the function
  • Function Package: Embeds the TypeScript function in a distroless Node.js container
  • Example Manifests: Ready-to-use examples in the examples/ directory

Installation

Install the configuration package to your Crossplane cluster:

apiVersion: pkg.crossplane.io/v1
kind: Configuration
metadata:
  name: configuration-template-typescript
spec:
  package: xpkg.upbound.io/upbound/function-template-typescript:v0.1.0

Development

Clone and start developing:

git clone https://github.com/upbound/function-template-typescript.git
cd function-template-typescript
npm install
npm run build
npm test

What's Included

  • TypeScript function implementation with SDK integration
  • YAML-based test case framework
  • Multi-platform Docker build scripts
  • Crossplane package build tooling
  • GitHub Actions for automated CI/CD
  • Comprehensive README and documentation

For more information, see the README.


Full Changelog: https://github.com/upbound/function-template-typescript/commits/v0.1.0