{"action":"closed","issue":{"url":"https://api.github.com/repos/uzh/gc3pie/issues/583","repository_url":"https://api.github.com/repos/uzh/gc3pie","labels_url":"https://api.github.com/repos/uzh/gc3pie/issues/583/labels{/name}","comments_url":"https://api.github.com/repos/uzh/gc3pie/issues/583/comments","events_url":"https://api.github.com/repos/uzh/gc3pie/issues/583/events","html_url":"https://github.com/uzh/gc3pie/issues/583","id":191043274,"number":583,"title":"`SessionBasedScript` requires that `TaskCollection`s have an attribute `output_dir`","user":{"login":"riccardomurri","id":447228,"avatar_url":"https://avatars.githubusercontent.com/u/447228?v=3","gravatar_id":"","url":"https://api.github.com/users/riccardomurri","html_url":"https://github.com/riccardomurri","followers_url":"https://api.github.com/users/riccardomurri/followers","following_url":"https://api.github.com/users/riccardomurri/following{/other_user}","gists_url":"https://api.github.com/users/riccardomurri/gists{/gist_id}","starred_url":"https://api.github.com/users/riccardomurri/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/riccardomurri/subscriptions","organizations_url":"https://api.github.com/users/riccardomurri/orgs","repos_url":"https://api.github.com/users/riccardomurri/repos","events_url":"https://api.github.com/users/riccardomurri/events{/privacy}","received_events_url":"https://api.github.com/users/riccardomurri/received_events","type":"User","site_admin":false},"labels":[{"id":418188788,"url":"https://api.github.com/repos/uzh/gc3pie/labels/1%20-%20Ready","name":"1 - Ready","color":"CCCCCC","default":false},{"id":244904992,"url":"https://api.github.com/repos/uzh/gc3pie/labels/API","name":"API","color":"ededed","default":false},{"id":244904901,"url":"https://api.github.com/repos/uzh/gc3pie/labels/bug","name":"bug","color":"fc2929","default":true},{"id":244904935,"url":"https://api.github.com/repos/uzh/gc3pie/labels/Component-GC3Libs","name":"Component-GC3Libs","color":"ededed","default":false}],"state":"closed","locked":false,"assignee":{"login":"riccardomurri","id":447228,"avatar_url":"https://avatars.githubusercontent.com/u/447228?v=3","gravatar_id":"","url":"https://api.github.com/users/riccardomurri","html_url":"https://github.com/riccardomurri","followers_url":"https://api.github.com/users/riccardomurri/followers","following_url":"https://api.github.com/users/riccardomurri/following{/other_user}","gists_url":"https://api.github.com/users/riccardomurri/gists{/gist_id}","starred_url":"https://api.github.com/users/riccardomurri/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/riccardomurri/subscriptions","organizations_url":"https://api.github.com/users/riccardomurri/orgs","repos_url":"https://api.github.com/users/riccardomurri/repos","events_url":"https://api.github.com/users/riccardomurri/events{/privacy}","received_events_url":"https://api.github.com/users/riccardomurri/received_events","type":"User","site_admin":false},"assignees":[{"login":"riccardomurri","id":447228,"avatar_url":"https://avatars.githubusercontent.com/u/447228?v=3","gravatar_id":"","url":"https://api.github.com/users/riccardomurri","html_url":"https://github.com/riccardomurri","followers_url":"https://api.github.com/users/riccardomurri/followers","following_url":"https://api.github.com/users/riccardomurri/following{/other_user}","gists_url":"https://api.github.com/users/riccardomurri/gists{/gist_id}","starred_url":"https://api.github.com/users/riccardomurri/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/riccardomurri/subscriptions","organizations_url":"https://api.github.com/users/riccardomurri/orgs","repos_url":"https://api.github.com/users/riccardomurri/repos","events_url":"https://api.github.com/users/riccardomurri/events{/privacy}","received_events_url":"https://api.github.com/users/riccardomurri/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/uzh/gc3pie/milestones/1","html_url":"https://github.com/uzh/gc3pie/milestones/2.5","labels_url":"https://api.github.com/repos/uzh/gc3pie/milestones/1/labels","id":1621847,"number":1,"title":"2.5","description":"Mostly a bugfix release; no major new features planned.","creator":{"login":"riccardomurri","id":447228,"avatar_url":"https://avatars.githubusercontent.com/u/447228?v=3","gravatar_id":"","url":"https://api.github.com/users/riccardomurri","html_url":"https://github.com/riccardomurri","followers_url":"https://api.github.com/users/riccardomurri/followers","following_url":"https://api.github.com/users/riccardomurri/following{/other_user}","gists_url":"https://api.github.com/users/riccardomurri/gists{/gist_id}","starred_url":"https://api.github.com/users/riccardomurri/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/riccardomurri/subscriptions","organizations_url":"https://api.github.com/users/riccardomurri/orgs","repos_url":"https://api.github.com/users/riccardomurri/repos","events_url":"https://api.github.com/users/riccardomurri/events{/privacy}","received_events_url":"https://api.github.com/users/riccardomurri/received_events","type":"User","site_admin":false},"open_issues":13,"closed_issues":7,"state":"open","created_at":"2016-03-04T09:08:57Z","updated_at":"2016-11-22T20:06:26Z","due_on":null,"closed_at":null},"comments":1,"created_at":"2016-11-22T15:47:18Z","updated_at":"2016-11-22T20:06:26Z","closed_at":"2016-11-22T20:06:26Z","body":"Currently, the `SessionBasedScript` class assumes each task given to it has a `.output_dir`\nattribute, including `TaskCollection` instances and other tasks where `.would_output == False`.\n\nHere is an example of the traceback::\n\n    exercise_E.py: [2016-11-22 16:43:07] CRITICAL: AttributeError: 'TwoStageWorkflow' object has no attribute 'output_dir'\n    Traceback (most recent call last):\n      File \"/home/rmurri/gc3/gc3pie/gc3libs/cmdline.py\", line 471, in run\n        return cli.app.CommandLineApp.run(self)\n      File \"/home/rmurri/.virtualenvs/gc3pie-dev/local/lib/python2.7/site-packages/cli/app.py\", line 245, in run\n        return self.post_run(returned)\n      File \"/home/rmurri/.virtualenvs/gc3pie-dev/local/lib/python2.7/site-packages/cli/app.py\", line 241, in run\n        returned = self.main(*args)\n      File \"/home/rmurri/gc3/gc3pie/gc3libs/cmdline.py\", line 1279, in _main\n        self.process_args()\n      File \"/home/rmurri/gc3/gc3pie/gc3libs/cmdline.py\", line 950, in process_args\n        self._add_new_tasks(new_jobs)\n      File \"/home/rmurri/gc3/gc3pie/gc3libs/cmdline.py\", line 1018, in _add_new_tasks\n        self._fix_output_dir(task, task.jobname)\n      File \"/home/rmurri/gc3/gc3pie/gc3libs/cmdline.py\", line 1026, in _fix_output_dir\n        task.output_dir = task.output_dir.replace('NAME', name)\n    AttributeError: 'TwoStageWorkflow' object has no attribute 'output_dir'\n\nThe problem seems to be that `_fix_output_dir` tries to replace/patch\nthe result of `task.output_dir` unconditionally.\n\r\n\r\n<!---\r\n@huboard:{\"order\":7.996001199720055,\"milestone_order\":7.996001199720055,\"custom_state\":\"\"}\n-->\r\n"}}
{"actor":{"display_login":"riccardomurri"}}