commit | 32ae83144f8441438ae085ed56e875747c8e6e0f | [log] [tgz] |
---|---|---|
author | Zack Williams <zdw@opennetworking.org> | Fri Apr 27 16:31:11 2018 -0700 |
committer | Zack Williams <zdw@opennetworking.org> | Fri Apr 27 16:31:33 2018 -0700 |
tree | bcd27b61e4a1af5036ad17d51ebab00569aa2ccf | |
parent | 5efea9282d25b521b739806bae3c2475c12b5e25 [diff] |
[CORD-2992] Fix recursive ownership breakage caused by ansible 2.5.2 default change Change-Id: I455f8e91213bc4c15b811544d90b39bee484ffe4
This repository contains Ansible playbooks for installing and configuring software components that build a CORD POD: OpenStack, ONOS, and XOS.
It is used as a sub-module of the main CORD repository.
Credentials will be autogenerated and placed in the credentials/
directory when the playbooks are run, where the credential name is the filename, and the contents of the file is the password.
For most profiles the XOS admin user is named xosadmin@opencord.org
.
To create a new CORD profile, you should create a .yaml variables file in profile_manifests/
with the name of your profile (ex: my-profile.yaml
), and populate it with your configuration.
Before commit, please run ./scripts/lintcheck.sh .
in the repo root, which will perform the same ansible-lint check that Jenkins performs when in review in gerrit.
Used as a part of the OpenCloud deployment. Similar to rcord
.
This is a part of the R-CORD deployment - start using the steps specified in that repo.
This profile is designed to integrate XOS with physical infrastructure pieces like MaaS, OpenStack, and ONOS. See the CORD-in-a-Box Quick Start Guide for how to set up a virtual multi-node R-CORD pod on a single host.
E-CORD description goes here.
M-CORD description goes here.
cord_profile
: name of the profile_manifest to use.
Paths on configuration node (where playbooks are run, may also be build node)
config_cord_dir
location on configuration node of cord dirconfig_cord_profile_dir
location on configuration node of cord_profile dirpki_dir
, ssh_pki_dir
: where SSL and SSH certificates are created on config nodecredentials_dir
- location where autogenerated passwords file are createdPaths on head node (target system operated on by playbooks)
head_cord_dir
- where the cord
directory is copied to on the head node (deprecated when we reach container-only deploys)head_cord_profile_dir
- location of the cord_profile
directory on the head nodehead_onos_cord_dir
- location of the onos-cord
directory on the head nodehead_onos_fabric_dir
- location of the onos-fabric
directory on the head nodePrefix every role file with the yaml start block and comment with name of file relative to role base.
--- # rolename/tasks/main.yml
When using templates, put the template filename and path within the role as a comment in the template so that it's easy to determine which template was used to create a file after it's been created.
If you use a variable that isn't created by the ansible setup task, define it in the role defaults file. The default value for anay variable must be the same across all role defaults.
Use the YAML style syntax for tasks, not the older =
syntax, as the former is more likely to indent and syntax highlight properly in most editors.
Roles should always have the same outcome, so avoid using conditionals or tags to change the behavior of a role. These features should only be used for avoiding time-consuming tasks in an idempotent manner.