A PaaS can be viewed at as a method that takes different streams of data and combines them into a working application. For SUSE Cloud Application Platform, we take the application code, buildpack, environment variables, service descriptions and output a configured and running container. Each of these pieces can come from a different person or team with a different focus to create a quickly iterable but still secure process.
In this list, the buildpack is likely the least understood. Simply put, It is the part of the build system that takes the code provided by the developers and builds it into a full application ready to run.
There are several buildpacks that come standard as part of the default installation of SUSE Cloud Application Platform. That said, one of my favorite “features” is the ability to customize the platform to fit your needs while still coming with sane defaults. It’s opinionated in a way that you can change it’s mind!
A way to do this customization is through building your own buildpack.
Building a custom buildpack allows you to do a variety of things such as lock in versions of platforms, inject dependencies, check security constraints, or even mutate code to allow your developers to be more effective. Done right, you might even speed up the build process.
In the linked guide, I’ll go through both how a buildpack works and how to build a simple example of your own:
If you want to follow along, you will need access to an installation of SUSE Cloud Application Platform. Luckily, it is free to use and is a reasonably easy installation.: