[copr] master: Add MockChroot model and its realtion to copr (4e21328)
bkabrda at fedoraproject.org
bkabrda at fedoraproject.org
Tue Jan 15 11:05:57 UTC 2013
Repository : http://git.fedorahosted.org/cgit/copr.git
On branch : master
>---------------------------------------------------------------
commit 4e213282c11f8b490054be269b651f67232ef87f
Author: Bohuslav Kabrda <bkabrda at redhat.com>
Date: Mon Jan 14 09:19:33 2013 +0100
Add MockChroot model and its realtion to copr
>---------------------------------------------------------------
coprs_frontend/alembic/versions/2fa80e062525_.py | 40 ++++++++++++++++++++++
coprs_frontend/coprs/models.py | 16 +++++++++
2 files changed, 56 insertions(+), 0 deletions(-)
diff --git a/coprs_frontend/alembic/versions/2fa80e062525_.py b/coprs_frontend/alembic/versions/2fa80e062525_.py
new file mode 100644
index 0000000..b56b134
--- /dev/null
+++ b/coprs_frontend/alembic/versions/2fa80e062525_.py
@@ -0,0 +1,40 @@
+"""empty message
+
+Revision ID: 2fa80e062525
+Revises: 2e30169e58ce
+Create Date: 2013-01-14 09:04:42.768432
+
+"""
+
+# revision identifiers, used by Alembic.
+revision = '2fa80e062525'
+down_revision = '2e30169e58ce'
+
+from alembic import op
+import sqlalchemy as sa
+
+
+def upgrade():
+ ### commands auto generated by Alembic - please adjust! ###
+ op.create_table('mock_chroot',
+ sa.Column('id', sa.Integer(), nullable=False),
+ sa.Column('os_release', sa.String(length=50), nullable=False),
+ sa.Column('os_version', sa.String(length=50), nullable=False),
+ sa.Column('arch', sa.String(length=50), nullable=False),
+ sa.PrimaryKeyConstraint('id')
+ )
+ op.create_table('copr_chroot',
+ sa.Column('mock_chroot_id', sa.Integer(), nullable=False),
+ sa.Column('copr_id', sa.Integer(), nullable=False),
+ sa.ForeignKeyConstraint(['copr_id'], ['copr.id'], ),
+ sa.ForeignKeyConstraint(['mock_chroot_id'], ['mock_chroot.id'], ),
+ sa.PrimaryKeyConstraint('mock_chroot_id', 'copr_id')
+ )
+ ### end Alembic commands ###
+
+
+def downgrade():
+ ### commands auto generated by Alembic - please adjust! ###
+ op.drop_table('copr_chroot')
+ op.drop_table('mock_chroot')
+ ### end Alembic commands ###
diff --git a/coprs_frontend/coprs/models.py b/coprs_frontend/coprs/models.py
index 9393c5c..fa5cc4a 100644
--- a/coprs_frontend/coprs/models.py
+++ b/coprs_frontend/coprs/models.py
@@ -181,3 +181,19 @@ class Build(db.Model, Serializer):
@property
def cancelable(self):
return self.state == 'pending'
+
+class MockChroot(db.Model, Serializer):
+ id = db.Column(db.Integer, primary_key = True)
+ os_release = db.Column(db.String(50), nullable = False) # fedora/epel/...
+ os_version = db.Column(db.String(50), nullable = False) # 18/rawhide/...
+ arch = db.Column(db.String(50), nullable = False) # x86_64/i686/...
+
+ @property
+ def chroot_name(self):
+ return '{0}-{1}-{2}'.format(self.os_release, self.os_version, self.arch)
+
+class CoprChroot(db.Model, Serializer):
+ mock_chroot_id = db.Column(db.Integer, db.ForeignKey('mock_chroot.id'), primary_key = True)
+ mock_chroot = db.relationship('MockChroot', backref = db.backref('coprs'))
+ copr_id = db.Column(db.Integer, db.ForeignKey('copr.id'), primary_key = True)
+ copr = db.relationship('Copr', backref = db.backref('mock_chroots'))
More information about the copr-devel
mailing list