7 Nov, 2023 | 3 min read

Multi-Language Support for Deploying Your Source Code with Buildpacks

  • Janaka Sandaruwan
  • Software Engineer - WSO2

We're excited to share that deploying applications with buildpacks is now available on the Choreo platform. This empowers users to build their applications on the cloud faster and more easily than before.

What are Buildpacks?

Buildpacks are a fundamental building block in modern application development. They convert your source code into a secure, efficient, production-ready container image without a Dockerfile. With Choreo, developers can take advantage of this powerful tool to effortlessly deploy their applications without the hassle of manual configuration.

Use a Language or Framework of Your Choice

Choreo facilitates seamless builds for popular languages and frameworks—such as Java, Python, Go, NodeJs, Ruby, and PHP—right from your source code. These languages/frameworks are supported under each of the Choreo component types (Service, Web Application, Manual Task, Schedule Task, Webhook, Event Handler, and Test Runner). Additionally, it enables you to consider broader possibilities by allowing you to add your own Dockerfile.

Deploy Your Code to Choreo with Buildpacks

Connecting your Git repository with your application's source code enables hassle-free deployment. First, you have to select the relevant component type based on your source code from the component creation wizard as shown in Figure 1.

Figure 1: Component Creation Wizard

Then, select the language or framework according to your source, indicate the relevant directory, and deploy with a click.

Figure 2: Create a Service Component

How do Buildpacks Work?

Each buildpack consists of two phases. The initial phase is the “Detect” phase, where the buildpack evaluates your source code to determine if it is relevant for the specific buildpack. Once a buildpack is detected as applicable, it proceeds to the next stage, which is the “Build” stage. If the project fails to be detected, the build stage for a specific buildpack is skipped. The build phase runs against your source code and involves setting up build-time and run-time environments, acquiring dependencies, compiling code (if required), and configuring entry points and startup scripts for the source code.

Future Plans

At the time of writing, Choreo only supports Google Buildpacks as default buildpacks. We plan to extend this to a large set of languages and frameworks with the help of other buildpacks. Also, as we move forward, you can bring your own buildpack and deploy your application within Choreo.

Getting Started

If you haven’t signed up, go to Choreo to create a free account today.

Follow our guide to deploy your first application with buildpacks on Choreo.