@@ -8,132 +8,10 @@ An **Ansible Playbook Bundle (APB)** is a lightweight application definition (me
8
8
* Developer tooling to drive a guided approach.
9
9
* Easily modified or extended.
10
10
11
- ## Installing the *** apb*** tool
12
- ##### Prerequisites
13
- [ Docker] ( https://www.docker.com/ ) must be correctly [ installed] ( https://docs.docker.com/engine/installation/ ) and running on the system.
14
-
15
- ##### Running from a container
16
-
17
- Create an alias in your .bashrc or somewhere else sane for your shell:
18
- ` alias apb='docker run --rm --privileged -v $PWD:/mnt -v $HOME/.kube:/.kube -v /var/run/docker.sock:/var/run/docker.sock -u $UID docker.io/ansibleplaybookbundle/apb' `
19
-
20
- You should be able to start working by running ` apb init my_apb ` . The first run in particular may take awhile to return while the image is pulled.
21
-
22
- If you would prefer to use atomic rather than an alias this is also possible:
23
- ` atomic run docker.io/ansibleplaybookbundle/apb init my_apb `
24
-
25
- There are three tags to choose from:
26
- - ** latest** : more stable, less frequent releases
27
- - ** nightly** : following upstream commits, installed from RPM
28
- - ** canary** : following upstream commits, installed from source build
29
-
30
- ##### RPM Installation
31
-
32
- For RHEL or CentOS 7:
33
- ```
34
- su -c 'wget https://copr.fedorainfracloud.org/coprs/g/ansible-service-broker/ansible-service-broker/repo/epel-7/group_ansible-service-broker-ansible-service-broker-epel-7.repo -O /etc/yum.repos.d/ansible-service-broker.repo'
35
-
36
- sudo yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
37
- sudo yum -y install apb
38
- ```
39
-
40
-
41
- For Fedora 25 or Fedora 26:
42
- ```
43
- sudo dnf -y install dnf-plugins-core
44
- sudo dnf -y copr enable @ansible-service-broker/ansible-service-broker
45
- sudo dnf -y install apb
46
- ```
47
-
48
- ##### Installing from source
49
-
50
- ###### Installing from source - Python/VirtualEnv
51
-
52
- Clone this repo
53
- ```
54
- git clone https://github.com/fusor/ansible-playbook-bundle.git
55
- ```
56
- Install python-virtualenv, create a virtualenv, and activate it.
57
- ```
58
- sudo dnf install -y python-virtualenv
59
- virtualenv /tmp/apb
60
- source /tmp/apb/bin/activate
61
- ```
62
- Install requirements and run the setup script (requires python)
63
- ```
64
- cd ansible-playbook-bundle && pip install -U setuptools && pip install -r src/requirements.txt && python setup.py install
65
- ```
66
-
67
- Optionally, if actively developing on the project, install the
68
- testing requirements:
69
- ```
70
- pip install -r src/test-requirements.txt
71
- ```
72
-
73
- Reactivate the ` apb ` virtualenv in other shell sessions using ` source /tmp/apb/bin/activate ` if needed.
74
-
75
- ###### Installing from source - Tito
76
-
77
- Alternatively you can use [ tito] ( http://github.com/dgoodwin/tito ) to install.
78
- ``` bash
79
- tito build --test --rpm -i
80
- ```
81
-
82
- ##### Test APB tooling
83
- Run ` apb help ` to make sure the tool is installed correctly
84
- ```
85
- $ apb help
86
- usage: apb [-h] [--debug] [--project BASE_PATH]
87
- {init,help,prepare,push,bootstrap,list,remove,build} ...
88
-
89
- APB tooling for assisting in building and packaging APBs.
90
-
91
- optional arguments:
92
- -h, --help show this help message and exit
93
- --debug Enable debug output
94
- --project BASE_PATH, -p BASE_PATH
95
- Specify a path to your project. Defaults to CWD.
96
-
97
- subcommand:
98
- {init,help,prepare,push,bootstrap,list,remove,build}
99
- init Initialize the directory for APB development
100
- help Display this help message
101
- prepare Prepare an ansible-container project for APB packaging
102
- push Push local APB spec to an Ansible Service Broker
103
- bootstrap Tell Ansible Service Broker to reload APBs from the
104
- container repository
105
- list List APBs from the target Ansible Service Broker
106
- remove Remove APBs from the target Ansible Service Broker
107
- build Build and package APB container
108
-
109
- ```
110
-
111
11
## Documentation
112
12
* [ Getting Started] ( docs/getting_started.md ) - step by step tutorial to create an Ansible Playbook Bundle
113
13
* [ Design] ( docs/design.md ) - overall design of Ansible Playbook Bundles
114
- * [ Developers] ( docs/developers.md ) - in depth explanation of Ansible Playbook Bundles
115
-
116
- ## Links
117
- * Ansible Service Broker [ https://github.com/openshift/ansible-service-broker ] ( https://github.com/openshift/ansible-service-broker )
118
- * YouTube channel: [ Ansible Service Broker] ( https://www.youtube.com/channel/UC04eOMIMiV06_RSZPb4OOBw )
119
- * YouTube channel: [ APB] ( https://www.youtube.com/channel/UCE0uKh7SmjsOL3Zv0jnhgaA )
120
-
121
- ## Initialize skeleton APB application example
122
- ```
123
- apb init my_apb --async=optional --bindable
124
- ```
14
+ * [ Developers] ( docs/developers.md ) - in-depth explanation of Ansible Playbook Bundles
15
+ * [ APB CLI Tool] ( docs/apb_cli.md ) - installation and usage of the ` apb ` cli tool
16
+ * [ Ansible Service Broker] ( https://github.com/openshift/ansible-service-broker ) - more information about the Ansible Service Broker which runs APBs
125
17
126
- This gives us the following example apb.yaml
127
- ```
128
- version: 1.0
129
- name: my-apb
130
- description: "my-apb description"
131
- bindable: True
132
- async: optional
133
- metadata: {}
134
- plans:
135
- - name: my-plan
136
- description: "my-plan description"
137
- free: True
138
- metadata: {}
139
- parameters: []
0 commit comments