El 5 de junio de 2014, 20:07, Nicolas lino <[email protected]>
escribió:

> Hola Yeiniel:
> Primero que nada gracias por tu explicacion, muy buena y me esta ayudando
> junto con el otro articulo que me pasaron.
>
> Despues te comento que settings es parte de la libreria fabric, y ya estoy
> poniendome a leer sobre el modulo!
>
> from fabric.context_managers import settings, shell_env, hide
>
>
Lo tienes todo bien explicado en la documentación de fabric:
http://docs.fabfile.org/en/1.8/api/core/context_managers.html

Con el manejador de contexto "settings" puedes parametrizar localmente
algunas opciones de fabric sin que afecten al resto de tareas, lo que
facilita el desacople entre tareas y su paralelización.

Tienes otros manajadores que son más fáciles de usar que "settings()". Por
ejemplo, en lugar de:

with settings(hide('everything'), warn_only=True):
  ....

queda más legible:


with quiet():
  ....




> Saludos.
>
>
>
> El 5 de junio de 2014, 13:19, Yeiniel Suárez Sosa <[email protected]>
> escribió:
>
> 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/
>>
>
>
> _______________________________________________
> Python-es mailing list
> [email protected]
> https://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>
>


-- 
Hyperreals *R  "Quarks, bits y otras criaturas infinitesimales":
http://ch3m4.org/blog
Buscador Python Hispano: http://ch3m4.org/python-es
_______________________________________________
Python-es mailing list
[email protected]
https://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/

Responder a