Ejemplo n.º 1
0
    def setUp(self):
        super(LocalRepositoryTest, self).setUp()

        # bundle sample charms
        CharmDirectory(self.sample_dir1).make_archive(
            os.path.join(self.bundled_repo_path, "series", "old.charm"))
        CharmDirectory(self.sample_dir2).make_archive(
            os.path.join(self.bundled_repo_path, "series", "new.charm"))

        # define repository objects
        self.repository1 = LocalCharmRepository(self.unbundled_repo_path)
        self.repository2 = LocalCharmRepository(self.bundled_repo_path)
Ejemplo n.º 2
0
 def add_charm(self, metadata, revision, repository_dir=None, bundle=False):
     if repository_dir is None:
         repository_dir = self.makeDir()
     series_dir = os.path.join(repository_dir, "series")
     os.mkdir(series_dir)
     charm_dir = self.makeDir()
     with open(os.path.join(charm_dir, "metadata.yaml"), "w") as f:
         f.write(dump(metadata))
     with open(os.path.join(charm_dir, "revision"), "w") as f:
         f.write(str(revision))
     if bundle:
         CharmDirectory(charm_dir).make_archive(
             os.path.join(series_dir, "%s.charm" % metadata["name"]))
     else:
         os.rename(charm_dir, os.path.join(series_dir, metadata["name"]))
     return LocalCharmRepository(repository_dir)