GithubHelp home page GithubHelp logo

devreaux / open-liberty Goto Github PK

View Code? Open in Web Editor NEW

This project forked from paketo-buildpacks/liberty

0.0 0.0 0.0 55 KB

A Cloud Native Buildpack that provides the Open Liberty runtime

License: Apache License 2.0

Go 98.46% Shell 1.54%

open-liberty's Introduction

gcr.io/paketo-buildpacks/open-liberty

The Paketo Open Liberty Buildpack is a Cloud Native Buildpack that contributes Open Liberty for Java EE support.

Behavior

This buildpack will participate all the following conditions are met

(
  <APPLICATION_ROOT>/WEB-INF exists OR
  <APPLICATION_ROOT>/server.xml exists OR
  <APPLICATION_ROOT>/wlp/usr/servers/*/server.xml exists
) AND (
  Main-Class is NOT defined in the mainfest
)

The buildpack will do the following:

  • Requests that a JRE be installed
  • Contribute an Open Liberty runtime to wlp.install.dir
  • Create a server called defaultServer
  • Contributes web process type
  • At launch time, symlinks <APPLICATION_ROOT> to ${wlp.install.dir}/usr/servers/defaultServer/dropins/<APPLICATION_ROOT_BASENAME>.

The buildpack will support all available profiles of the two most recent versions of the Open Liberty runtime. Note that because the Open Liberty versioning scheme is not conformant semantic versioning, an Open Liberty version like 21.0.0.11 is defined here as 21.0.11, and should be referenced as such.

Configuration

Environment Variable Description
$BP_OPENLIBERTY_VERSION The version of Open Liberty to install. Defaults to the latest version of the runtime.
$BP_OPENLIBERTY_PROFILE The Open Liberty profile to use. Defaults to full.
$BP_OPENLIBERTY_APP_NAME If the server.xml does not specify a context root, Open Liberty will use this value as the context root. Defaults to the value of $CNB_APP_DIR, currently workspace.
$BP_OPENLIBERTY_LOG_LEVEL Sets the logging level. If not set, attempts to get the buildpack's log level. If unable, defaults to INFO

Default Configurations that Vary from Open Liberty's Default

By default, the Open Liberty buildpack will log in json format. This will aid in log ingestion. Due to design decisions from the Open Liberty team, setting this format to any other value will prevent all log types from being sent to stdout and will instead go to messages.log. In addition, the log sources that will go to stdout are message,trace,accessLog,ffdc,audit.

All of these defaults can be overriden by setting the appropriate properties found in Open Liberty's documentation. They can be set as environment variables, or in bootstrap.properties.

Bindings

The Open Liberty buildpack will accept a single binding of type open-liberty. There are currently two files supported in the binding:

  1. server.xml. If specified, this file will replace the defaultServer's server.xml and is not subject to any post-processing; therefore, any variable references therein must be resolvable.
  2. bootstrap.properties. If specified, this file will replace the defaultServer's bootstrap.properties. This is one place to define variables used by server.xml.

Both files are optional, as is the binding itself.

License

This buildpack is released under version 2.0 of the Apache License.

open-liberty's People

Contributors

dependabot[bot] avatar paketo-bot avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.