1941 Commits

Author SHA1 Message Date
stephane
fa8820ce81 Fix ansible-playbook segfault
ansible-playbook segfaults when we supply the "-I" option to pip.
Remove this option since it's also slowing down our run. See related
bug for more details.

Closes-Bug: 1459801
Change-Id: Idaf090d642c5e0ab5e143d824ca99f9d39679d87
2015-05-28 18:56:05 -07:00
Peter Martini
46faf66a25 Redirect error echoes to STDERR
This is in a function whose output is consumed elsewhere,
so echoing to STDOUT gets lost.

Redirect to STDERR so it gets sent to the console.

Change-Id: Iaab7eec097f7a3c3533afd20cc8da545bc4a425b
2015-05-28 08:25:37 -04:00
Peter Martini
10620dabad Add CONTRIBUTING.rst to doc/source/dev
Change-Id: I04a7a245ea7ca3dfad9bc127e318169083523fa8
2015-05-28 08:20:06 -04:00
Jenkins
1f31bc58db Merge "Move qemu-utils into install/defaults/main" 2015-05-27 11:36:49 +00:00
stephane
4c936f6fab Add ability to write CSV file
Let users write the CSV content out to a file rather than redirecting,
copy/paste, etc. etc.

Change-Id: Icdae8bfd197c015fb803558668b77c9c7a420611
2015-05-26 16:47:09 -07:00
Jenkins
18d92256ff Merge "Fix documentation in bifrost" 2015-05-26 03:00:02 +00:00
Devananda van der Veen
f993b667ce Move qemu-utils into install/defaults/main
Qemu-utils package is required for the qemu-img command, which is
required by diskimage-builder and therefor should be installed for all
environments, not just testing environments.

Change-Id: Id24c481455a0ab3cf5bf0ab96c233db2aadec62b
2015-05-25 13:53:13 +00:00
Mitsuhiro SHIGEMATSU
aa4e919353 Fix documentation in bifrost
Fix typos or something in RST files

Change-Id: I395358194c93f0491b6c1311f8be9f42c99806ed
2015-05-25 13:53:01 +00:00
Julia Kreger
7431e61656 Add .gitreview file
Change-Id: Ifc62cbdcb923c25f50e8226e77f587eca6f63dd6
2015-05-25 13:52:46 +00:00
Julia Kreger
2c1c54d7b7 Fix playbooks for OpenStack CI
The OpenStack CI systems are preconfigured with various components
such as databases, message queues, caching dns resolvers.  The
CI systems also lack things like public/private key pairs, and
known_hosts files.

Due to this, a number of minor changes are required in Bifrost's test
sequence to account for and route around these differences in order
to allow test jobs to run until completion. This also demonstrated
that some steps have been operating under the assumption that the user
likely already had certain things installed, so service restart
tweeks have also been necessary.

Added a step to restart libvirt-bin in order to allow it to pickup
new capabilities due to the install of the qemu emulator.

Added additional steps to collect kernel log and `virsh capabilities`
output.

Removed MySQL step nolog statements as the password is automatically
suppressed and it suppresses information that could be required for
troubleshooting.

Added in specific username/password logic for MySQL steps if ZUUL
is detected in order to use the OpenStack CI defaults.

Changed VM test node creation to occur upon every attempt.

Extended the startup wait for a test node to be 900 seconds from 600
seconds.

Added collection of process list and listening sockets if ZUUL is
detected.

Added report of VM console log and various commands to assist in
troubleshooting a failing job.

Added auto-generation of a user ssh keypair if absent when operating
in OpenStack CI.

Added explicit adjustment of iptables to permit connections on the
network interface that the hosts are being provisioned via on
8080/tcp and 6385/tcp.

Change-Id: I3c37c5c21af0aefb5007c5775043f7f837389c2d
2015-05-16 06:18:48 +00:00
Julia Kreger
b6b63a84ac Updated os_ironic_node module
Updating os_ironic_node module to newest code as shade library
updates have landed.
2015-05-01 09:20:26 -04:00
Julia Kreger
c3bcd20969 Change to Ansible core modules devel branch
Switching to the devel branch until the submodule
pointer gets updated so bifrost is operational again.

