2ccd2c4d96
Also, bumped version of gluster-swift to v1.13.0 Change-Id: I797dc704c9523540cba847b1e8ff3da97b79630c Signed-off-by: Prashanth Pai <ppai@redhat.com> Reviewed-on: http://review.gluster.org/7229 Reviewed-by: Chetan Risbud <crisbud@redhat.com> Reviewed-by: Luis Pabon <lpabon@redhat.com> Tested-by: Luis Pabon <lpabon@redhat.com>
68 lines
2.2 KiB
Markdown
68 lines
2.2 KiB
Markdown
# 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.
|
|
* Alternatively, if we are syncing with a Swift version which is already released, we can get the tar.gz file from Swift launchpad page and upload the same to gluster-swift launchpad.
|
|
|
|
## 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.
|
|
|
|
[meld](http://meldmerge.org/) is a great tool to make this work easier. The 3-way comparison feature of meld comes handy to compare 3 version of same file from:
|
|
|
|
* Latest swift (say v1.13)
|
|
* Previous swift (say v1.12)
|
|
* gluster-swift (v1.12)
|
|
|
|
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.
|
|
|