Linux vacca.o2switch.net 4.18.0-553.123.2.lve.el8.x86_64 #1 SMP Thu May 7 23:17:13 UTC 2026 x86_64
/
opt
/
imunify360
/
venv
/
lib
/
python3.11
/
site-packages
/
imav
/
migrations
/
//opt/imunify360/venv/lib/python3.11/site-packages/imav/migrations/023_create_mrs_upload_queue.py
""" This program 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 <https://www.gnu.org/licenses/>. Copyright © 2019 Cloud Linux Software Inc. This software is also available under ImunifyAV commercial license, see <https://www.imunify360.com/legal/eula> """ import peewee as pw def migrate(migrator, database, fake=False, **kwargs): class MRSUploadItem(pw.Model): class Meta: db_table = "mrs_upload_queue" indexes = ( (("hash", "upload_reason"), True), (("status", "upload_reason", "enqueued_at"), False), (("status", "last_attempt_at"), False), ) id = pw.PrimaryKeyField() hash = pw.CharField(max_length=64, null=False) file_path = pw.TextField(null=False) upload_reason = pw.CharField(max_length=32, null=False) enqueued_at = pw.FloatField(null=False) status = pw.CharField(max_length=16, null=False, default="pending") attempts = pw.IntegerField(default=0) last_error = pw.TextField(null=True) last_attempt_at = pw.FloatField(null=True) migrator.create_model(MRSUploadItem) def rollback(migrator, database, fake=False, **kwargs): MRSUploadItem = migrator.orm["mrs_upload_queue"] migrator.remove_model(MRSUploadItem)