|
Clement Verna |
5434db |
"""Add ci_job attribute to the hook_pagure_ci table
|
|
Clement Verna |
5434db |
|
|
Clement Verna |
5434db |
Revision ID: e18d5b78d782
|
|
Clement Verna |
5434db |
Revises: 22fb5256f555
|
|
Clement Verna |
5434db |
Create Date: 2018-03-16 11:51:04.613420
|
|
Clement Verna |
5434db |
|
|
Clement Verna |
5434db |
"""
|
|
Clement Verna |
5434db |
|
|
Clement Verna |
5434db |
# revision identifiers, used by Alembic.
|
|
Clement Verna |
5434db |
revision = 'e18d5b78d782'
|
|
Clement Verna |
5434db |
down_revision = '22fb5256f555'
|
|
Clement Verna |
5434db |
|
|
Clement Verna |
5434db |
from alembic import op
|
|
Clement Verna |
5434db |
import sqlalchemy as sa
|
|
Clement Verna |
5434db |
|
|
Clement Verna |
5434db |
|
|
Clement Verna |
5434db |
def upgrade():
|
|
Clement Verna |
5434db |
''' Add ci_job column to projects table'''
|
|
Clement Verna |
5434db |
op.add_column(
|
|
Clement Verna |
5434db |
'hook_pagure_ci',
|
|
Clement Verna |
5434db |
sa.Column('ci_job', sa.String(255), nullable=True, unique=False)
|
|
Clement Verna |
5434db |
)
|
|
Clement Verna |
5434db |
|
|
Clement Verna |
a2657d |
con = op.get_bind()
|
|
Clement Verna |
a2657d |
results = con.execute('SELECT id, ci_url FROM hook_pagure_ci')
|
|
Clement Verna |
a2657d |
|
|
Clement Verna |
a2657d |
for id, url in results:
|
|
Clement Verna |
a2657d |
ci_job = url.split('/job/', 1)[1].split('/', 1)[0]
|
|
Clement Verna |
a2657d |
ci_url = url.split('/job/')[0]
|
|
Clement Verna |
a2657d |
op.execute(
|
|
Clement Verna |
a2657d |
"UPDATE hook_pagure_ci SET ci_job='{}' WHERE id = '{}'".format(ci_job, id))
|
|
Clement Verna |
a2657d |
op.execute(
|
|
Clement Verna |
a2657d |
"UPDATE hook_pagure_ci SET ci_url='{}' WHERE id = '{}'".format(ci_url, id))
|
|
Clement Verna |
a2657d |
|
|
Clement Verna |
a2657d |
op.alter_column(
|
|
Clement Verna |
a2657d |
'hook_pagure_ci', 'ci_job',
|
|
Clement Verna |
a2657d |
nullable=False, existing_nullable=True)
|
|
Clement Verna |
a2657d |
|
|
Clement Verna |
5434db |
|
|
Clement Verna |
5434db |
def downgrade():
|
|
Clement Verna |
5434db |
''' Revert the ci_job column added'''
|
|
Clement Verna |
a2657d |
|
|
Clement Verna |
a2657d |
con = op.get_bind()
|
|
Clement Verna |
a2657d |
results = con.execute('SELECT id, ci_url, ci_job FROM hook_pagure_ci')
|
|
Clement Verna |
a2657d |
|
|
Clement Verna |
a2657d |
for id, url, job in results:
|
|
Clement Verna |
a2657d |
ci_url = url + '/job/' + job + '/'
|
|
Clement Verna |
a2657d |
op.execute(
|
|
Clement Verna |
a2657d |
"UPDATE hook_pagure_ci SET ci_url='{}' WHERE id = '{}'".format(ci_url, id))
|
|
Clement Verna |
a2657d |
|
|
Clement Verna |
5434db |
op.drop_column('hook_pagure_ci', 'ci_job')
|