Skip to content

paketo-buildpacks/samples

Paketo Buildpacks Sample Applications

A collection of sample applications that can be built using Paketo Buildpacks.

Prerequisites

  1. Clone this repository: git clone https://github.com/paketo-buildpacks/samples
  2. Pack

Adding New Samples

  • If the app is a part of an existing language family:
    • Add app to the appropriate language family in its own subdirectory.
    • Add a test context to the *_test.go file in the language family directory.
  • If the app is a part of a new language family:
    • Create a new directory for the language family.
    • Create a new test file <language_family_name>/*_test.go containing a new test suite.
    • Be mindful of which builders the app is compatible with and set up test suites accordingly.
    • Run ./scripts/generate-test-workflow.sh -l <language_family_name> to generate a Github Actions workflow that runs the tests.
  • Update README.md.

Samples

Java

Node.js

Dotnet Core

Go

PHP

Ruby

Python

Procfile

Web Servers

Testing Samples

To run integration tests that pack build each of the sample apps, use scripts/smoke.sh. See scripts/smoke.sh -h for usage information.

For example, to run tests for the Go and .NET Core samples with the Paketo tiny and base builders, run:

./smoke.sh --builder paketobuildpacks/builder-jammy-tiny:latest \
           --builder paketobuildpacks/builder-jammy-base:latest \
           --suite go \
           --suite dotnet-core