integration/packaging.git
8 years agoAdd Beryllium RC1 ERP RPM 62/33862/1
Daniel Farrell [Mon, 1 Feb 2016 17:43:31 +0000 (12:43 -0500)]
Add Beryllium RC1 ERP RPM

Change-Id: Ice3ab3ec534857445c0a0c7509e8ba272f0709f3
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
8 years agoUpdate Li SR3 RPM to handle upgrade cleanly 16/33516/1
Daniel Farrell [Mon, 25 Jan 2016 23:03:39 +0000 (18:03 -0500)]
Update Li SR3 RPM to handle upgrade cleanly

OPNFV found a bug where the RPM didn't upgrade properly. The

/opt/opendaylight

directory wasn't being layed down by the newer RPM. The updated
.spec file's postrun logic seems to fix the issue.

Change-Id: I2bb0116d9e2217e0753502bbfb04ec345a12df38
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
8 years agoUpdate Be ERP RPM to handle upgrade cleanly 87/33387/3
Daniel Farrell [Fri, 22 Jan 2016 21:48:39 +0000 (16:48 -0500)]
Update Be ERP RPM to handle upgrade cleanly

OPNFV found a bug where the RPM didn't upgrade properly. The

/opt/opendaylight

directory wasn't being layed down by the newer RPM. This fix,
via Dan Radez, seems to fix it.

Change-Id: I0b871a0723dd1249ccb248622ae0cc3aab1aa369
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
8 years agoAdd repo config for (future) ODL Be release RPM 48/33148/2
Daniel Farrell [Wed, 20 Jan 2016 19:53:54 +0000 (14:53 -0500)]
Add repo config for (future) ODL Be release RPM

This repo config will be used for installing ODL Beryllium, once it's
released. OPNFV's installer and testing projects, as well as ODL
projects like the Ansible role and vagrant-opendaylight, curl down these
example files for use. Adding this before the release allows integration
work to happen in advance. Once the Be RPM is built and tagged to the
nfv7-opendaylight-40-release destination tag, the repo pointed to by
this config will be built and installs will start working.

Change-Id: I13cf676141c1c3e2caf6d605814f4f7aa9db4cb1
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
8 years agoAdd 3.3.0-1 and 4.0.0-1.201512150335 RPM specs 46/33146/2
Daniel Farrell [Wed, 20 Jan 2016 19:43:12 +0000 (14:43 -0500)]
Add 3.3.0-1 and 4.0.0-1.201512150335 RPM specs

These were logically created after the build_vars changes that defined
their RPMs, but I neglected to copy the spec files back from the build
Vagrant box and commit them with the RPM build definition changes.

31376 logically added 4.0.0-1.201512150335
31221 logically added 3.3.0-1

They are auto-generated via ./spec/build_specs.py, but imho they should
explicitly exist in the repo as well (clarity, docs, easy sharing, etc).

Change-Id: Iebfbf778998b2ca65d358a2c00e80ad3ebad3e31
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
8 years agoAdd ODL 4.0.0-1.201601200134 RPM build definition 35/33135/1
Daniel Farrell [Wed, 20 Jan 2016 17:27:59 +0000 (12:27 -0500)]
Add ODL 4.0.0-1.201601200134 RPM build definition

This is meant for consumption by OPNFV's testing projects.

Change-Id: Icebcb52942870f70bfcce64d889d9a83fe5604d2
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
8 years agoUse strings for all RPM version variables 17/33117/1
Daniel Farrell [Wed, 20 Jan 2016 17:03:34 +0000 (12:03 -0500)]
Use strings for all RPM version variables

The new Be ERP rpm_version values of the format

<rpm_release>.<ERP date version>

Broke the `-v` param's int expectations, so that argparse option was
removed. Params to build.py then become strings by default. The
build_vars configuration used unquoted numbers for version values, which
were being read in as ints, causing the comparison between version
values passed to the script and those read in from build_vars to fail
based on type differences. Quotes were added to the data to specify
explicitly that version vars should be treated as strings.

Change-Id: I8b20edc7a26db793d084b9b0899c5e5138af4ab9
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
8 years agoAdd ODL RPM repo cfgs for new CentOS CBS setup 17/32517/2
Daniel Farrell [Wed, 13 Jan 2016 17:23:17 +0000 (12:23 -0500)]
Add ODL RPM repo cfgs for new CentOS CBS setup

As described in the bug linked below, the set of Koji destination tags
used by the CentOS NFV SIG for ODL RPMs has been refactored. These new
repo configs make use of the new set of destination tags to provide
access to all current major releases and SRs.

https://bugs.centos.org/view.php?id=9889

Change-Id: Ib8cee6b1ed77223be954402bd34ec043d7ea2d6b
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
8 years agoAdd ODL 4.0.0-20151215033 RPM build definition 76/31376/1
Daniel Farrell [Tue, 15 Dec 2015 22:35:41 +0000 (17:35 -0500)]
Add ODL 4.0.0-20151215033 RPM build definition

Makes minor tweaks to the build logic to add support for building
"Experimental Release Preview" RPMs for pre-release testing.

Adds the build configuration required for building from a pre-release
candidate build of OpenDaylight Beryllium.

This is meant for consumption by OPNFV's testing projects.

Change-Id: I26fd79748b6ffcbc722b0e169cdef38a291da2b9
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
8 years agoUpdate RPM build Vagrant env to official Cent7 20/31220/2
Daniel Farrell [Fri, 11 Dec 2015 21:27:05 +0000 (16:27 -0500)]
Update RPM build Vagrant env to official Cent7

Use official (latest) CentOS 7 Vagrant base box for the RPM building
Vagrant environment.

