mofac

Members
  • Content Count

    4
  • Joined

  • Last visited

About mofac

  • Rank
    Newbie

Profile Information

  • Gender
    Male
  • Location
    South Korea

Recent Profile Visitors

603 profile views
  1. Hello, I will try ftrack location use S3Accesor(ap-northeast-2 region) S3 Signature version Support infomation site = http://docs.aws.amazon.com/ko_kr/general/latest/gr/rande.html#s3_region Frankfurt, Seoul = Support Signature Version 4 only Other region = Support Signature Versions 2 and 4 S3Accessor use boto(v2.28) library and It is made support Signature Versions 2 only. If so S3Accessor use Signature Version 4 only region(Frankfurt, Seoul), show below error occured. The authorization mechanism you have provided is not supported. Please use AWS4-HMAC-SHA256. S3Accessor need to make a connection support with SigV4.(add host parameter and set os.environ.setdefault('S3_USE_SIGV4', 'True') What should I do? Thank you.
  2. auto_transfer.py -------------------------------------------------------------------------------------------------------------------------------- # :coding: utf-8import platform as _platformimport getpassimport loggingimport ftrackTOPIC = 'ftrack.location.component-added and source.user.username={0}'.format(getpass.getuser())sourceLocation = ftrack.Location('source.location')targetLocation = ftrack.Location('target.location')class ComponentAutoTransfer(object): '''Component add sourceLocation to targetLocation.''' def __init__(self, name='ftrack.ComponentAutoTransfer', priority=50): '''Initialise ComponentAutoTransfer with *name* and *priority*.''' self._name = name self._priority = priority super(ComponentAutoTransfer, self).__init__() def getName(self): '''Return name.''' return self._name def getPriority(self): '''Return priority.''' return self._priority def handle(self, event): '''Handle published *event*. event['data'] should contain: * componentId - The id of the component to resolve for. * ''' # Only interested location is User Home location. # locationName = ftrack.pickLocation(event['data']['componentId']).getName() location = ftrack.pickLocation(event['data']['componentId']) if location.getId() != sourceLocation.getId(): print(u'Only Use source.location!! Exclude Location : {0}'.format(location.getName())) return #print(u'Component ID is {0}'.format(event['data']['componentId'])) #print(sourceLocation.getId()) if ftrack.pickLocation(event['data']['componentId']).get('id') == ftrack.Location(sourceLocation).get('id'): componentId = event['data']['componentId'] print componentId sourceComponent = sourceLocation.getComponent(componentId) # Add component to target location (and transfer any data) targetComponent = targetLocation.addComponent(sourceComponent) print(u'Transferred component {0} -> {1}'.format( sourceComponent.getInternalPath(), targetComponent.getInternalPath() )) else: print(event['data']['componentId'])def register(registry, **kw): '''Register auto_transfer plugin.''' logger = logging.getLogger( 'ftrack_plugin:ComponentAutoTransfer.register' ) # Validate that registry is an instance of ftrack.Registry. If not, # assume that register is being called from a new or incompatible API and # return without doing anything. if not isinstance(registry, ftrack.Registry): logger.debug( 'Not subscribing plugin as passed argument {0!r} is not an ' 'ftrack.Registry instance.'.format(registry) ) return plugin = ComponentAutoTransfer() ftrack.EVENT_HUB.subscribe('topic=ftrack.location.component-added and source.user.username={0}'.format(getpass.getuser()), plugin.handle) registry.add(plugin)resolver.py ------------------------------------------------------------------------------------------------------------------------------- # :coding: utf-8import platform as _platformimport getpassimport loggingimport ftrackTOPIC = 'ftrack.location.request-resolve and source.user.username={0}'.format(getpass.getuser())class ComponentInLocationPathResolver(object): '''Resolve the filesystem path of a component in a specific location.''' def __init__(self, name='ftrack.componentInLocationPathResolver', priority=10): '''Initialise resolver with *name* and *priority*.''' self._name = name self._priority = priority super(ComponentInLocationPathResolver, self).__init__() def getName(self): '''Return name.''' return self._name def getPriority(self): '''Return priority.''' return self._priority def handle(self, event): '''Handle published *event*. event['data'] should contain: * componentId - The id of the component to resolve for. * locationName - Name of the location to resolve for. Can be None to indicate location should be determined automatically. * platform - A string representing the platform to resolve for. Can be either 'Windows' or 'Linux'. ''' if getpass.getuser() != event['source']['user']['username']: # Only interested in specific current user topic. return # Extract useful information from passed event. componentId = event['data']['componentId'] platform = event['data']['platform'] if platform and platform != _platform.system(): # Don't resolve paths for other platforms. return locationName = event['data'].get('locationName', None) if not locationName: # Pick a suitable location if none was passed. location = ftrack.pickLocation(componentId) if location is not None: locationName = location.getName() if not locationName: return try: # Attempt to resolve to full filesystem path using locally # available location plugins. location = ftrack.Location(locationName) component = location.getComponent(componentId) resolvedPath = component.getFilesystemPath() except ftrack.FTrackError: return # Return data to send as reply event. return {'path': resolvedPath}def register(registry, **kw): '''Register resolver plugin.''' logger = logging.getLogger( 'ftrack_plugin:resolver.register' ) # Validate that registry is an instance of ftrack.Registry. If not, # assume that register is being called from a new or incompatible API and # return without doing anything. if not isinstance(registry, ftrack.Registry): logger.debug( 'Not subscribing plugin as passed argument {0!r} is not an ' 'ftrack.Registry instance.'.format(registry) ) return plugin = ComponentInLocationPathResolver() ftrack.EVENT_HUB.subscribe('topic=ftrack.location.request-resolve and source.user.username={0}'.format(getpass.getuser()), plugin.handle) registry.add(plugin)---------------------------------------------------------------------------------------------------------------------------------- auto_transfer_error.log -- show below error log.... ERROR:FTrackCore.api.event.hub.EventHub:Error calling subscriber <Subscriber metadata={'id': '10280d1070594b2abc2ddb33d96c84b3'} subscription=topic=ftrack.location.component-added and source.user.username=kiseo_kim> for event <Event {'topic': u'ftrack.location.component-added', 'source': {u'id': u'b9d8d67ae5e64de498f08dc7cf683173', u'user': {u'username': u'kiseo_kim'}}, 'target': u'', 'sent': None, 'data': {u'locationId': u'ce9b348f-8809-11e3-821c-20c9d081909b', u'componentId': u'86fd5cfc-a7ca-11e5-9360-003048f5c468'}, 'id': u'5196c741ef6a4617acd0a4429afc0454', 'inReplyToEvent': None}>.Traceback (most recent call last): File "/app/prog/ftrack_connect/common.zip/FTrackCore/api/event/hub.py", line 663, in _handle response = subscriber.callback(event) File "/home/kiseo_kim/ftrack-lib/ftrack_events/auto_transfer.py", line 42, in handle if location.getId() != sourceLocation.getId():AttributeError: 'NoneType' object has no attribute 'getId'ERROR:FTrackCore.api.event.hub.EventHub:Error calling subscriber <Subscriber metadata={'id': '64757e1a507842dbbb268734aaf76807'} subscription=topic=ftrack.location.component-added and source.user.username=kiseo_kim> for event <Event {'topic': u'ftrack.location.component-added', 'source': {u'id': u'b9d8d67ae5e64de498f08dc7cf683173', u'user': {u'username': u'kiseo_kim'}}, 'target': u'', 'sent': None, 'data': {u'locationId': u'ce9b348f-8809-11e3-821c-20c9d081909b', u'componentId': u'86fd5cfc-a7ca-11e5-9360-003048f5c468'}, 'id': u'5196c741ef6a4617acd0a4429afc0454', 'inReplyToEvent': None}>.Traceback (most recent call last): File "/app/prog/ftrack_connect/common.zip/FTrackCore/api/event/hub.py", line 663, in _handle response = subscriber.callback(event) File "/home/kiseo_kim/ftrack-lib/ftrack_events/auto_transfer.py", line 42, in handle if location.getId() != sourceLocation.getId():AttributeError: 'NoneType' object has no attribute 'getId'INFO:requests.packages.urllib3.connectionpool:Starting new HTTPS connection (1): my.server.com86fd5cfc-a7ca-11e5-9360-003048f5c468INFO:requests.packages.urllib3.connectionpool:Starting new HTTPS connection (1): my.server.comERROR:FTrackCore.api.event.hub.EventHub:Error calling subscriber <Subscriber metadata={'id': '10280d1070594b2abc2ddb33d96c84b3'} subscription=topic=ftrack.location.component-added and source.user.username=kiseo_kim> for event <Event {'topic': u'ftrack.location.component-added', 'source': {u'id': u'b9d8d67ae5e64de498f08dc7cf683173', u'user': {u'username': u'kiseo_kim'}}, 'target': u'', 'sent': None, 'data': {u'locationId': u'87794940-a750-11e5-a7f8-003048f5c468', u'componentId': u'86fd5cfc-a7ca-11e5-9360-003048f5c468'}, 'id': u'f52ed905cdda453aab47c935f266e441', 'inReplyToEvent': None}>.Traceback (most recent call last): File "/app/prog/ftrack_connect/common.zip/FTrackCore/api/event/hub.py", line 663, in _handle response = subscriber.callback(event) File "/home/kiseo_kim/ftrack-lib/ftrack_events/auto_transfer.py", line 57, in handle sourceComponent.getInternalPath(),AttributeError: 'Component' object has no attribute 'getInternalPath'86fd5cfc-a7ca-11e5-9360-003048f5c468ERROR:FTrackCore.api.event.hub.EventHub:Error calling subscriber <Subscriber metadata={'id': '64757e1a507842dbbb268734aaf76807'} subscription=topic=ftrack.location.component-added and source.user.username=kiseo_kim> for event <Event {'topic': u'ftrack.location.component-added', 'source': {u'id': u'b9d8d67ae5e64de498f08dc7cf683173', u'user': {u'username': u'kiseo_kim'}}, 'target': u'', 'sent': None, 'data': {u'locationId': u'87794940-a750-11e5-a7f8-003048f5c468', u'componentId': u'86fd5cfc-a7ca-11e5-9360-003048f5c468'}, 'id': u'f52ed905cdda453aab47c935f266e441', 'inReplyToEvent': None}>.Traceback (most recent call last): File "/app/prog/ftrack_connect/common.zip/FTrackCore/api/event/hub.py", line 663, in _handle response = subscriber.callback(event) File "/home/kiseo_kim/ftrack-lib/ftrack_events/auto_transfer.py", line 54, in handle targetComponent = targetLocation.addComponent(sourceComponent) File "/app/prog/ftrack_connect/common.zip/FTrackCore/api/client.py", line 89, in wrapper result = function(*args, **kw) File "/app/prog/ftrack_connect/common.zip/FTrackCore/api/location/base.py", line 518, in addComponent raise ComponentInLocationError(componentId, self.getId())ComponentInLocationError: Component "86fd5cfc-a7ca-11e5-9360-003048f5c468" already exists in location "add7b91a-a3e4-11e5-a4fe-003048f5c468".Only Use source.location!! Exclude Location : ftrack.serverOnly Use source.location!! Exclude Location : ftrack.serverOnly Use source.location!! Exclude Location : ftrack.serverOnly Use source.location!! Exclude Location : ftrack.server86fd5cfc-a7ca-11e5-9360-003048f5c468ERROR:FTrackCore.api.event.hub.EventHub:Error calling subscriber <Subscriber metadata={'id': '10280d1070594b2abc2ddb33d96c84b3'} subscription=topic=ftrack.location.component-added and source.user.username=kiseo_kim> for event <Event {'topic': u'ftrack.location.component-added', 'source': {u'id': u'b9d8d67ae5e64de498f08dc7cf683173', u'user': {u'username': u'kiseo_kim'}}, 'target': u'', 'sent': None, 'data': {u'locationId': u'add7b91a-a3e4-11e5-a4fe-003048f5c468', u'componentId': u'86fd5cfc-a7ca-11e5-9360-003048f5c468'}, 'id': u'97300be5074e4455917f802fb9d47b21', 'inReplyToEvent': None}>.Traceback (most recent call last): File "/app/prog/ftrack_connect/common.zip/FTrackCore/api/event/hub.py", line 663, in _handle response = subscriber.callback(event) File "/home/kiseo_kim/ftrack-lib/ftrack_events/auto_transfer.py", line 54, in handle targetComponent = targetLocation.addComponent(sourceComponent) File "/app/prog/ftrack_connect/common.zip/FTrackCore/api/client.py", line 89, in wrapper result = function(*args, **kw) File "/app/prog/ftrack_connect/common.zip/FTrackCore/api/location/base.py", line 518, in addComponent raise ComponentInLocationError(componentId, self.getId())ComponentInLocationError: Component "86fd5cfc-a7ca-11e5-9360-003048f5c468" already exists in location "add7b91a-a3e4-11e5-a4fe-003048f5c468".86fd5cfc-a7ca-11e5-9360-003048f5c468ERROR:FTrackCore.api.event.hub.EventHub:Error calling subscriber <Subscriber metadata={'id': '64757e1a507842dbbb268734aaf76807'} subscription=topic=ftrack.location.component-added and source.user.username=kiseo_kim> for event <Event {'topic': u'ftrack.location.component-added', 'source': {u'id': u'b9d8d67ae5e64de498f08dc7cf683173', u'user': {u'username': u'kiseo_kim'}}, 'target': u'', 'sent': None, 'data': {u'locationId': u'add7b91a-a3e4-11e5-a4fe-003048f5c468', u'componentId': u'86fd5cfc-a7ca-11e5-9360-003048f5c468'}, 'id': u'97300be5074e4455917f802fb9d47b21', 'inReplyToEvent': None}>.Traceback (most recent call last): File "/app/prog/ftrack_connect/common.zip/FTrackCore/api/event/hub.py", line 663, in _handle response = subscriber.callback(event) File "/home/kiseo_kim/ftrack-lib/ftrack_events/auto_transfer.py", line 54, in handle targetComponent = targetLocation.addComponent(sourceComponent) File "/app/prog/ftrack_connect/common.zip/FTrackCore/api/client.py", line 89, in wrapper result = function(*args, **kw) File "/app/prog/ftrack_connect/common.zip/FTrackCore/api/location/base.py", line 518, in addComponent raise ComponentInLocationError(componentId, self.getId())ComponentInLocationError: Component "86fd5cfc-a7ca-11e5-9360-003048f5c468" already exists in location "add7b91a-a3e4-11e5-a4fe-003048f5c468". ------------------------------------------------------------------------------------------------------------------------------ What is the reason above error log? (automatic transfer is work fine, but... show above error log...) Thanks.
  3. How can I change the address 'http://localhost' ? Even though I try to change the configuration settings in ftrack.ini, the address above does not change. Thanks.
  4. below error messages in /tmp/ftrack_reg_worker_00.log file. Mails will not be sent. But Diagnostics mail test is no problem. /******************* Start **********************/Worker Id: 5d694758-ad97-11e4-9d13-0025901af7ceEvent Type: check_all_notificationsTimestamp: 2015-02-06 09:45:40.120845-------------- Event specific data ---------------Check all notificationshttp://localhost############### SENT MAIL EXCEPTION: 2015-02-06 09:45:40.154218Traceback (most recent call last): File "/opt/ftrack/python/lib/python2.6/site-packages/FTServer-3.0.9.4173-py2.6.egg/ftserver/lib/fog/worker.py", line 91, in callback File "/opt/ftrack/python/lib/python2.6/site-packages/FTServer-3.0.9.4173-py2.6.egg/ftserver/lib/fog/scripts/check_all_notifications.py", line 11, in run File "/opt/ftrack/python/lib/python2.6/site-packages/FTServer-3.0.9.4173-py2.6.egg/ftserver/lib/fog/NotificationHelper.py", line 273, in checkAll File "/opt/ftrack/python/lib/python2.6/site-packages/FTServer-3.0.9.4173-py2.6.egg/ftserver/lib/fog/NotificationHelper.py", line 290, in triggerMail File "/opt/ftrack/python/lib/python2.6/urllib2.py", line 126, in urlopen return _opener.open(url, data, timeout) File "/opt/ftrack/python/lib/python2.6/urllib2.py", line 391, in open response = self._open(req, data) File "/opt/ftrack/python/lib/python2.6/urllib2.py", line 409, in _open '_open', req) File "/opt/ftrack/python/lib/python2.6/urllib2.py", line 369, in _call_chain result = func(*args) File "/opt/ftrack/python/lib/python2.6/urllib2.py", line 1181, in http_open return self.do_open(httplib.HTTPConnection, req) File "/opt/ftrack/python/lib/python2.6/urllib2.py", line 1156, in do_open raise URLError(err)URLError: <urlopen error [Errno 111] Connection refused> ------------------ Timer ------------------------- 0:00:00.034344/******************* End ************************/ Thanks.