swiftonhpss/doc/markdown/openstack_swift_sync.md
Luis Pabon d5ebf36f7e Sync with OpenStack Swift v1.12.0
* Bumped the version of gluster-swift to v1.12.0.
* Added document on how to do a sync

Change-Id: I676e110759b0bce3007a2a38f3b384b4ca9d710d
Signed-off-by: Luis Pabon <lpabon@redhat.com>
Reviewed-on: http://review.gluster.org/6977
Reviewed-by: Prashanth Pai <ppai@redhat.com>
Reviewed-by: Chetan Risbud <crisbud@redhat.com>
Tested-by: Chetan Risbud <crisbud@redhat.com>
2014-02-16 22:08:06 -08:00

1.9 KiB

Syncing Gluster-Swift with Swift

Create a release

Create a release in launchpad.net so that we can place the latest swift source for download. We'll place the source here, and it will allow tox in gluster-swift to download the latest code.

Upload swift release

  • Clone the git swift repo
  • Go to the release tag or just use the latest
  • Type the following to package the swift code:
$ python setup.py sdist
$ ls dist
  • Take the file in the dist directory and upload it to the new release we created it on launchpad.net

Setup Tox

Now that the swift source is availabe on launchpad.net, copy its link location and update tox.ini in gluster-swift with the new link.

Update tests

This part is a little more complicated and now we need to merge the latest tests with ours.

I suggest using a tool called meld to make this work easier.

Files that need to be merged:

  • Update unit tests
$ export SWIFTDIR=../swift
$ meld $SWIFTDIR/tox.ini tox.ini
$ meld $SWIFTDIR/test-requirements.txt tools/test-requires
$ meld $SWIFTDIR/requirements.txt tools/requirements.txt
$ meld $SWIFTDIR/test/unit/proxy/test_servers.py test/unit/proxy/test_server.py
$ cp $SWIFTDIR/test/unit/proxy/controllers/*.py test/unit/proxy/controllers
$ meld $SWIFTDIR/test/unit/__init__.py test/unit/__init__.py
  • Update all the functional tests First check if there are any new files in the swift functional test directory. If there are, copy them over.

  • Remember to git add any new files

  • Now merge the existing ones:

for i in $SWIFTDIR/test/functional/*.py ; do
    meld $i test/functional/`basename $i`
done

Update the version

If needed, update the version now in gluster/swift/__init__.py.

Upload the patch

Upload the patch to Gerrit.

Update the release in launchpad.net

Upload the gluster-swift*.tar.gz built by Jenkins to launchpad.net once the fix has been commited to the main branch.