67
67
)
68
68
import click
69
69
import json
70
- import os
71
70
import requests
72
71
import getpass
73
72
import paramiko
74
73
import urllib .parse
75
74
from scp import SCPClient
76
75
from sonic_package_manager .manifest import Manifest , MANIFESTS_LOCATION , DEFAULT_MANIFEST_FILE
77
- LOCAL_JSON = "/tmp/local_json"
76
+ LOCAL_JSON = "/tmp/local_json"
78
77
79
78
@contextlib .contextmanager
80
79
def failure_ignore (ignore : bool ):
@@ -458,9 +457,9 @@ def install_from_source(self,
458
457
self .database .commit ()
459
458
460
459
@under_lock
461
- def update (self ,
462
- name : str ,
463
- ** kwargs ):
460
+ def update (self ,
461
+ name : str ,
462
+ ** kwargs ):
464
463
""" Update SONiC Package referenced by name. The update
465
464
can be forced if force argument is True.
466
465
@@ -481,7 +480,6 @@ def update(self,
481
480
click .echo ("Package {} is not installed" .format (name ))
482
481
return
483
482
484
-
485
483
def remove_unused_docker_image (self , package ):
486
484
image_id_used = any (entry .image_id == package .image_id for entry in self .database if entry .name != package .name )
487
485
if not image_id_used :
@@ -579,7 +577,7 @@ def upgrade_from_source(self,
579
577
Raises:
580
578
PackageManagerError
581
579
"""
582
-
580
+
583
581
if update_only :
584
582
new_package = self .get_installed_package (name , use_edit = True )
585
583
else :
@@ -679,10 +677,10 @@ def upgrade_from_source(self,
679
677
if not skip_host_plugins :
680
678
self ._install_cli_plugins (new_package )
681
679
exits .callback (rollback (self ._uninstall_cli_plugin , new_package ))
682
-
680
+
683
681
if old_package .image_id != new_package .image_id :
684
682
self .remove_unused_docker_image (old_package )
685
-
683
+
686
684
exits .pop_all ()
687
685
except Exception as err :
688
686
raise PackageUpgradeError (f'Failed to upgrade { new_package .name } : { err } ' )
@@ -697,7 +695,7 @@ def upgrade_from_source(self,
697
695
if update_only :
698
696
manifest_path = os .path .join (MANIFESTS_LOCATION , name )
699
697
edit_path = os .path .join (MANIFESTS_LOCATION , name + ".edit" )
700
- os .rename (edit_path ,manifest_path )
698
+ os .rename (edit_path , manifest_path )
701
699
702
700
@under_lock
703
701
@opt_check
@@ -820,9 +818,9 @@ def migrate_package(old_package_entry,
820
818
new_package .version = old_package .version
821
819
migrate_package (old_package , new_package )
822
820
else :
823
- #self.install(f'{new_package.name}={new_package_default_version}')
824
- repo_tag_formed = "{}:{}" .format (new_package .repository , new_package .default_reference )
825
- self .install (None ,repo_tag_formed ,name = new_package .name )
821
+ # self.install(f'{new_package.name}={new_package_default_version}')
822
+ repo_tag_formed = "{}:{}" .format (new_package .repository , new_package .default_reference )
823
+ self .install (None , repo_tag_formed , name = new_package .name )
826
824
else :
827
825
# No default version and package is not installed.
828
826
# Migrate old package same version.
@@ -1108,12 +1106,12 @@ def download_file(self, url, local_path):
1108
1106
remote_path = parsed_url .path
1109
1107
supported_protocols = ['http' , 'https' , 'scp' , 'sftp' ]
1110
1108
1111
- #clear the temporary local file
1109
+ # clear the temporary local file
1112
1110
if os .path .exists (local_path ):
1113
1111
os .remove (local_path )
1114
1112
1115
1113
if not protocol :
1116
- #check for local file
1114
+ # check for local file
1117
1115
if os .path .exists (url ):
1118
1116
os .rename (url , local_path )
1119
1117
return True
@@ -1191,7 +1189,6 @@ def create_package_manifest(self, name, from_json):
1191
1189
click .echo ("Error: Manifest file '{}' already exists." .format (name ))
1192
1190
return
1193
1191
1194
-
1195
1192
if from_json :
1196
1193
ret = self .download_file (from_json , LOCAL_JSON )
1197
1194
if ret is False :
@@ -1202,18 +1199,17 @@ def create_package_manifest(self, name, from_json):
1202
1199
data = {}
1203
1200
with open (from_json , 'r' ) as file :
1204
1201
data = json .load (file )
1205
- #Validate with manifest scheme
1202
+ # Validate with manifest scheme
1206
1203
Manifest .marshal (data )
1207
1204
1208
- #Make sure the 'name' is overwritten into the dict
1205
+ # Make sure the 'name' is overwritten into the dict
1209
1206
data ['package' ]['name' ] = name
1210
1207
data ['service' ]['name' ] = name
1211
1208
1212
1209
with open (mfile_name , 'w' ) as file :
1213
1210
json .dump (data , file , indent = 4 )
1214
1211
click .echo (f"Manifest '{ name } ' created successfully." )
1215
1212
1216
-
1217
1213
def update_package_manifest (self , name , from_json ):
1218
1214
if name == "default_manifest" :
1219
1215
click .echo ("Default Manifest updation is not allowed" )
@@ -1223,7 +1219,7 @@ def update_package_manifest(self, name, from_json):
1223
1219
if not os .path .exists (original_file ):
1224
1220
click .echo (f'Local Manifest file for { name } does not exists to update' )
1225
1221
return
1226
- #download json file from remote/local path
1222
+ # download json file from remote/local path
1227
1223
ret = self .download_file (from_json , LOCAL_JSON )
1228
1224
if ret is False :
1229
1225
return
@@ -1232,10 +1228,10 @@ def update_package_manifest(self, name, from_json):
1232
1228
with open (from_json , 'r' ) as file :
1233
1229
data = json .load (file )
1234
1230
1235
- #Validate with manifest scheme
1231
+ # Validate with manifest scheme
1236
1232
Manifest .marshal (data )
1237
1233
1238
- #Make sure the 'name' is overwritten into the dict
1234
+ # Make sure the 'name' is overwritten into the dict
1239
1235
data ['package' ]['name' ] = name
1240
1236
data ['service' ]['name' ] = name
1241
1237
@@ -1246,8 +1242,8 @@ def update_package_manifest(self, name, from_json):
1246
1242
json .dump (data , edit_file , indent = 4 )
1247
1243
click .echo (f"Manifest '{ name } ' updated successfully." )
1248
1244
else :
1249
- #If package is not installed,
1250
- ## update the name file directly
1245
+ # If package is not installed,
1246
+ # update the name file directly
1251
1247
with open (original_file , 'w' ) as orig_file :
1252
1248
json .dump (data , orig_file , indent = 4 )
1253
1249
click .echo (f"Manifest '{ name } ' updated successfully." )
0 commit comments