Deleted job_deletetag
authorEd Bartosh <eduard.bartosh@intel.com>
Tue, 15 Oct 2013 10:28:18 +0000 (13:28 +0300)
committerEd Bartosh <eduard.bartosh@intel.com>
Tue, 15 Oct 2013 10:28:18 +0000 (13:28 +0300)
The reason is that we don't need to delete any tags. We may need another
job to delete old tags, but we don't need to delete them just because
the change was rejected like job_deletetag does.

Moreover job_deletetag has bugs. It may end up in infinite loop if it
can't force push to git repo. Removing the job automatically fixes this
issue.

Fixes: #1379

Change-Id: I182f8abdaa6f656edc8bb686698fffebbfa41092
Signed-off-by: Ed Bartosh <eduard.bartosh@intel.com>
job_deletetag.py [deleted file]
packaging/jenkins-scripts.spec

diff --git a/job_deletetag.py b/job_deletetag.py
deleted file mode 100755 (executable)
index 2e42622..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-#!/usr/bin/env python
-# vim: ai ts=4 sts=4 et sw=4
-
-"""This script will delete all tags on abandoned commit adapted from
-job_deletetag.sh"""
-
-import os
-import tempfile
-import shutil
-import sys
-
-from common.git import Git, clone_gitproject
-from common.gerrit import Gerrit, get_gerrit_event
-
-from gbp.git.repository import GitRepositoryError
-
-def clone_tmp_git(tmpdir, gerrit_project):
-    """Clone a temp git repo"""
-
-    # clone gerrit project to local dir
-    if not clone_gitproject(
-            gerrit_project, os.path.join(tmpdir, gerrit_project)):
-        exit(-1)
-
-    return Git(os.path.join(tmpdir, gerrit_project))
-
-
-def delete_tags(mygit, revision):
-    """Delete all tags which belongs to the same commit"""
-
-    while 1:
-        try:
-            result = mygit.describe(revision, tags=True, exact_match=True)
-        except GitRepositoryError:
-            break
-        if result:
-            mygit.push(repo='origin', src='', dst=result, force=True)
-            mygit.delete_tag(result)
-
-def main():
-    """The main body"""
-
-    tmpdir = tempfile.mkdtemp(prefix=(os.getenv('WORKSPACE') + '/'))
-    events = get_gerrit_event()
-    gerrit = Gerrit(events['hostname'], events['username'],
-                    events['sshport'], int(os.getenv('GERRIT_SILENT_MODE')))
-    patchs = gerrit.query('change:%s --patch-sets' %
-            events['change_number'])
-
-    if events['event_type'] == 'patchset-created':
-        if events['patchset_number'] != '1':
-            for patch in patchs[0]['patchSets']:
-                if int(patch['number']) == \
-                        int(events['patchset_number'])-1:
-                    delete_tags(clone_tmp_git(tmpdir, \
-                            events['project']), patch['revision'])
-                    break
-        else:
-            print 'Less than 2 patchSets, exit...'
-
-    elif events['event_type'] == 'change-abandoned':
-        mygit = clone_tmp_git(tmpdir, events['project'])
-        for patch in patchs[0]['patchSets']:
-            if int(patch['number']) == len(patchs[0]['patchSets']):
-                delete_tags(mygit, patch['revision'])
-                break
-    else:
-        print 'Nothing to do...'
-
-    shutil.rmtree(tmpdir)
-
-if __name__ == '__main__':
-    sys.exit(main())
index b6bd880..c7dd271 100644 (file)
@@ -79,7 +79,6 @@ cp -r job_*.py common requests %{buildroot}%{destdir}/
 %dir /var/lib/jenkins/
 %dir %{destdir}
 %{destdir}/job_buildcheck_post.py
-%{destdir}/job_deletetag.py
 %{destdir}/job_post_image.py
 %{destdir}/job_local_cache_cleanups.py
 %{destdir}/job_policycheck.py