Make box more robust by just using rsync vs NFS for sync.

Allocate more RAM to prevent ODL OOM errors.

Change-Id: I37b5a89af3b7617425075fea17a73e4447a0cab9
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
8 years agoAdd ODL Lithium SR3 RPM build definition 21/31221/1
Daniel Farrell [Fri, 11 Dec 2015 21:30:11 +0000 (16:30 -0500)]
Add ODL Lithium SR3 RPM build definition

Change-Id: Ic2774febb676cbf6a8fdd623700b5d1603214b02
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
8 years agoFix minor spelling mistakes in RPM build logic 09/30009/1
Daniel Farrell [Fri, 20 Nov 2015 19:53:29 +0000 (14:53 -0500)]
Fix minor spelling mistakes in RPM build logic

Change-Id: I334599d4d3b2b8c131bf17488f4654fdf55fcf7a
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
8 years agoRename Markdown files .md -> .markdown 79/29879/1
Daniel Farrell [Wed, 18 Nov 2015 18:34:31 +0000 (13:34 -0500)]
Rename Markdown files .md -> .markdown

Per int/pack committter vote on integration-dev, move to .markdown for
all Markdown-formated documentation.

lists.opendaylight.org/pipermail/integration-dev/2015-November/005113.html

Change-Id: Ic24d557e42b0d8afd8dc587bf335bcea28757081
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
8 years agoAdd tox config for running flake8 tests 59/29359/3
Daniel Farrell [Fri, 6 Nov 2015 01:22:40 +0000 (20:22 -0500)]
Add tox config for running flake8 tests

This tox configuration file describes how to run flake8, a Python style
checker, against the repository. This will be used for automated verify
jobs.

The config for flake8 includes a 100 char line limit, which is less
strict than PEP8's original 80 but within the 80-100 updated limit.

https://www.python.org/dev/peps/pep-0008/#maximum-line-length

All other PEP8 checks are kept as-is. Additional flake8 config is
focused on providing helpful log output.

Change-Id: I1bd75203966f3713021e00bc3f5d8e17952e123a
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
8 years agoAdd ODL Puppet module as a submodule 71/29571/2
Daniel Farrell [Wed, 11 Nov 2015 23:21:55 +0000 (18:21 -0500)]
Add ODL Puppet module as a submodule

Create a TLD to store ODL-related Puppet modules, starting with the
mostly-official one used by OPNFV et al to consume ODL. Other community
modules can be added in the future, either directly or via submodules.

If/once the ODL Forge exists, I hope to migrate the puppet-odl Puppet
mod to it, at which point we'd change the submodule pointer here to
point at that more-official repo.

Config management tools like Puppet are in-scope for Int/Pack.

wiki.opendaylight.org/view/Project_Proposals:Integration_Packaging#Scope

Change-Id: I32f613f7c469ab50e01dbdfbd630994c211d322a
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
8 years agoUse full, more standard Markdown file extension 72/28972/1
Daniel Farrell [Thu, 29 Oct 2015 18:13:35 +0000 (14:13 -0400)]
Use full, more standard Markdown file extension

The creator of Markdown, John Gruber, recommends .markdown.

http://daringfireball.net/linked/2014/01/08/markdown-extension

Also, .md is used by GCC as a "machine description" file.

http://superuser.com/a/285878/222446

Change-Id: I9542683f496d9c9e0c6146c315146ae51833f223
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
8 years agoAdd Lithium SR2 RPM build definition 07/28807/2
Daniel Farrell [Mon, 26 Oct 2015 16:30:24 +0000 (12:30 -0400)]
Add Lithium SR2 RPM build definition

Change-Id: I70a8be03d63e6e7f7c4c8d0cfef54080fd81f145
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
8 years agoUpdate RPM docs for new YAML+Py+JinJa2 build setup 47/28747/5
Daniel Farrell [Fri, 23 Oct 2015 18:37:33 +0000 (14:37 -0400)]
Update RPM docs for new YAML+Py+JinJa2 build setup

Change-Id: I62e81c88b3beaa535898a95024d88421f0792bf5
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
8 years agoRefactor RPM build to use YAML+Py+Jinja2 templates 35/27235/14
Daniel Farrell [Mon, 21 Sep 2015 20:13:37 +0000 (16:13 -0400)]
Refactor RPM build to use YAML+Py+Jinja2 templates

While this is a natural iteration on the RPM building logic, it's nearly
a total re-write of the artifacts that embody that logic, which is why
it's so large. Painful, but necessary for it to actually work at all.

The previous approach used RPM macros, read in from .sh vars files and
passed to the .spec file via rpmbuild, to customize the build per-RPM.

This worked well, but turned out be drastically more complex on a remote
build system like the CentOS CBS. Koji requires the macros to be defined
in a painful way (via a second RPM to install the macro default file).

This method reads build variables from a YAML config file, then uses
Jinja2 templates to create static ODL .spec files for each RPM build.
This moves the variable handling logic to Python, before the RPM's
building logic is invoked, avoiding the need to define macros in Koji.

Change-Id: Id12b32c14cab1df3d1580be9c77e1eca25113094
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
8 years agoMajor update to RPM README's build and CBS docs 27/27227/1
Daniel Farrell [Mon, 21 Sep 2015 16:46:25 +0000 (12:46 -0400)]
Major update to RPM README's build and CBS docs

Update the RPM's README for the recent change to build vars files as the
method of defining RPM builds.

Also add docs about using the CBS to build and distribute official RPMs.

Change-Id: Ic1cb98c18db42d678d9c7c2a2f1048ec5e255369
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
8 years agoIgnore all vim tmp file extensions 06/27206/1
Daniel Farrell [Mon, 21 Sep 2015 13:23:00 +0000 (09:23 -0400)]
Ignore all vim tmp file extensions

