Clone objects from one container to another.

        This method was built to clone a container between data-centers while
        using the same credentials. The method assumes that an authentication
        token will be valid within the two data centers.

def start(self):
        """Clone objects from one container to another.

        This method was built to clone a container between data-centers while
        using the same credentials. The method assumes that an authentication
        token will be valid within the two data centers.
        """

        LOG.info('Clone warm up...')
        # Create the target args
        self._target_auth()

        last_list_obj = None
        while True:
            self.indicator_options['msg'] = 'Gathering object list'
            with indicator.Spinner(**self.indicator_options):
                objects_list = self._list_contents(
                    single_page_return=True,
                    last_obj=last_list_obj
                )
                if not objects_list:
                    return

            last_obj = utils.byte_encode(objects_list[-1].get('name'))
            LOG.info(
                'Last object [ %s ] Last object in the list [ %s ]',
                last_obj,
                last_list_obj
            )
            if last_list_obj == last_obj:
                return
            else:
                last_list_obj = last_obj
                self._clone_worker(objects_list=objects_list)