summaryrefslogtreecommitdiffstats
path: root/vagrant/lib
AgeCommit message (Collapse)AuthorFilesLines
2016-09-20Update doc package dependenciesChris Luke1-2/+2
https://gerrit.fd.io/r/2861 introduces Jinja2 templates. Change-Id: I9f979976292b90f05dbb5ad0b890d2ca067d7578 Signed-off-by: Chris Luke <chrisy@flirble.org>
2016-09-20Enable SSH dead peer detectionC.J. Collier1-0/+5
Change-Id: I26e858e911fb9be2c03603e044459b11bab3b626 Signed-off-by: C.J. Collier <cjcollier@linuxfoundation.org>
2016-09-20Add jobs for deb_dpdkEd Warnicke1-0/+5
Please make sure to create repos: fdio.deb_dpdk_1607.ubuntu.trusty.main fdio.deb_dpdk_1607.ubuntu.xenial.main For the merge job to publish to. Change-Id: I196c85912324c7dfe872d005bd898fa8b340fdca Signed-off-by: Ed Warnicke <eaw@cisco.com>
2016-09-14Write vm.nr_hugepages to persistent mediaC.J. Collier1-1/+3
Contrary to the comment, the code did not persist the vm.nr_hugepages value across reboots Change-Id: I34739800ccb525d725f0a936975a283886969936 Signed-off-by: C.J. Collier <cjcollier@linuxfoundation.org>
2016-09-09Add python-pyparsing and correct versionEd Warnicke1-1/+1
Change-Id: I92185b842e0c3d1789e1d49293bcd831281bb541 Signed-off-by: Ed Warnicke <eaw@cisco.com>
2016-09-08Add zip to allow for vpp-docs job to workEd Warnicke1-0/+3
Change-Id: Ie47108339da67afb9000ef5ac3024d379f490642 Signed-off-by: Ed Warnicke <eaw@cisco.com>
2016-08-05Add indent to the build serversEd Warnicke1-2/+2
Change-Id: I3a55f0c9630fc83beff6c68c4bbf62f74abc495f Signed-off-by: Ed Warnicke <eaw@cisco.com>
2016-07-21Merge "prefetch maven"Andrew Grimberg1-6/+4
2016-07-20prefetch mavenC.J. Collier1-6/+4
* call maven install function * maven install function installs from file in /vagrant Jenkins will be modified to point to this pre-installed maven. This will eliminate many problems caused by an inability to fetch common files. Another solution would be to host a caching proxy within Vexxhost and set the http_proxy and https_proxy environment variables to use this host. Change-Id: I76d1f3c2526b45dbe0fa4b2a17d3e30d434092ce Signed-off-by: C.J. Collier <cjcollier@linuxfoundation.org>
2016-07-20Improvements to re-spin scriptsC.J. Collier2-3/+6
* Skip tasks which have already been completed * correct bugs in variable definition order * Respin::latest_src_age being called with arguments to perl -e to ease interpolation * Writing environment changes to .bashrc instead of .bash_profile Change-Id: I95b07d4ccb510fb5cc0afdefc6b7521f9992463b Signed-off-by: C.J. Collier <cjcollier@linuxfoundation.org>
2016-07-19prefetch mavenC.J. Collier1-0/+12
* install maven at basebuild respin time * jenkins will be modified to point to pre-installed maven * this will eliminate many problems caused by an inability to fetch common files Change-Id: I93032bb08e8ce6ffc50cd89ce4c5f5d080e60726 Signed-off-by: C.J. Collier <cjcollier@linuxfoundation.org>
2016-07-12Improve respin scriptsC.J. Collier2-45/+74
In order to create a new OpenStack basebuild Images, a multi-phase process must be executed. The first phase is to configure the system for use with dynamic language environments. Due to security precautions, We do not currently have the ability to automate the process of respinning a new Image. We have a goal of fully automating the process so that a new Image will be generated on every commit. Until the process is self-hosted, we must manually fetch credentials from the OpenStack provider's web UI in order to make use of the python openstack bindings and to complete the basebuild re-spin process using Vagrant. The more generic portions of the Image are imported once every two to three weeks from upstream distributors. This duration is computed thus: $(perl -I${CI_MGMT}/vagrant/lib -MRespin -e 'Respin::latest_src_age( "${NOW_TS}", "${SRC_TS}" )') | jq .week Once fetched, these qcow2 Images are pushed to OpenStack using glance and labelled as: "$(lsb_release -i) $(lsb_release -r) (YYYYMMDDTHHMMSS) - LF upload" The generated basebuild Images are pushed to OpenStack with glance labelled as: "$(lsb_release -i) $(lsb_release -r) - basebuild - YYYYMMDDTHHMMSS" ==== This patch makes it possible to perform the above multi-phase processes by executing a single script: bash scripts/respin-jcloud-images.sh This script sources a function library from the following file: vagrant/lib/respin-functions.sh Defined in this library are (among others): # Fetch latest image from upstream distributor download_deb_image( $dist, $version, $arch ) download_rh_image( $dist, $version, $arch ) # Fetch latest image from upstream distributor create_deb_image( $dist, $version, $arch ) create_rh_image( $dist, $version, $arch ) # Run Vagrant provisioning on upstream image respin_deb_image( $dist, $version, $arch ) respin_rh_image( $dist, $version, $arch ) The following script initializes vagrant and the following dynamic language environments: * python-virtualenv * pip * setuptools * python-{cinder,glance,keystone,neutron,nova,openstack}client * rbenv * Vagrant * vagrant-openstack-provider * nodejs * jq * local::lib * JSON::XS * DateTime * DateTime::Format::Duration * DateTime::Duration scripts/init-respin-env.sh The following module compares ISO 8601 dates (as included in Image labels) with the current time and prints to STDOUT the count of weeks, days, hours, minutes and seconds in JSON: vagrant/lib/Respin.pm Change-Id: I434cf2882e5e337ae4b55a4a7acb774a62b528b7 Signed-off-by: C.J. Collier <cjcollier@linuxfoundation.org>
2016-06-17Revert "Create script to automate deployment"Ed Warnicke1-1/+0
https://gerrit.fd.io/r/#/c/1606/ This reverts commit afd303bc155a27d1ddccfc8add7d510c731decf5. Change-Id: Ie169e3cad3433953d6f21064ec90b33d6b2dc49a Signed-off-by: Ed Warnicke <eaw@cisco.com>
2016-06-17Create script to automate deploymentC.J. Collier1-0/+1
* as per #24343 * re-factored to use common code from include-raw-vpp-maven-push and maven_push_functions.sh Change-Id: I197c114bcf61b0dd2ea81e2be0505793cf594e49 Signed-off-by: C.J. Collier <cjcollier@linuxfoundation.org>
2016-06-15Simplify READMEC.J. Collier1-3/+13
* configurable options have been moved to environment variables * processes have been simplified * Added a script to bootstrap openstack vagrant environment * Added an example openstack dummy box Vagrantfile Change-Id: I5dd850e9456ad205fe3a655ca9e16a9bb14f32e2 Signed-off-by: C.J. Collier <cjcollier@linuxfoundation.org>
2016-05-20Document the process of re-spinning an imageC.J. Collier3-47/+329
* Document the process of respinning jcloud images in README.txt * Create /scripts/respin-jcloud-images.sh * Create /vagrant/lib/respin-functions.sh * Automate the process of fetching latest base images * Automate the process of creating new "LF upload" snapshots * Automate process of creating jcloud image - Boot fresh VM - run bootstrap.sh - run system_reseal.sh - snapshot re-sealed system * Unable to automate updating jcloud image regex for staging nodes * Correct shasum to sha1sum * Add cloud-initramfs-* to PACKAGES list * Install cloud-init during system reseal Change-Id: Ie70d5f1fdee0e9f06810da6f37bfc710e3e06b8e Signed-off-by: C.J. Collier <cjcollier@linuxfoundation.org>
2016-05-16Correct init script to use sysv on 14.04C.J. Collier2-3/+11
condition wrapped around code Change-Id: I27a426504fe5786e9a45d7145d9c3332b4542860 Signed-off-by: C.J. Collier <cjcollier@linuxfoundation.org>
2016-05-16Add build dependencies for documentationChris Luke2-24/+72
Add doxygen and graphviz to the dependency list. Change-Id: I546b41a7613d8492f4054b3674905f05c504fad3 Signed-off-by: Chris Luke <chrisy@flirble.org> Signed-off-by: C.J. Collier <cjcollier@linuxfoundation.org>
2016-05-16Disable things which may lock /var/lib/dpkg/lockEd Warnicke1-0/+11
The ubuntu1604 verify job has been failing due to locking of /var/lib/dpkg/lock: https://lists.fd.io/pipermail/vpp-dev/2016-May/000992.html This appears to only happen with the first job run against a particular Jenkins slave, and upon using: https://gerrit.fd.io/r/#/c/1121/ to probe it, two candidates emerge: apt.systemd.daily and unattended-upgrades So this patch removes unattended-upgrades and stops/disables apt.systemd.daily via systemd Change-Id: Ic2bc9e4ec54ef1f2d0ab35813c4623a67a43f00a Signed-off-by: Ed Warnicke <eaw@cisco.com>
2016-05-12Enable Serial ConsoleC.J. Collier1-0/+10
This patch will allow access to the bootloader and kernel boot messages for debugging and maintenance * add function deb_enable_serial_console to bootstrap-functions.sh * call deb_enable_serial_console from bootstrap.sh Change-Id: Ia79881a91ab4d10b1f5ed6deb3a43a7a4d037fa5 Signed-off-by: C.J. Collier <cjcollier@linuxfoundation.org>
2016-05-05Re-factor vagrant bootstrapC.J. Adams-Collier1-0/+183
* created new file to hold functions * moved sections of bootstrap in to functions * called functions from case statement block * integrate changes from Andrew Grimberg <agrimberg@linuxfoundation.org> (change 994) * integrate changes from Ed Warnicke <eaw@cisco.com> (change 996) * update debian package list after installing PPA * synchronized redhat package list with VPP Makefile Change-Id: I3d005c0fe01211c78c8b120b266964d873ee25b7 Signed-off-by: C.J. Adams-Collier <cjac@colliertech.org>
2016-05-04Cleanup vagrantAndrew Grimberg1-18/+5
* Cleanup the Vagrantfile of unneeded cruft * Cleanup the boostrap to be a bit more quiet and also give context as to what it's doing * Make sure that the reseal has a sync / sleep Change-Id: Ia1aa4e30b7a6342689c6fce30a18db1f52d27182 Signed-off-by: Andrew Grimberg <agrimberg@linuxfoundation.org>
2015-11-24Initial build environment vagrant configurationAndrew Grimberg1-0/+44
This is the initial load in of the Vagrantfile used to create the build environment for Jenkins. More work should be done to break apart the current inline shell script with external scripts so that it will be easier to pick and choose what is to be run and that way the community can share a single script Change-Id: Ied7f9e29c4f20628aff3eae29335ad13f385139f Signed-off-by: Andrew Grimberg <agrimberg@linuxfoundation.org>