After .swp, vim roles over to other .sw* files. Ignore all of them.

Change-Id: I8aeea2f790de2a0c6293bcc3ef7fe987b9dc2cd8
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
8 years agoAdd ODL Lithium SR1 RPM build definition 89/26989/2
Daniel Farrell [Tue, 15 Sep 2015 16:05:33 +0000 (12:05 -0400)]
Add ODL Lithium SR1 RPM build definition

Add a build_vars file to define a Lithium SR1 RPM.

Makes use of the new multi-RPM support added to build.sh and the ODL
spec file to support 2.4, 3.0 and 3.1 builds at the same time.

Change-Id: If4ad8563f4e9c09dfa3f6b246032dc2925824c3a
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
8 years agoAdd ODL Helium SR4 RPM build definition 88/26988/2
Daniel Farrell [Tue, 15 Sep 2015 15:58:56 +0000 (11:58 -0400)]
Add ODL Helium SR4 RPM build definition

Add a build_vars file to define a Helium SR4 RPM.

Makes use of the new multi-RPM support added to build.sh and the ODL
spec file to support both 2.4 and 3.0 builds at the same time.

Change-Id: I2bdfab354eeec580b00e9c0d6db57b9b2d73c285
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
8 years agoAdd ODL systemd unitfile to ODL upstream repo 90/26990/1
Daniel Farrell [Tue, 15 Sep 2015 16:08:42 +0000 (12:08 -0400)]
Add ODL systemd unitfile to ODL upstream repo

A historical remnant of the RPM's development is that the ODL systemd
unitfile packaged into the RPM is hosted in a stand-alone, external
repo.

https://github.com/dfarrell07/opendaylight-systemd

Moving the unitfile to the proper upstream repo is a obvious win.

Once this is committed, the ODL spec file can be updated with a pointer
to the new source artifact and new RPMs can be cut.

Change-Id: I91122050ea076ac3d395bd4c1a92a15d53e7ffe9
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
8 years agoBuild RPMs totally based on external build_vars 32/26932/2
Daniel Farrell [Mon, 14 Sep 2015 20:42:13 +0000 (16:42 -0400)]
Build RPMs totally based on external build_vars

Connect recent refactoring in opendaylight.spec and build.sh to fully
define RPM builds based on external build variable files.

This is necessary for supporting multiple RPM releases at the same time,
like Lithium, Lithium SR1 and Helium SR4.

To add additional RPM builds, we now simply define additional var files.

Change-Id: I7b32041b2e99a51b6823b47a002b9834e022422c
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
8 years agoSupport multi-RPM builds via common var configs 72/26872/2
Daniel Farrell [Fri, 11 Sep 2015 21:08:33 +0000 (17:08 -0400)]
Support multi-RPM builds via common var configs

RPM builds are now defined by build variable config files.

build.sh now accepts a path to the build config you'd like to run, or
defaults to running all build configs defined in the build_vars dir if
no path is given.

The goal here is to support building multiple versions of ODL with the
same version of the codebase. For example, we currently need to be able
to support Helium and Lithium SRs.

Change-Id: Ibe802484e506c21651f61b7210af59469be1231c
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
8 years agoRefactor RPM spec file to support multi versions 50/26750/2
Daniel Farrell [Wed, 9 Sep 2015 22:12:07 +0000 (18:12 -0400)]
Refactor RPM spec file to support multi versions

Extract all version-related information to macros that can be overridden
from outside the spec file. This makes the spec file usable for multiple
versions of ODL RPMs, simply by passing different variables from build
scripts.

Change-Id: Ie4ff490a86f4a691b0db32e3cdadc76d0286af0f
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
8 years agoMerge "Update Vagrant base box of SRPM build env"
Daniel Farrell [Fri, 4 Sep 2015 16:41:50 +0000 (16:41 +0000)]
Merge "Update Vagrant base box of SRPM build env"

8 years agoUpdate Vagrant base box of SRPM build env 83/26483/3
Daniel Farrell [Thu, 3 Sep 2015 21:31:23 +0000 (17:31 -0400)]
Update Vagrant base box of SRPM build env

The chef/centos-7.0 box no longer exists, need to move off it.

boxcutter/centos71 supports 3 providers and is regularly updated.

Change-Id: I7d76fc21e461243c95d75a083acded1090b484ea
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
8 years agoMake build script independent of working dir 86/26486/1
Daniel Farrell [Thu, 3 Sep 2015 21:40:57 +0000 (17:40 -0400)]
Make build script independent of working dir

This was the last part of the helper scripts that had a dependency on
the CWD of the user running the scripts.

`/vagrant/build.sh` now works, vs having to cd and `./build.sh`.

Change-Id: I408bf5d5953260fc5cf5dbb100363526080af9ca
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
8 years agoFix a couple of typos 00/26400/1
Stephen Kitt [Wed, 2 Sep 2015 15:00:07 +0000 (17:00 +0200)]
Fix a couple of typos

Change-Id: I7b6a447a9649b30f95553a2c7ceb8e39ec862644
Signed-off-by: Stephen Kitt <skitt@redhat.com>
8 years agoMerge "Move RPM directory out of old packaging dir"
Jamo Luhrsen [Fri, 28 Aug 2015 05:21:18 +0000 (05:21 +0000)]
Merge "Move RPM directory out of old packaging dir"

8 years agoMerge "Move Packer directory out of old packaging dir"
Jamo Luhrsen [Fri, 28 Aug 2015 05:08:19 +0000 (05:08 +0000)]
Merge "Move Packer directory out of old packaging dir"

