Skip to content

Instantly share code, notes, and snippets.

@jabrown85
Last active January 17, 2020 19:34
Show Gist options
  • Save jabrown85/7b7dbdcb381bc704768a65eb47a6e516 to your computer and use it in GitHub Desktop.
Save jabrown85/7b7dbdcb381bc704768a65eb47a6e516 to your computer and use it in GitHub Desktop.
Riff buildpacks with provides/requires interface
[[order]]
[[order.group]]
id = "cloudfoundry/openjdk-jre"
version = "1.0.0"
optional = true
[[order.group]]
id = "cloudfoundry/jvm-application"
version = "1.0.0"
optional = true
[[order.group]]
id = "cloudfoundry/nodejs"
version = "1.0.0"
optional = true
[[order.group]]
id = "cloudfoundry/npm"
version = "1.0.0"
optional = true
[[order.group]]
id = "cloudfoundry/riff-function"
version = "1.0.0"
[[order.group]]
id = "projectriff/java-function-buildpack"
version = "1.0.0"
optional = true
[[order.group]]
id = "projectriff/node-function-buildpack"
version = "1.0.0"
optional = true
# cloudfoundry/java buildplan
[[provides]]
name = "openjdk-jre"
# cloudfoundry/jvm-application buildplan
[[provides]]
name = "jvm-application"
# cloudfoundry/nodejs buildplan
[[provides]]
name = "node"
# cloudfoundry/npm buildplan
[[provides]]
name = "node_modules"
# cloudfoundry/riff-function buildplan
[[requires]]
name = "openjdk-jre"
[[requires]]
name = "jvm-application"
# I think this buildpack could look for any matching language requirements it finds and provide the interface for riff
[[or.requires]]
name = "node"
[[or.requires]]
name = "node_modules"
[[provides]]
name = "riff-java-function" # it detects it'll be java and RIFF=1 or riff.toml w/e
stuff_from_riff_toml = "something"
[[or.provides]]
name = "riff-node-function"
function_uri = "/workspace/custom.js" # from riff.toml or package.json
# projectriff/java-function-buildpack buildplan
[[requires]]
name = "riff-java-function"
# projectriff/node-function-buildpack buildplan
[[requires]]
name = "riff-node-function"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment