Once logged into your OCP cluster, you must first create a project:
$ oc new-project test-project
First add the default registry (ansibleplaybookbundle on Dockerhub):
$ apb registry add docker
Or to add a custom registry:
$ apb registry add docker --org ansibleplaybookbundle --type dockerhub
Then you can list your registries:
$ apb registry list
Found registries already in config:
NAME TYPE ORG URL
------ -+- --------- -+- --------------------- -+- ---------
docker | dockerhub | ansibleplaybookbundle | docker.io
Once a registry is configured, run apb bundle list
:
$ apb bundle list
Found specs already in registry: [docker]
BUNDLE IMAGE REGISTRY
--------------------- -+- ------------------------------------------------------------------- -+- --------
blankvm-apb | docker.io/ansibleplaybookbundle/virtualmachines-apb:latest | docker
prometheus-apb | docker.io/ansibleplaybookbundle/prometheus-apb:latest | docker
dynamic-apb | docker.io/ansibleplaybookbundle/dynamic-apb:latest | docker
eclipse-che-apb | docker.io/ansibleplaybookbundle/eclipse-che-apb:latest | docker
etherpad-apb | docker.io/ansibleplaybookbundle/etherpad-apb:latest | docker
pyzip-demo-db-apb | docker.io/ansibleplaybookbundle/pyzip-demo-db-apb:latest | docker
This command loads and caches APB specs (metadata) from newly added registries. Cached specs can be updated with apb bundle list --refresh
Provision any of the listed APBs like so:
$ apb bundle provision <bundle_name> -n myproject --follow
To provision an APB with the admin
ClusterRole used in the APB sandbox, run:
$ apb bundle provision <bundle_name> -n myproject --sandbox-role admin --follow
Note: the --follow
flag waits for the APB to start running and shows logs on-screen.
apb
supports command tab completion for bash
and zsh
:
$ source <(apb completion bash) # load bash completion into session
$ source <(apb completion zsh) # load zsh completion into session
In the starter tier of openshift.io, the secret quota is 20 (at the time of this writing). Since each apb bundle provision
action creates a serviceaccount with an API token residing in a secret, it's possible to hit this limit after a few provisions. Cleaning up bundle-*****-[..]
serviceaccounts will help resolve this. You can check if you're hitting this limit with oc get quota object-counts -o yaml