8 years agoMove RPM directory out of old packaging dir 31/26131/1
Daniel Farrell [Fri, 28 Aug 2015 01:16:12 +0000 (21:16 -0400)]
Move RPM directory out of old packaging dir

The packaging dir is a legacy from the split, now that we're namespaced
into a different repo we can bump the RPM dir up one level.

Change-Id: I00d071019e03a92ff75fcea76a1edbcf9df1cd71
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
8 years agoMove Packer directory out of old packaging dir 30/26130/1
Daniel Farrell [Fri, 28 Aug 2015 01:13:37 +0000 (21:13 -0400)]
Move Packer directory out of old packaging dir

The packaging dir is a legacy from the split, now that we're namespaced
into a different repo we can bump the Packer dir up one level.

Change-Id: I324123f310df4c60b99b01ad77301bd9cdda13c0
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
8 years agoMove Docker directory out of old packaging dir 29/26129/1
Daniel Farrell [Fri, 28 Aug 2015 01:07:50 +0000 (21:07 -0400)]
Move Docker directory out of old packaging dir

The packaging dir is a legacy from the split, now that we're namespaced
into a different repo we can bump the Docker dir up one level.

Change-Id: I5981352ad80aa86fb30f313ebf82448283fe6b93
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
8 years agoAdd .gitreview for integration/packaging 25/26125/1
Andrew Grimberg [Thu, 27 Aug 2015 23:54:20 +0000 (16:54 -0700)]
Add .gitreview for integration/packaging

Add a .gitreview file for the integration/packaging project after the
split from the base integration

Change-Id: If48b2ded7cf70783776b87107a8be457f52ce035
Signed-off-by: Andrew Grimberg <agrimberg@linuxfoundation.org>
8 years agoUpdated docker image to lithium added centos version.
Marcus G K Williams [Fri, 7 Aug 2015 14:59:44 +0000 (07:59 -0700)]
Updated docker image to lithium added centos version.

Each version has Lithium 0.3.0 and has been placed into sub-folders.

Change-Id: I148bacb68f26a6fbbaff6c7cfe4015a0ec3d65e3
Signed-off-by: Marcus G K Williams <marcus.g.williams@gmail.com>
(cherry picked from commit 67c79760503385744cc9665d5989aeb5b8c12790)

8 years agoAdd Li Docker image, update Vagrant base box to Li
Daniel Farrell [Thu, 2 Jul 2015 18:38:25 +0000 (14:38 -0400)]
Add Li Docker image, update Vagrant base box to Li

Builds/configures ODL Docker images via the same pipeline used by
Packer when creating Vagrant base boxes.

Upgrades the Vagrant base box to Lithium, mostly for free via updates
to the Ansible role.

Starts with a recent, fresh CentOS 7 image, does low-level provisioning
via Kickstart, then Packer scripts, then ODL's Ansible role, which uses
ODL's CBS RPM. The result is post-processed into a Vagrant box and a
Docker image.

I did a bit of a docs update, but I need to revisit Packer's docs in
general and do more.

Change-Id: I123e416573ab079c9350998c4f4deed8d02f7568
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
8 years agoAdd example RPM repo configs and associated docs
Daniel Farrell [Tue, 11 Aug 2015 17:58:50 +0000 (13:58 -0400)]
Add example RPM repo configs and associated docs

See the docs for more details.

Change-Id: Ia496d2266f84de9c34da30502b31124a45fe9fa8
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
8 years agoOverride RPM disttag to el7 for CBS best practices
Daniel Farrell [Tue, 4 Aug 2015 20:11:24 +0000 (16:11 -0400)]
Override RPM disttag to el7 for CBS best practices

The CentOS Community Build System, where we're hosting this
RPM, prefers el7 disttags to el7.centos, mostly for clarity.

Also some minor helper script cleanups, including adding logic for
installing EPEL in connect.sh and removing unnecessary version
info in uninstall.sh.

Change-Id: I1f6b2725b2d4cfb193d577710a83ed1c1a9b0478
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
8 years agoImplement smarter RPM-building artifact caching
Daniel Farrell [Fri, 24 Jul 2015 16:51:21 +0000 (12:51 -0400)]
Implement smarter RPM-building artifact caching

Accept an optional cache path as a param to the RPM build and install
sctips, use those cache paths for all artifacts.

Also removed an some unnecessary software installs and fixed some docs.

Change-Id: I3f83035ca0d81caf3193923a3216856a4e620070
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
8 years agoInclude required disttag in RPM release version
Daniel Farrell [Fri, 17 Jul 2015 17:12:51 +0000 (13:12 -0400)]
Include required disttag in RPM release version

Extract ODL's version in the Nexus URL to a var for easier updates.

We're building RPMs on the CentOS CBS, which uses el-based build
boxes, so use a CentOS Vagrant box for our SRPM build box.

Change-Id: I45aacb53429c3c86f98b7c63d1686faa3c29c45b
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
8 years agoUpgrade ODL RPM from Helium SR3 to Lithium
Daniel Farrell [Tue, 14 Jul 2015 21:30:28 +0000 (17:30 -0400)]
Upgrade ODL RPM from Helium SR3 to Lithium

Also generally refactor RPM building helper scripts and docs.

Change-Id: I0420e823bbdc30ca060fe6693e919f38f57d1a2a
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
9 years agoRefactor Docker README for clarity and formatting
Daniel Farrell [Sun, 14 Jun 2015 17:13:12 +0000 (13:13 -0400)]
Refactor Docker README for clarity and formatting

Added examples of pulling the image from Docker Hub.

Extracted links to end of docs for readability.

Manually wrap lines for readability.

