Вы пытаетесь получить доступ к члену вашего класса 'MyStep' с именем 'stop', тогда как этот член не существует.Одним из таких доступов может быть полевой доступ, например «self.stopped».
Съемка в темноте, вот простые пользовательские шаги, которые я выполняю в своих ботах, чтобы предоставить вам примеры:
class _ClearPropertyStep(steps.BuildStep):
"""
Step that clears a property
"""
def __init__(self, prop, **kwargs):
steps.BuildStep.__init__(self, **kwargs)
assert prop is not None and len(prop) > 0
self.property = prop
@defer.inlineCallbacks
def run(self):
print("Clearing property " + self.property)
self.setProperty(self.property, None, str(type(self)))
yield defer.returnValue(SUCCESS)
Вот еще один:
class _URLStep(steps.BuildStep):
"""
Step whose only purpose is to show a description and an URL
"""
renderables = steps.BuildStep.renderables + [
'url_text',
'url',
]
def __init__(self, url_text, url, **kwargs):
steps.BuildStep.__init__(self, **kwargs)
assert url_text is not None
self.url_text = url_text
assert url is not None
self.url = url
@defer.inlineCallbacks
def run(self):
print("Setting URL: " + str(self.url))
self.addURL(self.url_text, self.url)
yield defer.returnValue(SUCCESS)