Package entropy :: Package client :: Package services :: Package system :: Module commands

Source Code for Module entropy.client.services.system.commands

  1  # -*- coding: utf-8 -*- 
  2  ''' 
  3      # DESCRIPTION: 
  4      # Entropy Object Oriented Interface 
  5   
  6      Copyright (C) 2007-2009 Fabio Erculiani 
  7   
  8      This program is free software; you can redistribute it and/or modify 
  9      it under the terms of the GNU General Public License as published by 
 10      the Free Software Foundation; either version 2 of the License, or 
 11      (at your option) any later version. 
 12   
 13      This program is distributed in the hope that it will be useful, 
 14      but WITHOUT ANY WARRANTY; without even the implied warranty of 
 15      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the 
 16      GNU General Public License for more details. 
 17   
 18      You should have received a copy of the GNU General Public License 
 19      along with this program; if not, write to the Free Software 
 20      Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA 
 21  ''' 
 22   
 23  from entropy.client.services.ugc.commands import Base 
 24   
 25   
26 -class Client(Base):
27 28 import entropy.dump as dumpTools
29 - def __init__(self, *args, **kwargs):
30 Base.__init__(self, *args, **kwargs)
31
32 - def service_login(self, username, password, session_id):
33 34 cmd = "%s %s %s %s %s" % ( 35 session_id, 36 'login', 37 username, 38 'plain', 39 password, 40 ) 41 return self.do_generic_handler(cmd, session_id)
42
43 - def get_queue(self, session_id, extended):
44 45 cmd = "%s %s %s" % ( 46 session_id, 47 'systemsrv:get_queue', 48 extended, 49 ) 50 return self.do_generic_handler(cmd, session_id)
51
52 - def get_queue_item_by_id(self, session_id, queue_id):
53 54 cmd = "%s %s %d" % ( 55 session_id, 56 'systemsrv:get_queue_item_by_id', 57 queue_id, 58 ) 59 return self.do_generic_handler(cmd, session_id)
60
61 - def get_queue_id_stdout(self, session_id, queue_id, last_bytes):
62 63 cmd = "%s %s %d %d" % ( 64 session_id, 65 'systemsrv:get_queue_id_stdout', 66 queue_id, 67 last_bytes, 68 ) 69 70 # enable zlib compression 71 compression = self.set_gzip_compression(session_id, True) 72 73 rc = self.do_generic_handler(cmd, session_id, compression = compression) 74 75 # disable compression 76 self.set_gzip_compression(session_id, False) 77 78 return rc
79
80 - def get_queue_id_result(self, session_id, queue_id):
81 82 cmd = "%s %s %d" % ( 83 session_id, 84 'systemsrv:get_queue_id_result', 85 queue_id, 86 ) 87 return self.do_generic_handler(cmd, session_id)
88
89 - def remove_queue_ids(self, session_id, queue_ids):
90 91 cmd = "%s %s %s" % ( 92 session_id, 93 'systemsrv:remove_queue_ids', 94 ' '.join([str(x) for x in queue_ids]), 95 ) 96 return self.do_generic_handler(cmd, session_id)
97
98 - def pause_queue(self, session_id, do_pause):
99 100 cmd = "%s %s %s" % ( 101 session_id, 102 'systemsrv:pause_queue', 103 do_pause, 104 ) 105 return self.do_generic_handler(cmd, session_id)
106
107 - def kill_processing_queue_id(self, session_id, queue_id):
108 109 cmd = "%s %s %s" % ( 110 session_id, 111 'systemsrv:kill_processing_queue_id', 112 queue_id, 113 ) 114 return self.do_generic_handler(cmd, session_id)
115
116 - def swap_items_in_queue(self, session_id, queue_id1, queue_id2):
117 118 cmd = "%s %s %d %d" % ( 119 session_id, 120 'systemsrv:swap_items_in_queue', 121 queue_id1, 122 queue_id2, 123 ) 124 return self.do_generic_handler(cmd, session_id)
125
126 - def get_pinboard_data(self, session_id):
127 cmd = "%s %s" % ( 128 session_id, 129 'systemsrv:get_pinboard_data', 130 ) 131 return self.do_generic_handler(cmd, session_id)
132
133 - def add_to_pinboard(self, session_id, note, extended_text):
134 135 mydict = { 136 'note': note, 137 'extended_text': extended_text, 138 } 139 xml_string = self.entropyTools.xml_from_dict(mydict) 140 141 cmd = "%s %s %s" % ( 142 session_id, 143 'systemsrv:add_to_pinboard', 144 xml_string, 145 ) 146 return self.do_generic_handler(cmd, session_id)
147
148 - def remove_from_pinboard(self, session_id, pinboard_ids):
149 150 cmd = "%s %s %s" % ( 151 session_id, 152 'systemsrv:remove_from_pinboard', 153 ' '.join([str(x) for x in pinboard_ids]), 154 ) 155 return self.do_generic_handler(cmd, session_id)
156
157 - def set_pinboard_items_done(self, session_id, pinboard_ids, status):
158 cmd = "%s %s %s %s" % ( 159 session_id, 160 'systemsrv:set_pinboard_items_done', 161 ' '.join([str(x) for x in pinboard_ids]), 162 status, 163 ) 164 return self.do_generic_handler(cmd, session_id)
165
166 - def write_to_running_command_pipe(self, session_id, queue_id, write_to_stdout, txt):
167 cmd = "%s %s %s %s %s" % ( 168 session_id, 169 'systemsrv:write_to_running_command_pipe', 170 queue_id, 171 write_to_stdout, 172 txt, 173 ) 174 return self.do_generic_handler(cmd, session_id)
175
176 -class Repository(Client):
177 178 import entropy.dump as dumpTools 179
180 - def sync_spm(self, session_id):
181 182 cmd = "%s %s" % ( 183 session_id, 184 'srvrepo:sync_spm', 185 ) 186 return self.do_generic_handler(cmd, session_id)
187
188 - def compile_atoms(self, session_id, atoms, pretend = False, oneshot = False, 189 verbose = False, nocolor = True, fetchonly = False, buildonly = False, 190 nodeps = False, custom_use = '', ldflags = '', cflags = ''):
191 192 s_pretend = "0" 193 s_oneshot = "0" 194 s_verbose = "0" 195 s_nocolor = "0" 196 s_fetchonly = "0" 197 s_buildonly = "0" 198 s_nodeps = "0" 199 if pretend: s_pretend = "1" 200 if oneshot: s_oneshot = "1" 201 if verbose: s_verbose = "1" 202 if nocolor: s_nocolor = "1" 203 if fetchonly: s_fetchonly = "1" 204 if buildonly: s_buildonly = "1" 205 if nodeps: s_nodeps = "1" 206 mydict = { 207 'atoms': ' '.join(atoms), 208 'pretend': s_pretend, 209 'oneshot': s_oneshot, 210 'verbose': s_verbose, 211 'nocolor': s_nocolor, 212 'fetchonly': s_fetchonly, 213 'buildonly': s_buildonly, 214 'nodeps': s_nodeps, 215 'custom_use': custom_use, 216 'ldflags': ldflags, 217 'cflags': cflags, 218 } 219 xml_string = self.entropyTools.xml_from_dict(mydict) 220 221 cmd = "%s %s %s" % ( 222 session_id, 223 'srvrepo:compile_atoms', 224 xml_string, 225 ) 226 return self.do_generic_handler(cmd, session_id)
227
228 - def spm_remove_atoms(self, session_id, atoms, pretend = False, verbose = False, nocolor = True):
229 230 s_pretend = "0" 231 s_verbose = "0" 232 s_nocolor = "0" 233 if pretend: s_pretend = "1" 234 if verbose: s_verbose = "1" 235 if nocolor: s_nocolor = "1" 236 mydict = { 237 'atoms': ' '.join(atoms), 238 'pretend': s_pretend, 239 'verbose': s_verbose, 240 'nocolor': s_nocolor, 241 } 242 xml_string = self.entropyTools.xml_from_dict(mydict) 243 244 cmd = "%s %s %s" % ( 245 session_id, 246 'srvrepo:spm_remove_atoms', 247 xml_string, 248 ) 249 return self.do_generic_handler(cmd, session_id)
250
251 - def get_spm_categories_updates(self, session_id, categories):
252 253 cmd = "%s %s %s" % ( 254 session_id, 255 'srvrepo:get_spm_categories_updates', 256 ' '.join(categories), 257 ) 258 return self.do_generic_handler(cmd, session_id)
259
260 - def get_spm_categories_installed(self, session_id, categories):
261 262 cmd = "%s %s %s" % ( 263 session_id, 264 'srvrepo:get_spm_categories_installed', 265 ' '.join(categories), 266 ) 267 return self.do_generic_handler(cmd, session_id)
268
269 - def enable_uses_for_atoms(self, session_id, atoms, useflags):
270 271 mydict = { 272 'atoms': ' '.join(atoms), 273 'useflags': ' '.join(useflags), 274 } 275 xml_string = self.entropyTools.xml_from_dict(mydict) 276 277 cmd = "%s %s %s" % ( 278 session_id, 279 'srvrepo:enable_uses_for_atoms', 280 xml_string, 281 ) 282 return self.do_generic_handler(cmd, session_id)
283
284 - def disable_uses_for_atoms(self, session_id, atoms, useflags):
285 286 mydict = { 287 'atoms': ' '.join(atoms), 288 'useflags': ' '.join(useflags), 289 } 290 xml_string = self.entropyTools.xml_from_dict(mydict) 291 292 cmd = "%s %s %s" % ( 293 session_id, 294 'srvrepo:disable_uses_for_atoms', 295 xml_string, 296 ) 297 return self.do_generic_handler(cmd, session_id)
298
299 - def get_spm_atoms_info(self, session_id, atoms):
300 301 cmd = "%s %s %s" % ( 302 session_id, 303 'srvrepo:get_spm_atoms_info', 304 ' '.join(atoms), 305 ) 306 return self.do_generic_handler(cmd, session_id)
307
308 - def run_spm_info(self, session_id):
309 310 cmd = "%s %s" % ( 311 session_id, 312 'srvrepo:run_spm_info', 313 ) 314 return self.do_generic_handler(cmd, session_id)
315
316 - def run_custom_shell_command(self, session_id, command):
317 318 cmd = "%s %s %s" % ( 319 session_id, 320 'srvrepo:run_custom_shell_command', 321 command, 322 ) 323 return self.do_generic_handler(cmd, session_id)
324
325 - def get_spm_glsa_data(self, session_id, list_type):
326 327 cmd = "%s %s %s" % ( 328 session_id, 329 'srvrepo:get_spm_glsa_data', 330 list_type, 331 ) 332 return self.do_generic_handler(cmd, session_id)
333
334 - def get_available_repositories(self, session_id):
335 336 cmd = "%s %s" % ( 337 session_id, 338 'srvrepo:get_available_repositories', 339 ) 340 return self.do_generic_handler(cmd, session_id)
341
342 - def set_default_repository(self, session_id, repoid):
343 344 cmd = "%s %s %s" % ( 345 session_id, 346 'srvrepo:set_default_repository', 347 repoid, 348 ) 349 return self.do_generic_handler(cmd, session_id)
350
351 - def get_available_entropy_packages(self, session_id, repoid):
352 353 cmd = "%s %s %s" % ( 354 session_id, 355 'srvrepo:get_available_entropy_packages', 356 repoid, 357 ) 358 return self.do_generic_handler(cmd, session_id)
359
360 - def get_entropy_idpackage_information(self, session_id, idpackage, repoid):
361 362 cmd = "%s %s %d %s" % ( 363 session_id, 364 'srvrepo:get_entropy_idpackage_information', 365 idpackage, 366 repoid, 367 ) 368 return self.do_generic_handler(cmd, session_id)
369
370 - def remove_entropy_packages(self, session_id, matched_atoms):
371 cmd = "%s %s %s" % ( 372 session_id, 373 'srvrepo:remove_entropy_packages', 374 ','.join(["%s:%s" % (str(x[0]),str(x[1]),) for x in matched_atoms]), # 1:repoid,2:repoid 375 ) 376 return self.do_generic_handler(cmd, session_id)
377
378 - def search_entropy_packages(self, session_id, search_type, search_string, repoid):
379 380 cmd = "%s %s %s %s %s" % ( 381 session_id, 382 'srvrepo:search_entropy_packages', 383 repoid, 384 search_type, 385 search_string, 386 ) 387 return self.do_generic_handler(cmd, session_id)
388
389 - def move_entropy_packages_to_repository(self, session_id, idpackages, from_repo, to_repo, do_copy):
390 391 cmd = "%s %s %s %s %s %s" % ( 392 session_id, 393 'srvrepo:move_entropy_packages_to_repository', 394 from_repo, 395 to_repo, 396 do_copy, 397 ' '.join([str(x) for x in idpackages]), 398 ) 399 return self.do_generic_handler(cmd, session_id)
400
401 - def scan_entropy_packages_database_changes(self, session_id):
402 403 cmd = "%s %s" % ( 404 session_id, 405 'srvrepo:scan_entropy_packages_database_changes', 406 ) 407 return self.do_generic_handler(cmd, session_id)
408
409 - def run_entropy_database_updates(self, session_id, to_add, to_remove, to_inject):
410 411 cmd = "%s %s %s %s %s" % ( 412 session_id, 413 'srvrepo:run_entropy_database_updates', 414 ','.join(["%s:%s:%s" % (str(x[0]),str(x[1]),str(x[2]),) for x in to_add]), 415 ','.join(["%s:%s" % (str(x[0]),str(x[1]),) for x in to_remove]), 416 ','.join(["%s:%s" % (str(x[0]),str(x[1]),) for x in to_inject]), 417 ) 418 return self.do_generic_handler(cmd, session_id)
419
420 - def run_entropy_dependency_test(self, session_id):
421 422 cmd = "%s %s" % ( 423 session_id, 424 'srvrepo:run_entropy_dependency_test', 425 ) 426 return self.do_generic_handler(cmd, session_id)
427
428 - def run_entropy_library_test(self, session_id):
429 430 cmd = "%s %s" % ( 431 session_id, 432 'srvrepo:run_entropy_library_test', 433 ) 434 return self.do_generic_handler(cmd, session_id)
435
436 - def run_entropy_treeupdates(self, session_id, repoid):
437 438 cmd = "%s %s %s" % ( 439 session_id, 440 'srvrepo:run_entropy_treeupdates', 441 repoid, 442 ) 443 return self.do_generic_handler(cmd, session_id)
444
445 - def scan_entropy_mirror_updates(self, session_id, repositories):
446 447 cmd = "%s %s %s" % ( 448 session_id, 449 'srvrepo:scan_entropy_mirror_updates', 450 ' '.join(repositories), 451 ) 452 return self.do_generic_handler(cmd, session_id)
453
454 - def run_entropy_mirror_updates(self, session_id, repository_data):
455 456 serialized_string = self.dumpTools.serialize_string(repository_data) 457 cmd = "%s %s %s" % ( 458 session_id, 459 'srvrepo:run_entropy_mirror_updates', 460 serialized_string, 461 ) 462 return self.do_generic_handler(cmd, session_id)
463
464 - def run_entropy_checksum_test(self, session_id, repoid, mode):
465 466 cmd = "%s %s %s %s" % ( 467 session_id, 468 'srvrepo:run_entropy_checksum_test', 469 repoid, 470 mode, 471 ) 472 return self.do_generic_handler(cmd, session_id)
473
474 - def get_notice_board(self, session_id, repoid):
475 476 cmd = "%s %s %s" % ( 477 session_id, 478 'srvrepo:get_notice_board', 479 repoid, 480 ) 481 return self.do_generic_handler(cmd, session_id)
482
483 - def remove_notice_board_entries(self, session_id, repoid, entry_ids):
484 485 cmd = "%s %s %s %s" % ( 486 session_id, 487 'srvrepo:remove_notice_board_entries', 488 repoid, 489 ' '.join([str(x) for x in entry_ids]), 490 ) 491 return self.do_generic_handler(cmd, session_id)
492
493 - def add_notice_board_entry(self, session_id, repoid, title, notice_text, link):
494 495 mydict = { 496 'repoid': repoid, 497 'title': title, 498 'notice_text': notice_text, 499 'link': link, 500 } 501 xml_string = self.entropyTools.xml_from_dict(mydict) 502 503 cmd = "%s %s %s" % ( 504 session_id, 505 'srvrepo:add_notice_board_entry', 506 xml_string, 507 ) 508 return self.do_generic_handler(cmd, session_id)
509