def install(self, release_id):
        """Install the contents of the local directory into a release directory.

        If the directory for the given release ID does not exist on the remote
        system, it will be created. The directory will be created according to
        the standard Tunic directory structure (see :doc:`design`).

        Note that the name and path of the local directory is irrelevant, only
        the contents of the specified directory will be transferred to the remote
        server. The contents will end up as children of the release directory on
        the remote server.

        :param str release_id: Timestamp-based identifier for this
            deployment. If this ID corresponds to a directory that already
            exists, contents of the local directory will be copied into
            this directory.
        :return: The results of the ``put`` command using Fabric. This return
            value is an iterable of the paths of all files uploaded on the remote
            server.
        """
        release_path = os.path.join(self._releases, release_id)
        if not self._runner.exists(release_path):
            self._runner.run("mkdir -p '{0}'".format(release_path))

        # Make sure to remove any user supplied globs or trailing slashes
        # so that we can ensure exactly the glob behavior we want from the
        # put command.
        local_path = self._local_path.strip('*').strip(os.path.sep)
        return self._runner.put(os.path.join(local_path, '*'), release_path)
Install the contents of the local directory into a release directory.

        If the directory for the given release ID does not exist on the remote
        system, it will be created. The directory will be created according to
        the standard Tunic directory structure (see :doc:`design`).

        Note that the name and path of the local directory is irrelevant, only
        the contents of the specified directory will be transferred to the remote
        server. The contents will end up as children of the release directory on
        the remote server.

        :param str release_id: Timestamp-based identifier for this
            deployment. If this ID corresponds to a directory that already
            exists, contents of the local directory will be copied into
            this directory.
        :return: The results of the ``put`` command using Fabric. This return
            value is an iterable of the paths of all files uploaded on the remote
            server.