Change-Id: Ie823fed58d3ee99eabc3cdb9775a433be2ef8a47
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
9 years agoRefactor batch of issues with Packer/Vagrant box
Daniel Farrell [Thu, 11 Jun 2015 06:09:36 +0000 (02:09 -0400)]
Refactor batch of issues with Packer/Vagrant box

Use Packer variables to track ODL's version.

Don't require install of ODL Ansible role by user before
Packer build, let Packer manage it (everything should be
tracked in VCS).

Use new CentOS version system and various other minor bug
fixes.

Using a Kludge of ODL's version scheme to hack ODL's
broken versioning scheme into semantic versioning. Vagrant
requires versions of the form X.Y.Z, so we couldn't do
the (ideal) 0.2.3-1 (the last part is *-<package version>).
Since ODL isn't really using the its major version, just
rotating left for now.

Update docs to reflect all changes.

Change-Id: I618fb9b143144dd6019fc44cf9dd66a769df7419
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
9 years agoInstall ODL on Vagrant base box via Packer+Ansible
Daniel Farrell [Tue, 9 Jun 2015 22:13:19 +0000 (18:13 -0400)]
Install ODL on Vagrant base box via Packer+Ansible

Use the ODL Ansible role to install OpenDaylight on
the ODL Vagrant base box via the ansible-local Packer
provisioner.

All documentation updates included.

Attempted to clean up the VM as much as possible, to
minimize the size of the resulting base box. I think
there are still optimizations to be made, but most of
the size is consumed by required things like ODL, Java,
Ansible (for ansible-local) and their dependences.

Change-Id: If11d2308036b44feb5bada86482b7e4413468735
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
9 years agoInstall VBox Additions, fixes Vagrant sync'd dirs
Daniel Farrell [Tue, 9 Jun 2015 03:02:02 +0000 (23:02 -0400)]
Install VBox Additions, fixes Vagrant sync'd dirs

Have Packer's shell provisioner call a script that
installs the packages required by VirtualBox Guest
Additions, install VBox GA, clean up to save space.

Packer now builds a totally functional Vagrant base
box based on the latest CentOS (7.1, or 1503). Need
to use the Ansible role to install OpenDaylight.

Change-Id: Idbbf105522e2f6c34d3bcb30aba2b46258ffa917
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
9 years agoRefactor Packer README, use manually wrapped lines
Daniel Farrell [Tue, 9 Jun 2015 02:44:29 +0000 (22:44 -0400)]
Refactor Packer README, use manually wrapped lines

As Vracko pointed out on the last review that touched
this README, using long lines and allowing an editor
to handle the wrapping doesn't work well in Gerrit.

Markdown will render both versions equivalently.

Change-Id: I1fee059b8066edc585aef7f166c6c3eaa1a21861
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
9 years agoAdd Packer support for building Vagrant base boxes
Daniel Farrell [Fri, 5 Jun 2015 05:28:37 +0000 (01:28 -0400)]
Add Packer support for building Vagrant base boxes

Now able to generate a valid base box that Vagrant
can log into. There's an issue with VBox Guest
Editions that's preventing shared dirs from mounting
properly, but `vagrant up` and `vagrant ssh` both
work.

Trello card tracking this TODO: https://goo.gl/J36ljc

Change-Id: I6bf0338a764256b3c9e378d3a1b17b801621deab
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
9 years agoPacker config to build a CentOS 7 VBox image
Daniel Farrell [Wed, 3 Jun 2015 04:04:27 +0000 (00:04 -0400)]
Packer config to build a CentOS 7 VBox image

This will eventually support building Vagrant base boxes.

https://trello.com/c/OoS1aKaN/150-packaging-create-odl-vagrant-base-box

Change-Id: If850c117555d128dc6347f2e2143a33bc285e759
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
9 years agoIgnore tarballs in RPM building dir
Daniel Farrell [Tue, 26 May 2015 17:37:40 +0000 (13:37 -0400)]
Ignore tarballs in RPM building dir

The build script downloads ODL's release tarball to
Vagrant's home directory, which is hard linked to
the user's local system as the git-tracked dir
with the RPM building Vagrantfile. Anyone that runs
the RPM-building script will benefit from this rule.

Change-Id: I60fa705938d947d8bf55fae8abba3f9e5f191a9d
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
9 years agoFix minor bug in RPM build script cache handling
Daniel Farrell [Tue, 26 May 2015 17:34:25 +0000 (13:34 -0400)]
Fix minor bug in RPM build script cache handling

The release tarball wasn't being curl'd down to the
same location deemed to be the cache path, so it
wasn't used unless the user manually copied it to
the cache path.

Change-Id: Ic4154034d5b43429f3f330e0679c94d8c9ce8d0a
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
9 years agoMerge "Force RPM to use Java 1.7, not newer versions"
Daniel Farrell [Thu, 23 Apr 2015 16:01:25 +0000 (16:01 +0000)]
Merge "Force RPM to use Java 1.7, not newer versions"

9 years agoDelete useless rm options in Dockerfile
Cédric Ollivier [Thu, 23 Apr 2015 10:36:12 +0000 (12:36 +0200)]
Delete useless rm options in Dockerfile

This patch deletes force and recursive options which are not required
to remove an existent file.

Change-Id: Ie8d6781437b33aef6bd832c89edc48a28ea1ffc9
Signed-off-by: Cédric Ollivier <ollivier.cedric@gmail.com>
9 years agoForce RPM to use Java 1.7, not newer versions
Daniel Farrell [Fri, 17 Apr 2015 00:18:20 +0000 (20:18 -0400)]
Force RPM to use Java 1.7, not newer versions

* CentOS now installs 1.8 by default, which breaks ODL
* Bumps RPM version to 0.2.3-2

