예제 #1
0
 def test_builds_available_locally(self):
     """This uses the filesystem."""
     config = mock.Mock()
     config.get_var = mock.Mock(return_value=self.builds_dir)
     self.assertEqual([],
                      Helper(config).builds_available_locally(
                          self.builds_dir))
     os.mkdir(os.path.join(self.builds_dir, 'fakebuild'))
     # builds_available_locally returns a tuple with buildname and timestamp.
     # let's just look at buildname
     self.assertEqual(
         'fakebuild',
         Helper(config).builds_available_locally(self.builds_dir)[0][0])
예제 #2
0
 def __init__(self, client, estatus=None, conf=None, executor=None, helper=None):
     self._response = None
     # a map maintains env_name -> deploy_status
     self._envs = {}
     self._config = conf or Config()
     self._executor = executor
     self._helper = helper or Helper(self._config)
     self._STATUS_FILE = self._config.get_env_status_fn()
     self._client = client
     self._env_status = estatus or EnvStatus(self._STATUS_FILE)
     # load environment deploy status file from local disk
     self.load_status_file()
예제 #3
0
 def test_builds_available_locally(self):
     """This uses the filesystem."""
     config = mock.Mock()
     config.get_var = mock.Mock(return_value=self.builds_dir)
     helper = Helper(config)
     self.assertEqual([],
                      helper.builds_available_locally(
                          self.builds_dir, 'fakeenv'))
     open(os.path.join(self.builds_dir, 'fakeenv-fakebuild.tar.gz'),
          'a').close()
     # builds_available_locally returns a tuple with buildname and timestamp.
     # let's just look at buildname
     self.assertEqual(
         'fakebuild',
         helper.builds_available_locally(self.builds_dir, 'fakeenv')[0][0])
예제 #4
0
    def setUpClass(cls):
        cls.base_dir = tempfile.mkdtemp()
        builds_dir = os.path.join(cls.base_dir, 'builds')
        target = os.path.join(cls.base_dir, 'test')
        cls.target = target
        cls.builds_dir = builds_dir
        cls.url = 'https://deployrepo.pinadmin.com/deploy-scripts/'\
                  '24714bcb0927661873c0acf34194d4f51b4da429.tar.gz'

        if not os.path.exists(builds_dir):
            os.mkdir(builds_dir)

        def mock_get_var(var_name):
            if var_name == 'builds_dir':
                return builds_dir
            elif var_name == 'env_directory':
                return cls.base_dir
            elif var_name == 'package_format':
                return 'tar.gz'

        config = mock.Mock()
        config.get_var = mock.MagicMock(side_effect=mock_get_var)
        config.get_target = mock.MagicMock(return_value=target)
        cls.helper = Helper(config)