Esempio n. 1
0
 def __init__(self, top_path, path):
     ASSERT.predicate(path, Path.is_dir)
     for name, predicate in (
         (shipyard2.XAR_DIR_RELEASE_METADATA_FILENAME, Path.is_file),
         (shipyard2.XAR_DIR_DEPLOY_INSTRUCTION_FILENAME, Path.is_file),
     ):
         ASSERT.predicate(path / name, predicate)
     ASSERT.any(
         (
             path / shipyard2.XAR_DIR_IMAGE_FILENAME,
             path / shipyard2.XAR_DIR_ZIPAPP_FILENAME,
         ),
         Path.is_file,
     )
     super().__init__(top_path, path)
Esempio n. 2
0
 def __post_init__(self):
     ASSERT.any((self.previous is not None, self.current is not None))
     if self.previous is not None and self.current is not None:
         ASSERT.less(self.previous.revision, self.current.revision)
         ASSERT.equal(self.previous.key, self.current.key)