Skip to content

Commit

Permalink
completed backup asset (first attempt)
Browse files Browse the repository at this point in the history
  • Loading branch information
ndenny committed Jun 4, 2024
1 parent 5f307c9 commit 4e6c5ca
Showing 1 changed file with 26 additions and 18 deletions.
44 changes: 26 additions & 18 deletions bin/bastion.py
Original file line number Diff line number Diff line change
Expand Up @@ -39,33 +39,36 @@
b. anchor (full) if drift >= policy
"""

def SUCCESS(obj):
def SUCCESS(doc, obj):
return {
'reply': {
'status': '200',
'message': 'Ok'
},
'body': obj
'body': doc,
'data': obj
}


def FAILED(obj):
def FAILED(doc, obj):
return {
'reply': {
'status': '400',
'message': 'Bad Request'
},
'body': obj
'body': doc,
'data': obj
}


def CRASHED(obj):
def CRASHED(doc, obj):
return {
'reply': {
'status': '500',
'message': 'Internal Application Error (crash)'
},
'body': obj
'body': doc,
'data': obj
}


Expand Down Expand Up @@ -132,7 +135,10 @@ def run(self):
("export zone assets", self.do_export_zone_assets),
("export site list", self.do_export_site_list),
("export asset manifest", self.do_export_asset_manifest),
("backup asset", self.do_backup_asset)
("backup asset", self.do_backup_asset),
("update asset", self.do_update_asset),
("backup zone", self.do_backup_zone),
("update zone", self.do_update_zone)
]

action = self.do_help #-- default is to show the help.
Expand Down Expand Up @@ -167,14 +173,14 @@ def do_backup_asset(self, comargs, comdex):
ark = ARK(comdex[2])
# print(ark)
site = self.site(ark.site)
vault = self.vault('fortress')
vault.provision(ark)
asset = site.asset(ark)
vault = self.vault(asset.policy.vault)
vault.provision(ark)
flag, stdout, stderr = vault.htar(asset)
if flag:
return SUCCESS({'stdout': stdout, 'stderr': stderr})
return SUCCESS(stdout, {'stdout': stdout})
else:
return FAILED({'stdout': stdout, 'stderr': stderr})
return FAILED(stdout, {'stdout': stdout})

#----------------------
#-- export operations |
Expand Down Expand Up @@ -211,13 +217,13 @@ def do_export_asset_manifest(self, comargs, comdex):

if __name__ == '__main__':
app = App().configured()
#app.run( )
comdex = dict(enumerate(sys.argv[1:]))
rusina = app.site('rusina')
fortress = app.vault('fortress', rusina)
ark = ARK(comdex[2])
ds = rusina.asset(ark)
fortress.provision(ark)
app.run( )
#comdex = dict(enumerate(sys.argv[1:]))
#rusina = app.site('rusina')
#fortress = app.vault('fortress', rusina)
#ark = ARK(comdex[2])
#ds = rusina.asset(ark)
#fortress.provision(ark)


#bastion site {site} backup
Expand All @@ -236,6 +242,8 @@ def do_export_asset_manifest(self, comargs, comdex):
#bastion restore zone { }
#bastion backup asset { }
#bastion backup zone { }
#bastion update asset { }
#bastion update zone { }
#bastion export zone assets { }
#bastion export asset manifest { }
#bastion export site list
Expand Down

0 comments on commit 4e6c5ca

Please sign in to comment.