Change-Id: If9bce5f5eb4a4d5cbfdf7e981a379ffdcb3acc89
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
9 years agoMerge "Update Dockerfile and Docker README for SR3"
Luis Gomez [Tue, 24 Mar 2015 00:59:39 +0000 (00:59 +0000)]
Merge "Update Dockerfile and Docker README for SR3"

9 years agoUpdate Dockerfile and Docker README for SR3
Daniel Farrell [Mon, 23 Mar 2015 22:51:18 +0000 (18:51 -0400)]
Update Dockerfile and Docker README for SR3

Change-Id: Iee7e93208af16f96a6a8010338697cccf95b9b04
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
9 years agoUpdate ODL RPM spec, docs, helper scripts to SR3
Daniel Farrell [Mon, 23 Mar 2015 22:22:31 +0000 (18:22 -0400)]
Update ODL RPM spec, docs, helper scripts to SR3

* Also added an uninstall.sh helper script
* Generally cleaned up the README

Change-Id: I9b765640b800b68c33099c6832fb052cfc876ecd
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
9 years agoMerge "Adding tox files to .gitignore"
Luis Gomez [Wed, 18 Mar 2015 05:43:42 +0000 (05:43 +0000)]
Merge "Adding tox files to .gitignore"

9 years agoAdding tox files to .gitignore
Luis Gomez [Wed, 18 Mar 2015 00:02:40 +0000 (17:02 -0700)]
Adding tox files to .gitignore

Change-Id: I3f34be7c94435a17e0842d784a8fa692a14ce97f
Signed-off-by: Luis Gomez <ecelgp@gmail.com>
9 years agoAdd very basic Vagrantfile for RPM-building env
Daniel Farrell [Mon, 16 Mar 2015 03:35:58 +0000 (23:35 -0400)]
Add very basic Vagrantfile for RPM-building env

* Standard F20 box, but known-to-work with helper scripts
* Add .gitignore with rule for RPMs (built in Vagrantbox)

Change-Id: I1c14fb89207f7613efb0fbd2856cbbab1af62c07
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
9 years agoSmall batch of ODL RPM updates, version to 0.2.2-4
Daniel Farrell [Mon, 16 Mar 2015 03:24:02 +0000 (23:24 -0400)]
Small batch of ODL RPM updates, version to 0.2.2-4

* Bugfix in URL to download ODL systemd .service file
* Don't include ODL version in ODL dir name
* Don't override ODL dir mode, explicitly set unitfile owner:group
* Generic related updates to RPM helper scripts

Change-Id: I3f59793311874f30031a3fda7c24f03498b946a9
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
9 years agoUpdate ODL RPM to Helium SR2
Daniel Farrell [Mon, 2 Feb 2015 18:49:37 +0000 (13:49 -0500)]
Update ODL RPM to Helium SR2

- Makes current RPM version 0.2.2-1
- Includes 0.2.1-6 update, which fixed a home dir-related bug

Change-Id: Id022190a5689a93e4650e6b69010819530bec988
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
9 years agoMove to new Karaf-based RPM
Daniel Farrell [Tue, 27 Jan 2015 19:38:58 +0000 (14:38 -0500)]
Move to new Karaf-based RPM

- Removed everything related to Hydrogen RPM
- Added ODL Karaf RPM .spec file, helper scripts, docs

Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
9 years agoMerge "Set JAVA_HOME before launching karaf inside containers"
Daniel Farrell [Tue, 24 Feb 2015 15:18:27 +0000 (15:18 +0000)]
Merge "Set JAVA_HOME before launching karaf inside containers"

9 years agoSet JAVA_HOME before launching karaf inside containers
Cédric Ollivier [Mon, 23 Feb 2015 10:42:23 +0000 (11:42 +0100)]
Set JAVA_HOME before launching karaf inside containers

This patch sets JAVA_HOME to delete the related warning "results may vary" when
karaf starts.

Change-Id: I2c29fd331076b4d4b0473c9c254c8d1c1af19ffb
Signed-off-by: Cédric Ollivier <ollivier.cedric@gmail.com>
9 years agoChanged Dockerfile to use Helium SR2
Babis Kaidos [Mon, 2 Feb 2015 14:14:57 +0000 (16:14 +0200)]
Changed Dockerfile to use Helium SR2

Change-Id: I3feb0cd806b5ca3d0ae89e5448ab1041684fd6fe
Signed-off-by: Babis Kaidos <ckaidos@intracom-telecom.com>
9 years agoChanged Dockerfile to use 0.2.1-Helium-SR1 instead of 0.2.0-Helium
Charalampos Kaidos [Wed, 3 Dec 2014 18:06:11 +0000 (20:06 +0200)]
Changed Dockerfile to use 0.2.1-Helium-SR1 instead of 0.2.0-Helium

Change-Id: I129b97908f239a5ced78bab23ad4365f8d20736a
Signed-off-by: Charalampos Kaidos <ckaidos@intracom-telecom.com>
9 years agoUpdated Helium Dockerfile to reduce size of image.
Daniel Farrell [Thu, 30 Oct 2014 17:43:31 +0000 (13:43 -0400)]
Updated Helium Dockerfile to reduce size of image.

- Squash a few steps to reduce image size by 229MB.
- Functionality of image is unchanged.
- Slightly better docs in Dockerfile.

Change-Id: I22706b2699d5610a56c091a0f9bf2b88c27a7316
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
9 years agoMerge "Updated Docker packaging for Helium."
Christopher O'Shea [Tue, 28 Oct 2014 19:24:36 +0000 (19:24 +0000)]
Merge "Updated Docker packaging for Helium."