This was due to the Ansible mysql_user module breaking when
no configuration file was explicitly set.  A fix has been landed
however the pointer for the main Ansible repo naturally lags
behind the current development state of the modules repo.
2015-04-30 13:08:19 -04:00
Julia Kreger
d3065bd481 Merge pull request #15 from juliakreger/devel
Merge known-good devel branch to master.
2015-04-21 14:41:44 -04:00
Julia Kreger
e4bf5b1c7c Add support for dependent changes
Incorperate support for processing the ZUUL_CHANGES environment
variable in the OpenStack CI system such that dependent or triggered
changes for Ironic, Shade, or python-ironicclient are incorporated
for testing.
2015-04-21 14:25:07 -04:00
Julia Kreger
8cf06ee89f Change Zuul change processor to not commit cherry picks
If git is not setup for the root user, then the cherry pick could
fail as the commit information may not not be present.  In stead,
we pass -n to the cherry pick which prevents the command from
committing changes.
2015-04-21 14:15:11 -04:00
Julia Kreger
33b2e27b05 Automatically set ci_testing flag
In the event of testing in the OpenStack CI system, we need to
operate differently with repositories as dependent changes may be
in other repositories.
2015-04-21 14:08:29 -04:00
Julia Kreger
b6e0daa9ee Add a helper script to apply changes in zuul
In order to aappropriately test dependencies in a CI scenario,
specificially in the case of OpenStack CI, we need to be able to
parse and act upon the changes defined by Zuul since we manage
the installation of our dependencies.
2015-04-21 12:04:36 -04:00
Julia Kreger
cd48a75419 Script improvements for greater compatability/testing
Changed the scripts to support yum as well as apt, and added a
step to execute the ansible check-syntax sequence in order to fail
fast in the event of a syntax issue.

Additionally, the installation of jinja2 has been switched to use
a requirements.txt file placed in the root of the repository.
2015-04-21 11:55:00 -04:00
Julia Kreger
7f444f6503 Updating documentation
Updated documentation to provide details regarding future network
configuration possibilities.
2015-04-20 16:06:20 -04:00
Julia Kreger
0d1d4d09a0 Adding missing ironic source install file
Apparently this file was missed on a previous commit, adding.
2015-04-20 15:47:19 -04:00
Julia Kreger
05063d79dc Adding support for future network configuration systems
Added a basic template that can be parsed by glean or the
future version of cloud-init, largely to allow a user to deploy
a node without cloud-init.
2015-04-20 15:42:33 -04:00
Julia Kreger
f5bf4730e4 Changes to support CI testing
When we begin using CI testing, we will want to support installation
of specific revisions which ultimately means Bifrost's installation
process needs to support a slightly different path.

Adds a setting, ci_testing, which is normally set to false.

This setting skips retreval of the files for Ironic, ironicclient,
and shade so any CI prepatory can just leave the appropriate files
in /opt/stack/.
2015-04-17 10:06:51 -04:00
Julia Kreger
20358c43e2 Additional minor cleanup
Changed a tar command to the ansible unarchive module and removed
local_action from a copy command that appears in ansible-lint
reporting.

As for the copy command, The copy command it's self does not work
with our specific use case, so we will continue to use command to
directly invoke cp.
2015-04-16 19:29:53 -04:00
Julia Kreger
b58694dfd9 minor whitespace cleanups 2015-04-16 18:14:37 -04:00
Julia Kreger
7e73a70aa9 Cleanup of role definitions
Cleaned up role definitions to remove cases where whitespace was
tailing at the end of the line.
2015-04-16 18:05:28 -04:00
Julia Kreger
dd9adc70b3 Wrap long line in os_ironic_node module 2015-04-16 17:22:50 -04:00
Julia Kreger
f356e4c143 Add a TODO file
Put in place a basic TODO file to indicate/document short term plans
and potential long term ideas.
2015-04-16 16:54:58 -04:00
Julia Kreger
e6428523c2 README updates to represent repository changes 2015-04-16 16:50:18 -04:00
Julia Kreger
1c486131cd Add playbook to remove deployment images from the system
In the event of redeployments on installations that have been
in-place for some time, it may be necessary to clean the
master_images folder along with the deployment kernel and
ramdisk to ensure that fresh images are downloaded during
the next installation.

Updated troubleshooting documentation to mention availability of
the playbook and the potential case when it may be needed.
2015-04-16 16:21:00 -04:00
Julia Kreger
ca80ab82a7 Adding LICENSE file 2015-04-16 15:58:23 -04:00
Julia Kreger
7615939bf1 Move env-setup to /scripts and add test script
Created and moved scripts into a scripts folder to keep things tidy.

