summaryrefslogtreecommitdiffstats
path: root/fuel
AgeCommit message (Collapse)AuthorFilesLines
2015-04-28Auto deploy prototype #2Stefan K. Berg62-826/+3695
This is an evolvement of the libvirt deployer to make it fully general, and it also add the concept of Deploy Environment Adapter (dea), Deploy Hardware Adapter (dha) and a hardware adapter plugin. See the README.rst file for an introduction of how to start experimenting with this concept in a libvirt setting. Highlights: - Can "xerox" an existing Fuel deploy - Separates configuration for the deployment (DEA) and the configuration for the hardware (DHA) - Introduces an API to be implemented by hardware adapters (a libvirt example adapter is included) - Provides a verification tool "verify_dha.sh" to validate DHA adapters against the DHA API. See the TODO.txt file for things that can be worked on. JIRA Change-Id: I98ff665e6b63c6c3bc42bb6b65c1d2151359e374 Signed-off-by: Stefan K. Berg <stefan.k.berg@ericsson.com>
2015-04-28Automatic DeploymentSzilard Cserey46-666/+3228
- node discovery - refactoring to support multiple shelves - configure nodes and interfaces - provisioning - deployment - extending with autodeployment scripts from libvirt prototype JIRA: [BGS-2] Create Fuel deployment scrip Signed-off-by: Szilard Cserey <szilard.cserey@ericsson.com> Change-Id: Ic48f93594914d5bef6c9de34d87434c7cd567198
2015-04-27Fix CentOS HA deploymentMichal Skalski1-6/+0
Do not run docker daemon during deployment. It can lead to haproxy resource timeout and rabbitmq connectivity issues. Change-Id: I49abc9d9c3b7ac954fe308f113f36c64d236ceb5 JIRA: BGS-36 Signed-off-by: Michal Skalski <mskalski@mirantis.com>
2015-04-23Fuel documentation ready for reviewJonas Bjurel9-133/+283
JIRA: Change-Id: Icaa2decbd82a3a857141a127d9f536474f478901 Signed-off-by: Jonas Bjurel <jonas.bjurel@ericsson.com>
2015-04-21Allow deployment on Centos 6.5 environmentMichal Skalski3-46/+78
Modify Fuel@OPNFV puppet manifest to allow deployment on CentOS 6.5 environment. Add installation of docker-io centos package on controller nodes. Change-Id: I76cdd086607f279f46d827558c878b7be0d8314f JIRA: BGS-36 Signed-off-by: Michal Skalski <mskalski@mirantis.com>
2015-04-19Merge "Correction of the auto-kill during deploy"Stefan K. Berg1-4/+9
2015-04-18Correction of the auto-kill during deployStefan K. Berg1-4/+9
Jenkins gets stuck until the safety-catch timer expires after three hours when the deploy is successfull. The result code is still correct, but it's an unnecessary delay. JIRA Change-Id: I4fae6b019174744894e223ccfd4502acece95768 Signed-off-by: Stefan K. Berg <stefan.k.berg@ericsson.com>
2015-04-16Fix debootstrap packageMichal Skalski8-2/+182
This commit provide scripts to patch debootstrap package. This should fix problems that can occur during ubuntu 12.04 installation. More detail can be found here: * https://bugs.launchpad.net/ubuntu/+source/debootstrap/+bug/1001131 * https://wiki.debian.org/DebianInstaller/Modify/CD#Workaround_bug_in_deboostrap Change-Id: I881191a37ba22d336c61623ae506f7e75dcc7540 JIRA: Signed-off-by: Michal Skalski <mskalski@mirantis.com>
2015-04-16Correction of verification phase in deployStefan K. Berg1-5/+7
The finishing verification failed to correctly identify good deploys as such. JIRA Change-Id: I193d5cad977c3d004c8825036fa6fa375268de0b Signed-off-by: Stefan K. Berg <stefan.k.berg@ericsson.com>
2015-04-16Prototype of automated libvirt installationStefan K. Berg33-0/+2778
This is a prototype to experiment with the DEA concept and how to use it to automatically deploy a KVM environment using libvirt. It is now possible to perform a fully automated deploy from an ISO file. Highlights: - Fully automated Fuel deploy installing three controllers, two computes in full HA mode including Ceilometer - create_dea.sh will create a DEA YAML file with an existing deployment as template. - The install will configure settings, networks and the interface config of all nodes. JIRA: Change-Id: Icc8922afca8508c9062aa5be95e2482086a4f624 Signed-off-by: Stefan K. Berg <stefan.k.berg@ericsson.com>
2015-04-16Fuel installation instruction doc for Arno RC2, 75% done for RC3.Jonas Bjurel3-328/+283
Fuel release notes for Arno RC2 JIRA: Change-Id: I5d9078d7665350565727098d5648ef2982b885c9 Signed-off-by: Jonas Bjurel <jonas.bjurel@ericsson.com>
2015-04-16Fuel@OPNFV rebase due to upstrem changesJonas Bjurel2-30/+0
JIRA: Change-Id: I9864f16d2be725f7d48f4268a3886aa65410293a Signed-off-by: Jonas Bjurel <jonas.bjurel@ericsson.com>
2015-04-14Initial rearrangements for the OPNFV/opnfvdoc documentation structure ↵Jonas Bjurel11-42/+482
including LOW level READMEs, LICENCEs, and TODOs. JIRA: Change-Id: Ifd2baa5b1db3ae0fb354e39548eb7f9547639581 Signed-off-by: Jonas Bjurel <jonas.bjurel@ericsson.com>
2015-04-13Automatic DeploymentSzilard Cserey12-90/+1061
- configure environment - configure initial settings - configure networking - hardware adapter for HP - fuel VM deployment JIRA: [BGS-2] Create Fuel deployment scrip Change-Id: If305477833c54547efe7e6ebfddafde0ab31ebd2 Signed-off-by: Szilard Cserey <szilard.cserey@ericsson.com>
2015-04-09Changed place for cache tmp storage due to /tmp full in LFJonas Bjurel1-7/+8
Fixed issue with creating tmp dir JIRA: Change-Id: I96e3f88159e09a3148f23cb0fc2969adc9d90c1a Signed-off-by: Jonas Bjurel <jonas.bjurel@ericsson.com>
2015-04-03Merge "Automatic Deployment - Deployment Hardware Adapter - Deployment ↵Frank Brockners5-0/+332
Environment Adapter - Fuel environment cleanup - Fuel environment configuration"
2015-04-02Automatic DeploymentSzilard Cserey5-0/+332
- Deployment Hardware Adapter - Deployment Environment Adapter - Fuel environment cleanup - Fuel environment configuration JIRA: [BGS-2] Create Fuel deployment script Change-Id: Ie8aa6c0817a73c507cb4345bde1e2c904bb5b105 Signed-off-by: Szilard Cserey <szilard.cserey@ericsson.com>
2015-04-02Fix problems during build/deployment processMichal Skalski4-93/+25
If we used 'make all' for build iso, only release section from f_odl_docker Makefile was executed, so odl docker image and docker binary were not created. This patch also try resolve problems which appeared during execution of start_odl_container.sh on controller node: * install and run cgroup-lite to mitigate 'failed to find the cgroup root' error * use proper path to docker image and binary * prevent import of docker image before daemon is not fully initialized * because docker binary is delivered by puppet, we should execute commands against it, not try use system binary which is probably not present on controller node * stop use daemon mode('-d') of 'docker run' if user want to have access to container shell * fix name of start script which is run inside container when daemon mode is used It looks like file 'fuel/build/f_odl_docker/scripts/start_odl_container.sh' is not used and duplicate: 'fuel/build/f_odl_docker/puppet/modules/opnfv/scripts/start_odl_container.sh' JIRA: Change-Id: Ia6064dbacf30902bda557e5d0b631b5f5f207b5e Signed-off-by: Michal Skalski <mskalski@mirantis.com>
2015-03-27--- Fuel build system bug fix ---Jonas Bjurel2-4/+4
- Adding force remove of docker images to avoid non zero returns to CI and disk usage growth - Fixed another bug with caching, disabled cache for odl build from source since we're not currently building ODL from source! READY TO MERGE JIRA: Change-Id: I1478002cbe1574814d2597ffa5ec64b6ed9580b7 Signed-off-by: Jonas Bjurel <jonas.bjurel@ericsson.com>
2015-03-26Fuel build cache handlingJonas Bjurel17-206/+551
- Cache invalidation supported in case cache is outdated compared to upstream. - Fully automated build.sh integration tests added (build.sh -t or build.sh -T) - Rebased to Daniel Smiths's patch-set: genesis refs/changes/71/171/4 - Yet untested, will perform automated integration tests over night! - Updated based on Stefan's comments (no more revs.) - Fixed a bug in f_odl_docker/Makefile - validate-cache target added in f_odl_docker/Makefile JIRA: BGS-1 Change-Id: I9f8f30c2a85fd7bf04dab1b566065e5739d4fcb1 Signed-off-by: Jonas Bjurel <jonas.bjurel@ericsson.com>
2015-03-24TOPIC: ODL DOCKERDaniel Smith45-834/+666
AUTHOR: DANIEL SMITH *** PLEASE MERGE ** UPDATED TO REFLECT INPUT FRMO J. BJUREL - fixed whitespaces - fixed location of .erb file (they should have been in templates - the directory was there just int he wrong spot) - removed opcheck.pp from common opnfv class - Removed Debug from fuel/build/Makefile :) UPDATE: Input from S. Berg and F. Bockners incorporated. Merge required before we can refactor to common puppet manifest directory This patchset delivers the folowing functionality: - implementation of the common/opnfv-puppet structure / move of .pp files and update of f_odl_docker to build / source from there - creation of f_odl_doc subclass - fetch of latest stable release of ODL - fetch of latest docker binary release (TODO: this will be changed in next patchset push) - build of docker container with all needed libs and port exposure for DLUX and OVSDB/ODL with Openstack Integration (OVS Manager) - deployment of both the target odl docker image as well as the docker runtime binary to the control nodes via puppet script. GENERATES: - docker-latest - binary of docker for use on control node - odl_docker_image.tar - a docker container with a ODL controller running DLUX and OVSDB ENABLE / DISABLE: - Comment/Un-comment "SUBDIRS += f_odl_doc in base (fuel/build/) Makefile Breakdown of Update / Edits per File: ===================================== fuel/build/Makefile - Modified include to capture the newly created f_odl_doc directory fuel/build/f_odl_docker/Makefile - Fetches libraries and produces two outputs: docker-latest - binary of docker (actually lxc-docker cause ODL Container is running 12.04 (precise) libraries - i.e java7, tz 12.04, etc) odl_docker_image.tar - this is a docker image defined in ./dockefile/Dockerfile and contains the ODL distro + setup and deployment scripts for runtime on the target control node. fuel/build/f_odl_docker/dockerfile/Dockerfile - This Dockerfile defined the packages for use in the Docker Container that will run ODL with DLUX and OVSDB submodules. It also defines the ports to be exposed to the HOST OS (and thus as well through docker the ODL Controller exists in a private, but routable via but the fuel (10.20.0.0/16) and the tenants public network since docker handles the mapping (see the docker run command in the start_odl_docker.sh script) fuel/build/f_odl_docker/dockerfile/check_feature.sh - Simple expect script that starts up a client and checks that the features are installed (used during visual demo only) TODO - Replace with API call to ODL KARAF to install features (LOOKUP - Dont know how to address Karaf programatically - LOOKUP) fuel/build/f_odl_docker/dockerfile/speak.sh - Expect script called by odl_start_docker.sh once karaf is up to install the features that we need (runtime inside container script) called via ENTRYPOINT in Dockerfile at runtime on control node. fuel/build/f_odl_docker/dockerfile/start_odl_docker.sh - This is the CMD/ENTRYPOINT defined in docker and is what is called from the controller when you start the container (note: This runs inside the conatiner), not to be confused with staring the actual container on the control node). This script fires up Karaf first time, loads DLUX and OVSDB modules and monitors that the container is up. The container itself is started on the control node via /opt/opnfv/start_odl_container.sh which includes the syntax for the port mapping (RANDOM or 1:1). TODO - integrate into controller monitor script to ensure better handling (stop, start, monitor) of docker processes remove expect helper scripts and replace with API/JSON or some other appropriate method to KARAF fuel/build/f_odl_docker/puppet/modules/opnfv/manifests/odl_doc.pp - This puppet manifest defined where the docker binary and docker image should be placed on the target control node. /opt/opnfv/start_odl_container.sh will install docker binary package (if necessary) and load ODL docker image into docker, start the image. This file just ensures placement in /opt/opnfv/odl_docker fuel/build/f_opnfv_puppet/puppet/modules/opnfv/manifests/init.pp (MODIFICATION): - Removed previous includes and updated to have only f_odl_doc added fuel/build/f_odl_doc/scripts/start_odl_container.sh - this is the control script that will start the docker container (to be run on the control node), this is deployed this is deployed to /opt/opnfv on the control node via odl_doc puppet manifest file. JIRA: DEPRECATED: Deleted files are no longer needed due to new implementation of ODL. Change-Id: I26c13cc468a2aba18af78b7a3c78a719033f03e0 Signed-off-by: Daniel Smith <daniel.smith@ericsson.com>
2015-03-17*** FIRST VERSION OF CI BUILD SCRIPT ***Jonas Bjurel12-186/+688
- Provides build cache management to a remote location - Provides automatic cashe repopulation - See /fuel/ci/README - Rebased to master - Bug around cache handling fixed - New option -r introduced to invoke external script/program instead of standard http(s)/fttp get and put, eg. scripts or programs to integrate with dropbox, or similar. The script needs to anheaer to curl argument list. - Stefan Berg's comments implemented - Fatih Degirmenci's comments implemented with one exemption: the revision state .iso naming convention still remains the same - we need to discuss this. With the implementation of Fatih's comments the build.sh argument structure is slightly changed, please see ./build.sh -h TODO: - Further testing - Finalize cache invalidation logic - Make refactoring JIRA: Change-Id: I4efdbdd10f726c0a3229849a63040b6d2702db5c Signed-off-by: Jonas Bjurel <jonas.bjurel@ericsson.com>
2015-03-11Rebase due to Fuel upstream changeStefan K. Berg2-0/+4
An update of the Fuel upstream code requires us to perform the corresponding change in the same file as we are modifying it in the OPNFV context. JIRA: #BGS-16 Change-Id: If3d5a0f1f2e97524f9e4a603cff89bc433226b92 Signed-off-by: Stefan K. Berg <stefan.k.berg@ericsson.com>
2015-03-09Starting point for ODL IntegrationJonas Bjurel133-0/+7030
***CAN BE MERGED*** - ODL build and installation (puppet manifests) including needed dependencies - Modified in accordance with Randy Levensalors comments - Added chmod 4755 /bin/fusermount due to that lately some systems dont install fuseiso withe SUID set for fusermount. Investing ongoing on why and why not consistent. - Rebased with master - ODL disabled in top Make (enable it by uncommenting the odl dirs - Removed white spaces - Hopefully fixed an issue with the docker ubuntu repos, added --no-cache=true to the fuel/docker/Make file. TODO: - Refactor collecting ODL and Java dependencies to one common place - Refactoring top Makefile - Adding CI hooks for build and deploy - Finishing integration plumbing wit Neutron/ML2 and OVS/OVSDB Change-Id: I13dd4d3a72d099316dfaa9f7cd9140781be2397b Signed-off-by: Jonas Bjurel <jonas.bjurel@ericsson.com>
2015-03-01ci: Initial setup of ci treeJoseph Gasparakis2-0/+0
This patch creates some tree structure based on Fatih Deqirmenci's suggestion: genesis ├── common │ ├── manifests │ ├── tools │ └── ci ├── foreman │ ├── tools │ │ └── foo.sh │ └── ci │ ├── deploy.sh │ └── build.sh ├── fuel │ ├── tools │ │ └── foo.sh │ └── ci │ ├── deploy.sh │ └── build.sh └── opensteak ├── tools │ └── foo.sh └── ci ├── deploy.sh └── build.sh So far creating only the deploy and build scripts. Signed-off-by: Joseph Gasparakis <joseph.gasparakis@intel.com>