{"id":18589374,"url":"https://github.com/pmorie/osb-starter-pack","last_synced_at":"2025-12-15T04:54:23.539Z","repository":{"id":49985775,"uuid":"118825391","full_name":"pmorie/osb-starter-pack","owner":"pmorie","description":"A quickstart for making a new Open Service Broker","archived":false,"fork":false,"pushed_at":"2021-06-07T03:04:05.000Z","size":13855,"stargazers_count":69,"open_issues_count":12,"forks_count":47,"subscribers_count":9,"default_branch":"master","last_synced_at":"2025-03-24T22:51:18.998Z","etag":null,"topics":["kubernetes","openservicebroker","openservicebrokerapi"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pmorie.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-01-24T21:38:02.000Z","updated_at":"2023-03-22T18:17:57.000Z","dependencies_parsed_at":"2022-09-10T03:23:38.676Z","dependency_job_id":null,"html_url":"https://github.com/pmorie/osb-starter-pack","commit_stats":null,"previous_names":["pmorie/go-open-service-broker-skeleton"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pmorie%2Fosb-starter-pack","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pmorie%2Fosb-starter-pack/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pmorie%2Fosb-starter-pack/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pmorie%2Fosb-starter-pack/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pmorie","download_url":"https://codeload.github.com/pmorie/osb-starter-pack/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248243452,"owners_count":21071054,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["kubernetes","openservicebroker","openservicebrokerapi"],"created_at":"2024-11-07T00:51:52.580Z","updated_at":"2025-10-30T07:50:26.074Z","avatar_url":"https://github.com/pmorie.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# OSB Starter Pack\n\n[![Build Status](https://travis-ci.org/pmorie/osb-starter-pack.svg?branch=master)](https://travis-ci.org/pmorie/osb-starter-pack \"Travis\")\n\nA go quickstart for creating service brokers that implement the [Open Service\nBroker API](https://github.com/openservicebrokerapi/servicebroker) based on\n[`osb-broker-lib`](https://github.com/pmorie/osb-broker-lib). Broker authors\nimplement an interface that uses the same types as the\n[`go-open-service-broker-client`](https://github.com/pmorie/go-open-service-broker-client)\nproject.\n\n## Who should use this project?\n\nYou should use this project if you're looking for a quick way to implement an\nOpen Service Broker and start iterating on it.\n\n## Prerequisites\n\nYou'll need:\n\n- [`go`](https://golang.org/dl/)\n- A running [Kubernetes](https://github.com/kubernetes/kubernetes) (or [openshift](https://github.com/openshift/origin/)) cluster\n- The [service-catalog](https://github.com/kubernetes-incubator/service-catalog)\n  [installed](https://github.com/kubernetes-incubator/service-catalog/blob/master/docs/install.md)\n  in that cluster\n\nIf you're using [Helm](https://helm.sh) to deploy this project, you'll need to\nhave it [installed](https://docs.helm.sh/using_helm/#quickstart) in the cluster.\nMake sure [RBAC is correctly configured](https://docs.helm.sh/using_helm/#rbac)\nfor helm.\n\n## Getting started\n\nYou can `go get` this repo or `git clone` it to start poking around right away.\n\nThe project comes ready with a minimal example service that you can easily\ndeploy and begin iterating on.\n\n### Get the project\n\n```console\n$ go get github.com/pmorie/osb-starter-pack/cmd/servicebroker\n```\n\nOr clone the repo:\n\n```console\n$ cd $GOPATH/src \u0026\u0026 mkdir -p github.com/pmorie \u0026\u0026 cd github.com/pmorie \u0026\u0026 git clone git://github.com/pmorie/osb-starter-pack\n```\n\nChange into the project directory:\n\n```console\n$ cd $GOPATH/src/github.com/pmorie/osb-starter-pack\n```\n\n### Deploy broker using Helm\n\nDeploy with Helm and pass custom image and tag name.\nNote: This also pushes the generated image with docker.\n\n```console\n$ IMAGE=myimage TAG=latest make push deploy-helm\n```\n\n### Deploy broker using Openshift\n\nDeploy to OpenShift cluster by passing a custom image and tag name.\nNote: You must already be logged into an OpenShift cluster. \nThis also pushes the generated image with docker.\n\n```console\n$ IMAGE=myimage TAG=latest make push deploy-openshift\n```\n\nRunning either of these flavors of deploy targets will build the broker binary,\nbuild the image, deploy the broker into your Kubernetes, and add a\n`ClusterServiceBroker` to the service-catalog.\n\n## Adding your business logic\n\nTo implement your broker, you fill out just a few methods and types in\n`pkg/broker` package:\n\n- The `Options` type, which holds options for the broker\n- The `AddFlags` function, which adds CLI flags for an Options\n- The methods of the `BusinessLogic` type, which implements the broker's\n  business logic\n- The `NewBusinessLogic` function, which creates a BusinessLogic from the\n  Options the program is run with\n\n## Goals of this project\n\n- Make it extremely easy to create a new broker\n- Have a batteries-included experience that gives you the good stuff right out\n  of the box, for example:\n  - Checks on who can make calls to the broker using Kubernetes\n    [subject-access-reviews](https://kubernetes.io/docs/admin/accessing-the-api/)\n  - Easy on-ramp to instrumenting your broker with\n    [Prometheus](https://prometheus.io/) metrics\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpmorie%2Fosb-starter-pack","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpmorie%2Fosb-starter-pack","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpmorie%2Fosb-starter-pack/lists"}