[python-tahrir-api] Add alembic scripts and test suite.

Ralph Bean ralph at fedoraproject.org
Mon Jun 24 02:12:52 UTC 2013


commit 9a3e5b386649deef03937e9f295cbc6f79f2b894
Author: Ralph Bean <rbean at redhat.com>
Date:   Sun Jun 23 22:12:37 2013 -0400

    Add alembic scripts and test suite.

 .gitignore                                         |    1 +
 ...ir-api-Fix-syntax-error-in-alembic-script.patch |   25 +++++++++++++++++++
 python-tahrir-api.spec                             |   26 ++++++++++++++++++-
 sources                                            |    2 +-
 4 files changed, 51 insertions(+), 3 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 6524390..37cca45 100644
--- a/.gitignore
+++ b/.gitignore
@@ -3,3 +3,4 @@
 /tahrir-api-0.1.8.tar.gz
 /tahrir-api-0.2.0.tar.gz
 /tahrir-api-0.2.1.tar.gz
+/tahrir-api-0.2.2.tar.gz
diff --git a/python-tahrir-api-Fix-syntax-error-in-alembic-script.patch b/python-tahrir-api-Fix-syntax-error-in-alembic-script.patch
new file mode 100644
index 0000000..a2d0a12
--- /dev/null
+++ b/python-tahrir-api-Fix-syntax-error-in-alembic-script.patch
@@ -0,0 +1,25 @@
+From 3634d46c1676db977eb5c695def6c1e9af54c338 Mon Sep 17 00:00:00 2001
+From: Ralph Bean <rbean at redhat.com>
+Date: Sun, 23 Jun 2013 21:18:51 -0400
+Subject: [PATCH] Fix syntax error in alembic script.
+
+---
+ alembic/versions/420c02357a1b_add_created_on_field.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/alembic/versions/420c02357a1b_add_created_on_field.py b/alembic/versions/420c02357a1b_add_created_on_field.py
+index 06a8d1c..2c198e1 100644
+--- a/alembic/versions/420c02357a1b_add_created_on_field.py
++++ b/alembic/versions/420c02357a1b_add_created_on_field.py
+@@ -15,7 +15,7 @@ import sqlalchemy as sa
+ 
+ 
+ def upgrade():
+-    op.add_column('badges', sa.Column('created_on', sa.DateTime
++    op.add_column('badges', sa.Column('created_on', sa.DateTime,
+         nullable=False)
+     )
+ 
+-- 
+1.8.1.4
+
diff --git a/python-tahrir-api.spec b/python-tahrir-api.spec
index 727ffe0..90ff619 100644
--- a/python-tahrir-api.spec
+++ b/python-tahrir-api.spec
@@ -1,7 +1,7 @@
 %global modname tahrir_api
 
 Name:             python-tahrir-api
-Version:          0.2.1
+Version:          0.2.2
 Release:          1%{?dist}
 Summary:          An API for interacting with the Tahrir database
 
@@ -9,18 +9,24 @@ Group:            Development/Languages
 License:          GPLv3+
 URL:              http://pypi.python.org/pypi/tahrir-api
 Source0:          http://pypi.python.org/packages/source/t/tahrir-api/tahrir-api-%{version}.tar.gz
+Patch0:           python-tahrir-api-Fix-syntax-error-in-alembic-script.patch
 
 BuildArch:        noarch
 
 BuildRequires:    python2-devel
 BuildRequires:    python-setuptools
+BuildRequires:    python-pygments
+BuildRequires:    python-zope-sqlalchemy
+BuildRequires:    python-simplejson
+BuildRequires:    python-httplib2
 BuildRequires:    python-webob1.2
+BuildRequires:    python-nose
 
 Requires:       python-pygments
 Requires:       python-zope-sqlalchemy
 Requires:       python-simplejson
-Requires:       python-webob1.2
 Requires:       python-httplib2
+Requires:       python-webob1.2
 
 %if 0%{?fedora}
 BuildRequires:  python-mako >= 0.3.6
@@ -56,6 +62,9 @@ the database without having to use the TahrirDatabase class.
 %prep
 %setup -q -n tahrir-api-%{version}
 
+# Fix a syntax error in the first alembic script.
+%patch0 -p1
+
 # Remove upstream egg-info so that it gets rebuilt.
 rm -rf *.egg-info
 awk 'NR==3{print "import __main__; __main__.__requires__ = __requires__ = [\"WebOb>=1.2\", \"sqlalchemy>=0.7\", \"PasteDeploy>=1.5.0\", \"zope.interface>=3.8.0\", \"Mako>=0.3.6\"]; import pkg_resources"}3' setup.py > setup.py.tmp
@@ -69,14 +78,27 @@ mv setup.py.tmp setup.py
 awk 'NR==3{print "import __main__; __main__.__requires__ = __requires__ = [\"WebOb>=1.2\", \"sqlalchemy>=0.7\", \"PasteDeploy>=1.5.0\", \"zope.interface>=3.8.0\", \"Mako>=0.3.6\"]; import pkg_resources"}3' %{buildroot}/%{_bindir}/initialize_tahrir_db > tempfile
 install -p -m755 tempfile %{buildroot}/%{_bindir}/initialize_tahrir_db
 
+# DB upgrade/downgrade scripts
+%{__mkdir_p} %{buildroot}%{_datadir}/%{modname}/
+%{__cp} alembic.ini %{buildroot}%{_datadir}/%{modname}/alembic.ini
+%{__cp} -r alembic/ %{buildroot}%{_datadir}/%{modname}/alembic/
+
+%check
+%{__python} setup.py test
+
 %files
 %doc README.rst LICENSE
 
 %{python_sitelib}/%{modname}
 %{python_sitelib}/%{modname}-%{version}*
+%{_datadir}/%{modname}/
 %{_bindir}/initialize_tahrir_db
 
 %changelog
+* Sun Jun 23 2013 Ralph Bean <rbean at redhat.com> - 0.2.2-1
+- Add alembic upgrade scripts.
+- Add check section with tests.
+
 * Sun Jun 23 2013 Ralph Bean <rbean at redhat.com> - 0.2.1-1
 - Bugfix - stop leaking sqlalchemy sessions.
 - API enhancement - can query for user by username, id, or email now.
diff --git a/sources b/sources
index ca208ba..7d2dfd9 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-034301a435589885fa60304b70c32b34  tahrir-api-0.2.1.tar.gz
+85b4fc13f066bdf6d17dd260d94aa99f  tahrir-api-0.2.2.tar.gz


More information about the scm-commits mailing list