Added a basic test script which invokes env-setup.sh, loads the
Ansible environment, and then initiates the test playbook.
2015-04-16 15:57:49 -04:00
Julia Kreger
f18c26a9b3 Rearranging the repository
Moved Ansible specific elements to playbooks/
2015-04-16 15:22:30 -04:00
Julia Kreger
b1073908fc Switch install script over to Ansible devel branch
Switch over to Ansible devel branch due to the incompatible changes
between 1.9 and current development, as our ansible modules are
updated to support the newer code.

NOTE: This results in Bifrost being incompatible with Ansible 1.9.
2015-04-16 15:03:14 -04:00
Julia Kreger
062c4b3673 Switch to shade master branch
The modules included require shade as it exists on its master branch
and as such we need to switch to installing that version of shade.
2015-04-16 15:00:43 -04:00
Julia Kreger
ea13a9c274 Move to locally stored modules
Due to the dependency on os_ironic and os_ironic_node, the modules
have been directly included into the repository so they will track
with Bifrost.
2015-04-16 14:56:11 -04:00
Julia Kreger
bcd4c98fd7 Changing Ansible Playbook definitions to use auth_type
Due to a change between Ansible stable-1.9 and current devel branch
for 2.0, a change landed that removed auth_plugin from the OpenStack
arguments list.  Instead, now auth_type is utilized.
2015-04-16 08:52:07 -04:00
Julia Kreger
ce3a52d243 Explicitly disable cleaning mode
Cleaning mode is now a default in Ironic.  We need to explicitly
disable it.
2015-04-16 08:49:16 -04:00
Julia Kreger
4a46529313 Forcing published ansible modules to be downloaded 2015-04-14 15:35:18 -04:00
Julia Kreger
13a42936b0 Merge branch 'master' of https://github.com/juliakreger/bifrost 2015-04-14 15:24:25 -04:00
Julia Kreger
e48cc64cfd Lock shade library version to 0.5.0
Due to a number of issues, we're locking the version of shade
until a portion of the baremetal code in shade can be refactored,
at which point Bifrost will have new Ansible modules which will
leverage the updated Shade code.
2015-04-14 15:18:18 -04:00
Julia Kreger
958ca37f61 Fix invocation of source based ironicclient installation 2015-04-14 15:15:29 -04:00
Julia Kreger
3dc15886e4 Remove temporary ironic patch
Fix for IPMI retry logic has landed and been released in Ironic
Kilo-rc1.
2015-04-14 15:12:41 -04:00
Julia Kreger
a940dff90c Merge pull request #12 from NoBodyCam/master
Clarify password vars and disable cleaning when testing
2015-04-08 13:25:04 -04:00
Chris Krelle
128026c077 Add check for testing to enable cleaning logic
This adds a check to ensure that we are not setting cleaning for
testing installs. Cleaning on vm's is slow and not needed.
2015-04-08 09:03:41 -07:00
Julia Kreger
1cf56e6007 Lock bifrost to Ansible stable-1.9
Ansible devel branch has introduced changes that break Bifrost
and that necessitate retooling of supporting module code.

Until this can be done, we need to stick to ansible 1.9.
2015-04-07 15:45:12 -04:00
Chris Krelle
78d097d120 Clarify password vars in all file
This patch adds comment lines to clarify the difference between ironic_db_password
and mysql_password in the inventory/group_vars/all file.
2015-04-07 11:33:18 -07:00
Julia Kreger
103895d273 Merge pull request #11 from NoBodyCam/master
Updates based on my initial testing of biFrost
2015-04-07 12:46:04 -04:00
Chris Krelle
fedbad1a44 Updates based on my initial testing of biFrost
This addes a check of an existing /opt/stack folder. It sets the
execute bit on the env-setup-sh file and updates the README file
based on some findings from my initial tests.
2015-04-07 09:41:30 -07:00
Julia Kreger
78fe891d2c Partial revert of e16bdf274c05c3553542a3137569bf8ecdd608cc
Reverting dependency changes as Ansible's de-duplication logic only
prevents one role from invoking another role via a dependency once.
2015-04-01 20:43:27 -04:00
Julia Kreger
96a003851b Change public key loading to allow a user to define a key
Moved the public key loading to a separate file so a user can
define a key if so desired.
2015-04-01 20:15:02 -04:00