51 lines
1.6 KiB
Python
Executable file
51 lines
1.6 KiB
Python
Executable file
#!/usr/bin/env python
|
|
|
|
# Copyright (C) 2016 Red Hat
|
|
#
|
|
# This script is free software; you can redistribute it
|
|
# and/or modify it under the terms of the GNU General Public License
|
|
# as published by the Free Software Foundation, either version 3 of
|
|
# the License, or (at your option) any later version.
|
|
#
|
|
# This program is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU General Public License
|
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
#
|
|
# Author(s): Adam Williamson <awilliam@redhat.com>
|
|
|
|
"""Simple script to wipe ARM vmlinuz/initrd if no tests are running.
|
|
Works around https://github.com/os-autoinst/openQA/pull/673
|
|
"""
|
|
|
|
import os
|
|
|
|
from openqa_client.client import OpenQA_Client
|
|
from openqa_client.const import JOB_PENDING_STATES
|
|
|
|
def main():
|
|
"""Main function."""
|
|
client = OpenQA_Client()
|
|
params = {
|
|
'arch': 'arm',
|
|
'state': ','.join(JOB_PENDING_STATES),
|
|
}
|
|
pending = client.openqa_request('GET', 'jobs', params=params)['jobs']
|
|
if pending:
|
|
# Not safe to wipe while jobs are running or scheduled.
|
|
return
|
|
|
|
for _file in ('/var/lib/openqa/share/factory/other/initrd.img',
|
|
'/var/lib/openqa/share/factory/other/vmlinuz'):
|
|
if os.path.isfile(_file):
|
|
os.remove(_file)
|
|
|
|
if __name__ == '__main__':
|
|
try:
|
|
main()
|
|
except KeyboardInterrupt:
|
|
sys.stderr.write("Interrupted, exiting...\n")
|
|
sys.exit(1)
|