Add mos_repos virtual resource and use it for ceph example
This commit is contained in:
parent
5807a09609
commit
bc3483f223
@ -22,3 +22,9 @@ debug info.
|
|||||||
```
|
```
|
||||||
solar res action run ceph_mon1
|
solar res action run ceph_mon1
|
||||||
```
|
```
|
||||||
|
|
||||||
|
To add repositories use
|
||||||
|
|
||||||
|
```
|
||||||
|
solar resource create apt1 templates/mos_repos.yaml node=node1 index=1
|
||||||
|
```
|
||||||
|
@ -53,11 +53,15 @@ def deploy():
|
|||||||
'role': 'controller',
|
'role': 'controller',
|
||||||
})[0]
|
})[0]
|
||||||
|
|
||||||
|
managed_apt = vr.create(
|
||||||
|
'managed_apt1', 'templates/mos_repos.yaml',
|
||||||
|
{'node': first_node.name, 'index': 0})[-1]
|
||||||
|
|
||||||
keys.connect(ceph_mon, {})
|
keys.connect(ceph_mon, {})
|
||||||
first_node.connect(ceph_mon,
|
first_node.connect(ceph_mon,
|
||||||
{'ip': ['ip', 'public_vip', 'management_vip']})
|
{'ip': ['ip', 'public_vip', 'management_vip']})
|
||||||
library.connect(ceph_mon, {'puppet_modules': 'puppet_modules'})
|
library.connect(ceph_mon, {'puppet_modules': 'puppet_modules'})
|
||||||
|
managed_apt.connect(ceph_mon, {})
|
||||||
|
|
||||||
if __name__ == '__main__':
|
if __name__ == '__main__':
|
||||||
deploy()
|
deploy()
|
||||||
|
9
resources/apt_repo/actions/remove.yaml
Normal file
9
resources/apt_repo/actions/remove.yaml
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
- hosts: [{{host}}]
|
||||||
|
sudo: yes
|
||||||
|
tasks:
|
||||||
|
- shell: rm -f {{item}}
|
||||||
|
with_items:
|
||||||
|
- /etc/apt/sources.list.d/{{name}}.list
|
||||||
|
- /etc/apt/preferences.d/{{name}}.pref
|
||||||
|
- shell: apt-get update
|
||||||
|
when: {{validate_integrity}}
|
@ -1,9 +1,11 @@
|
|||||||
- hosts: [{{host}}]
|
- hosts: [{{host}}]
|
||||||
sudo: yes
|
sudo: yes
|
||||||
tasks:
|
tasks:
|
||||||
- apt_repository: repo={{repo}} validate_certs=no
|
- template:
|
||||||
- file: path=/etc/apt/preferences.d/{{name}}.pref state=touch
|
src: {{templates_dir}}/source
|
||||||
|
dest: /etc/apt/sources.list.d/{{name}}.list
|
||||||
- template:
|
- template:
|
||||||
src: {{templates_dir}}/preferences
|
src: {{templates_dir}}/preferences
|
||||||
dest: /etc/apt/preferences.d/{{name}}.pref
|
dest: /etc/apt/preferences.d/{{name}}.pref
|
||||||
- shell: apt-get update
|
- shell: apt-get update
|
||||||
|
when: {{validate_integrity}}
|
||||||
|
@ -18,5 +18,8 @@ input:
|
|||||||
schema: str
|
schema: str
|
||||||
value:
|
value:
|
||||||
pin_priority:
|
pin_priority:
|
||||||
schema: str
|
schema: int
|
||||||
value:
|
value:
|
||||||
|
validate_integrity:
|
||||||
|
schema: bool
|
||||||
|
value: true
|
||||||
|
1
resources/apt_repo/templates/source
Normal file
1
resources/apt_repo/templates/source
Normal file
@ -0,0 +1 @@
|
|||||||
|
{{repo}}
|
@ -4,3 +4,4 @@
|
|||||||
- shell: echo 'Managed by solar' > /etc/apt/sources.list
|
- shell: echo 'Managed by solar' > /etc/apt/sources.list
|
||||||
when: {{ensure_other_removed}}
|
when: {{ensure_other_removed}}
|
||||||
- shell: apt-get update
|
- shell: apt-get update
|
||||||
|
when: {{ensure_other_removed}}
|
||||||
|
43
templates/mos_repos.yaml
Normal file
43
templates/mos_repos.yaml
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
id: mos_repos
|
||||||
|
resources:
|
||||||
|
- id: mos_holdback_{{index}}
|
||||||
|
from: resources/apt_repo
|
||||||
|
location: {{node}}
|
||||||
|
values:
|
||||||
|
name: mos-holdback
|
||||||
|
package: '*'
|
||||||
|
repo: deb http://mirror.fuel-infra.org/mos-repos/ubuntu/7.0/ mos7.0-holdback main restricted
|
||||||
|
pin: release o=Mirantis,n=mos7.0,a=mos7.0-holdback,l=mos7.0
|
||||||
|
pin_priority: 1100
|
||||||
|
- id: mos_security_{{index}}
|
||||||
|
from: resources/apt_repo
|
||||||
|
location: {{node}}
|
||||||
|
values:
|
||||||
|
name: mos
|
||||||
|
package: '*'
|
||||||
|
repo: deb http://mirror.fuel-infra.org/mos-repos/ubuntu/7.0/ mos7.0-security main restricted
|
||||||
|
pin: release o=Mirantis,n=mos7.0,a=mos7.0-security,l=mos7.0
|
||||||
|
pin_priority: 1050
|
||||||
|
- id: mos_updates_{{index}}
|
||||||
|
from: resources/apt_repo
|
||||||
|
location: {{node}}
|
||||||
|
values:
|
||||||
|
name: mos_update
|
||||||
|
package: '*'
|
||||||
|
repo: deb http://mirror.fuel-infra.org/mos-repos/ubuntu/7.0/ mos7.0-updates main restricted
|
||||||
|
pin: release o=Mirantis,a=mos7.0-updates,l=mos7.0,n=mos7.0
|
||||||
|
pin_priority: 1050
|
||||||
|
- id: managed_apt_{{index}}
|
||||||
|
from: resources/managed_apt
|
||||||
|
location: {{node}}
|
||||||
|
values:
|
||||||
|
names:
|
||||||
|
- mos_holdback_{{index}}::name
|
||||||
|
- mos_security_{{index}}::name
|
||||||
|
- mos_updates_{{index}}::name
|
||||||
|
repos:
|
||||||
|
- mos_holdback_{{index}}::repo
|
||||||
|
- mos_security_{{index}}::repo
|
||||||
|
- mos_updates_{{index}}::repo
|
||||||
|
ensure_other_removed: false
|
||||||
|
|
Loading…
x
Reference in New Issue
Block a user