This repository contains an application that exposes an API for interacting with the Buildpack Registry.
Search for a buildpack by keyword(s).
GET /search
Name | Type | Description | Example |
---|---|---|---|
matches | string | keyword(s) to search for | "ruby" |
$ curl "https://registry.buildpacks.io/api/v1/search?matches=ruby"
[
{
"latest": {
"id": "a52bd991-0e17-46c0-a413-229b35943765",
"namespace": "heroku",
"name": "ruby",
"version": "0.1.0",
"addr": "public.ecr.aws/r2f9u0w4/heroku-ruby-buildpack@sha256:0f05ccc534c20fb54cc6f0c71df9b21b2952f74f528ed98f55d81c40434844fd",
"yanked": false,
"description": "",
"homepage": "",
"licenses": null,
"stacks": [
"heroku-18",
"heroku-20"
],
"created_at": "2021-03-04T16:20:27.189Z",
"updated_at": "2021-05-16T04:24:52.556Z",
"version_major": "0",
"version_minor": "1",
"version_patch": "0"
},
"versions": [
{
"version": "0.1.0",
"_link": "https://registry.buildpacks.io/api/v1/buildpacks/heroku/ruby/0.1.0"
}
]
}
]
Search for a buildpack by keyword(s).
GET /buildpacks/:namespace/:name
Name | Type | Description | Example |
---|---|---|---|
namespace | string | the namespace component from the ID of the buildpack | "heroku" |
name | string | the name component from the ID of the buildpack | "ruby" |
$ curl "https://registry.buildpacks.io/api/v1/buildpacks/heroku/ruby"
{
"latest": {
"version": "0.1.0",
"namespace": "heroku",
"name": "ruby",
"description": "",
"homepage": "",
"licenses": null,
"stacks": [
"heroku-18",
"heroku-20"
],
"id": "a52bd991-0e17-46c0-a413-229b35943765"
},
"versions": [
{
"version": "0.1.0",
"_link": "https://registry.buildpacks.io//api/v1/buildpacks/heroku/ruby/0.1.0"
}
]
}
Search for a buildpack by keyword(s).
GET /buildpacks/:namespace/:name/:version
Name | Type | Description | Example |
---|---|---|---|
namespace | string | the namespace component from the ID of the buildpack | "heroku" |
name | string | the name component from the ID of the buildpack | "ruby" |
version | string | the version of the buildpack | "0.1.0" |
$ curl "https://registry.buildpacks.io/api/v1/buildpacks/heroku/ruby/0.1.0"
{
"id": "a52bd991-0e17-46c0-a413-229b35943765",
"namespace": "heroku",
"name": "ruby",
"version": "0.1.0",
"addr": "public.ecr.aws/r2f9u0w4/heroku-ruby-buildpack@sha256:0f05ccc534c20fb54cc6f0c71df9b21b2952f74f528ed98f55d81c40434844fd",
"yanked": false,
"description": "",
"homepage": "",
"licenses": null,
"stacks": [
"heroku-18",
"heroku-20"
],
"created_at": "2021-03-04T16:20:27.189Z",
"updated_at": "2021-05-16T04:30:10.652Z",
"version_major": "0",
"version_minor": "1",
"version_patch": "0"
}
This project requires Ruby, Rails and Golang tooling.
- Install Ruby determined by
.ruby-version
file. - Install Rails and Golang.
bundle install
to install all the dependencies in yourGemfile
yarn install
to install all the dependencies inyarn.lock
file
This app uses PostgreSQL. To set up the database, run:
$ bundle exec rake db:create
$ bundle exec rake db:migrate
Run the tests:
$ make test
Then run the Rails app and asset watcher/compiler with:
$ ./bin/dev
In other terminal session, run the background worker to create the index:
$ make index