9 years agoUpdated Docker packaging for Helium.
Daniel Farrell [Sat, 18 Oct 2014 01:32:25 +0000 (21:32 -0400)]
Updated Docker packaging for Helium.

- Removed old base/vert/service provider builds
- Created Helium Dockerfile
- Updated README

Change-Id: I5cd60ab5955295d4d31e9ba1cd4f21434ad4e509
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
9 years agoInitial Commit of ODL OpenStack Integration release/helium
Dave Tucker [Thu, 24 Jul 2014 14:03:34 +0000 (15:03 +0100)]
Initial Commit of ODL OpenStack Integration

- Add Vagrantfile for Devstack VMs
- Add Puppet manifests for provisioning the VMs

Change-Id: I099dd25feb2bdeafee6ef360b346cbe10ab9ac00
Signed-off-by: Dave Tucker <dave@dtucker.co.uk>
9 years agoMerge "Switch to new ofplugin"
Luis Gomez [Tue, 8 Jul 2014 00:10:29 +0000 (00:10 +0000)]
Merge "Switch to new ofplugin"

9 years agoSwitch to new ofplugin
Ed Warnicke [Tue, 10 Jun 2014 01:28:25 +0000 (20:28 -0500)]
Switch to new ofplugin

Default is now the new ofplugin
-of13 still works and uses the new ofplugin
-of10 now uses the legacy plugin

Because of the change, bumped version from
0.1.2-SNAPSHOT to 0.2.0-SNAPSHOT

Change-Id: I610de4b8a31bbc926ea6a27029ed1961bab21c9d
Signed-off-by: Ed Warnicke <eaw@cisco.com>
10 years agoMerge "Update buildrpm to include latest project changes."
Sam Hague [Wed, 14 May 2014 00:25:58 +0000 (00:25 +0000)]
Merge "Update buildrpm to include latest project changes."

10 years agoMerge "Add rpmbuild utility scripts."
Sam Hague [Wed, 14 May 2014 00:25:15 +0000 (00:25 +0000)]
Merge "Add rpmbuild utility scripts."

10 years agoUpdate buildrpm to include latest project changes.
Sam Hague [Wed, 14 May 2014 00:19:49 +0000 (20:19 -0400)]
Update buildrpm to include latest project changes.

This commit adds post-hydrogen changes for bgpcep and
lispflowmapping projects.

Also add changes to buildrpm.sh to build from a specific
branch.

Change-Id: Icba5360be510a94bb59a480bbcafe0e9dbf54f27
Signed-off-by: Sam Hague <shague@redhat.com>
10 years agoAdd rpmbuild utility scripts.
Sam Hague [Wed, 14 May 2014 00:16:58 +0000 (20:16 -0400)]
Add rpmbuild utility scripts.

Three scripts are added to help when working with RPMs:
- setbuildrpm.sh: Used to setup an environment to build RPMs.
- odlrepo.sh: Used to setup a local repo with the built RPMs.
- checkint: Used to validate the RPMs against the integration builds.

All the scripts have "-?" text to show the options and usage.

Change-Id: I512d815242463160e8420d23dcf2b2f621c3dfd1
Signed-off-by: Sam Hague <shague@redhat.com>
10 years agoSet default edition for rpm installs to be the Base edition.
Sam Hague [Thu, 13 Feb 2014 21:32:12 +0000 (16:32 -0500)]
Set default edition for rpm installs to be the Base edition.

Change-Id: I695d944b247dd566e838aa6b37c95989ded3b6fd
Signed-off-by: Sam Hague <shague@redhat.com>
10 years agoAdd pom versioning to rpm builds.
Sam Hague [Thu, 13 Feb 2014 03:09:57 +0000 (22:09 -0500)]
Add pom versioning to rpm builds.

- buildrpm.sh will use the version in the pom.xml for each project to
create the version in the spec.
- finished up the bgpcep.spec now that the project builds a distribution.zip.
- added bgpcep to the opendaylight.spec.
- fixed a minor typo in the controller.spec changelog.

Change-Id: I489d47c1b3a700fffae0f373d4f3ff6f4c250a93
Signed-off-by: Sam Hague <shague@redhat.com>
10 years agoMerge "Update POM files after release - fixing topology version"
Luis Gomez [Wed, 12 Feb 2014 05:11:24 +0000 (05:11 +0000)]
Merge "Update POM files after release - fixing topology version"

10 years agoUpdate POM files after release - fixing topology version
Sam Hague [Mon, 10 Feb 2014 20:20:49 +0000 (15:20 -0500)]
Update POM files after release - fixing topology version

Change-Id: Ic358d3e697a7d4fec96ac22008ec5f54d0d56dd3
Signed-off-by: Luis Gomez <luis.gomez@ericsson.com>
10 years agoAdd release tagged support to buildrpm.
Sam Hague [Mon, 10 Feb 2014 20:20:49 +0000 (15:20 -0500)]
Add release tagged support to buildrpm.

Change-Id: Ica969962fbf309fedc2149e94840354325cfeb2b
Signed-off-by: Sam Hague <shague@redhat.com>
10 years agoAdd snmp4sdn, affinity, yangtools and bgpcep to buildrpm.sh.
Sam Hague [Mon, 10 Feb 2014 04:39:59 +0000 (23:39 -0500)]
Add snmp4sdn, affinity, yangtools and bgpcep to buildrpm.sh.

Change-Id: I8b0fc6c9e8c5b2c7219cffa77d50ccbc0ed27174
Signed-off-by: Sam Hague <shague@redhat.com>
10 years agoUpdates to include higher resource limits.
Miroslav Miklus [Mon, 27 Jan 2014 10:10:13 +0000 (11:10 +0100)]
Updates to include higher resource limits.

