La palabra reservada with permite definir un contexto en el cual realizar un determinado grupo de operaciones. Por ejemplo una transaccion es un caso de uso de la palabra reservada with. Normalmente lo que hace es que al alcanzar el control de ejecución el punto donde se encuentra la sentencia with se invoca la funcion __enter__ del argumento y al terminar el bloque automáticamente se invoca la función __exit__ del mismo objeto. En el ejemplo específico que nos envías no es posible determinar que hace with porque no se emplea el valor de retorno de settings() ni se sabe que hace. El codigo de esta función podria ser de ayuda.

Atentamente
Ing. Yeiniel Suárez Sosa
Profesor Instructor, Dep. Automática
FIE, UCLV

On 2014-06-05 11:30, Nicolas lino wrote:
Buenas gente:

Estoy retomando un proyecto en mi empresa (en el cual no aporte ni
una linea) escrito en python, utiliza la libreria fabric. En si el
proyecto es para hacer deploy's en produccion.

Mi problema es que no estoy entendiendo a fondo para que hacen uso
del with Les copio un metodo.

Desde ya, agradesco las explicaciones que me puedan dar.

def rollback(self, tag, environment):
        """
         Apunta el current de un producto a una versión en particular
        """
        env.tag = tag
        env.tagPath = '%s/%s' % (env.releasesPath, tag)
        _WITH SETTINGS():_
             self.config(environment)
            execute(self.set_current_link,tag,role='webservers')
            if env.flushMemcached:
                execute(memcached_flush)
            execute(varnish_flush,env.dominio)
             self.after_deploy()

Saludos!


_______________________________________________
Python-es mailing list
[email protected]
https://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/

--
Ing. Yeiniel Suárez Sosa
Profesor Instructor, Dep. Automática
FIE, UCLV
_______________________________________________
Python-es mailing list
[email protected]
https://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/

Responder a