docs: def add_dockerfile(self, dockerfile):
          """
          Add a Dockerfile to the context. If it is a :class:`DockerFile` instance, files and archive contents added there
          will automatically be copied to the tarball. The :class:`DockerFile` will be finalized.
  
          :param dockerfile: :class:`DockerFile` instance or file path to a Dockerfile.
          :type dockerfile: DockerFile | unicode | str
          """
          if isinstance(dockerfile, DockerFile):
              dockerfile.finalize()
              dockerfile_obj = dockerfile.fileobj
              for path, arcname in dockerfile._files:
                  self.add(path, arcname=arcname)
              for archive in dockerfile._archives:
                  self.addarchive(archive)
              tarinfo = tarfile.TarInfo('Dockerfile')
              tarinfo.size = dockerfile_obj.tell()
              dockerfile_obj.seek(0)
              self.tarfile.addfile(tarinfo, dockerfile_obj)
          else:
              self.add(dockerfile, arcname='Dockerfile')