The default limits may affect deamon use in production environment.
Fix introduce higer limit for max. number of processes (threads) 1024 -> 20480
and higher limit for max. opened file descriptors 1024 -> 30720.

Change-Id: I8b11e7f8bbd498fd9572e4f746c27e1d804a066e
Signed-off-by: Miroslav Miklus <mmiklus@cisco.com>
10 years agoMerge "change opendove.spec to use libevent_devel instead of libevent2_devel"
Sam Hague [Sun, 9 Feb 2014 21:14:10 +0000 (21:14 +0000)]
Merge "change opendove.spec to use libevent_devel instead of libevent2_devel"

10 years agochange opendove.spec to use libevent_devel instead of libevent2_devel
Sam Hague [Sun, 9 Feb 2014 21:11:59 +0000 (16:11 -0500)]
change opendove.spec to use libevent_devel instead of libevent2_devel

- Also fixed some rm calls to be rm -f in case the files do not exist.
- Also fixed soem changelog versions.

Change-Id: I0437f6c800ee804403a33db3d0668ee756e2ce4d
Signed-off-by: Sam Hague <shague@redhat.com>
10 years agoMerge "Add bgpcep to rpm packaging."
Sam Hague [Sun, 9 Feb 2014 19:30:21 +0000 (19:30 +0000)]
Merge "Add bgpcep to rpm packaging."

10 years agoMerge "Add yangtools to rpm packaging. Also remove test artifacts from some packages."
Sam Hague [Sun, 9 Feb 2014 19:29:45 +0000 (19:29 +0000)]
Merge "Add yangtools to rpm packaging. Also remove test artifacts from some packages."

10 years agoMerge "Add affinity to rpm packaging."
Sam Hague [Sun, 9 Feb 2014 19:29:29 +0000 (19:29 +0000)]
Merge "Add affinity to rpm packaging."

10 years agoMerge "Add snmp4sdn to rpm packaging."
Sam Hague [Sun, 9 Feb 2014 19:28:58 +0000 (19:28 +0000)]
Merge "Add snmp4sdn to rpm packaging."

10 years agoAdd bgpcep to rpm packaging.
Sam Hague [Sun, 9 Feb 2014 04:47:16 +0000 (23:47 -0500)]
Add bgpcep to rpm packaging.

This is just a placeholder for bgpcep. The spec file is mostly complete, but
there is an issue in that bgpcep does not keep the artifacts within the build
directory and only pushes them to the maven repo. Thus, the artifacts cannot
be properly packaged. Committing the file so when that issue is fixed the
packaging will be ready.

Change-Id: If87952b94865d783c9b0717524f7a04a78b0628c
Signed-off-by: Sam Hague <shague@redhat.com>
10 years agoAdd yangtools to rpm packaging. Also remove test artifacts from some packages.
Sam Hague [Sun, 9 Feb 2014 04:41:53 +0000 (23:41 -0500)]
Add yangtools to rpm packaging. Also remove test artifacts from some packages.

- Added yangtools.spec to make the yangtools.rpm.
- Modified controller.spec to not package the yangtools. There is still an issue
with the yangtools.thirdparty.(antlr4|extend-lib-osgi) jars still being pulled in
by the controller project. Need to have them moved to the yangtools package.
- Modified opendaylight.spec to include the new yangtools rpm.
- Removed test artifacts from openflowjava and openflowplugin rpms.

Change-Id: I9535bc0b18e68d3a5a8f7940312ce2ebc730e2ba
Signed-off-by: Sam Hague <shague@redhat.com>
10 years agoAdd affinity to rpm packaging.
Sam Hague [Sat, 8 Feb 2014 23:56:21 +0000 (18:56 -0500)]
Add affinity to rpm packaging.

Change-Id: Ie643e4ba09605f0c10fb54be38ca5aaac52355c5
Signed-off-by: Sam Hague <shague@redhat.com>
10 years agoAdd snmp4sdn to rpm packaging.
Sam Hague [Sat, 8 Feb 2014 22:48:25 +0000 (17:48 -0500)]
Add snmp4sdn to rpm packaging.

Change-Id: If4acf1da1fcdc486713a54b24a755fd6ad80da31
Signed-off-by: Sam Hague <shague@redhat.com>
10 years agoTemporary fix to remove OpenDove from RPM builds until libevent2-devel dependency...
Sam Hague [Sun, 2 Feb 2014 05:13:15 +0000 (00:13 -0500)]
Temporary fix to remove OpenDove from RPM builds until libevent2-devel dependency is resolved.

Change-Id: I3afbc5c83e8ec4002e0863c2599831ff0720386f
Signed-off-by: Sam Hague <shague@redhat.com>
10 years agoMerge "Temporary fix to remove OpenDove from RPM builds until libevent2-devel depende...
Sam Hague [Sun, 2 Feb 2014 04:54:58 +0000 (04:54 +0000)]
Merge "Temporary fix to remove OpenDove from RPM builds until libevent2-devel dependency is resolved."

10 years agoTemporary fix to remove OpenDove from RPM builds until libevent2-devel dependency...
Sam Hague [Sun, 2 Feb 2014 04:52:16 +0000 (23:52 -0500)]
Temporary fix to remove OpenDove from RPM builds until libevent2-devel dependency is resolved.

libevent2-devel is not available to f19 so the OpenDove RPM build fails.

Change-Id: I363925c69d4e69f996b3dd93b111c2fbba8907ee
Signed-off-by: Sam Hague <shague@redhat.com>
10 years agoMerge "Add support for different editions"
Sam Hague [Sun, 2 Feb 2014 04:23:46 +0000 (04:23 +0000)]
Merge "Add support for different editions"