Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use cylc subcommand for remote functionality #2302

Closed
5 tasks done
matthewrmshin opened this issue May 23, 2017 · 7 comments · Fixed by #2582
Closed
5 tasks done

Use cylc subcommand for remote functionality #2302

matthewrmshin opened this issue May 23, 2017 · 7 comments · Fixed by #2582
Assignees
Milestone

Comments

@matthewrmshin
Copy link
Contributor

matthewrmshin commented May 23, 2017

E.g.:

See also #2292, metomi/rose#2070 and metomi/rose#2075.

@matthewrmshin matthewrmshin added this to the soon milestone May 23, 2017
@hjoliver
Copy link
Member

Just to note, the primary reason for this is: so we don't have to invoke a bash shell via ssh to ensure correct interpretation of complex commands regardless of the user's default shell.

@hjoliver
Copy link
Member

hjoliver commented Jul 5, 2017

(and: security people evidently don't like invoking login shells over ssh)

matthewrmshin added a commit to matthewrmshin/cylc-flow that referenced this issue Nov 8, 2017
New commands to initialise/tidy suite directory hierarchy for remote
task runs. Commands now run in the background, and launched on remote
hosts as using `cylc.remote` remote run mechanism.
(Tick a box in cylc#2302.)

Update log and runtime database only before the real submission command.

TO BE SITE TESTED
matthewrmshin added a commit to matthewrmshin/cylc-flow that referenced this issue Nov 9, 2017
New commands to initialise/tidy suite directory hierarchy for remote
task runs. Commands now run in the background, and launched on remote
hosts as using `cylc.remote` remote run mechanism.
(Tick a box in cylc#2302.)

Update log and runtime database only before the real submission command.

TO BE SITE TESTED
matthewrmshin added a commit to matthewrmshin/cylc-flow that referenced this issue Nov 10, 2017
New commands to initialise/tidy suite directory hierarchy for remote
task runs. Commands now run in the background, and launched on remote
hosts as using `cylc.remote` remote run mechanism.
(Tick a box in cylc#2302.)

Update log and runtime database only before the real submission command.

TO BE SITE TESTED
matthewrmshin added a commit to matthewrmshin/cylc-flow that referenced this issue Nov 10, 2017
New commands to initialise/tidy suite directory hierarchy for remote
task runs. Commands now run in the background, and launched on remote
hosts as using `cylc.remote` remote run mechanism.
(Tick a box in cylc#2302.)

Update log and runtime database only before the real submission command.

TO BE SITE TESTED
matthewrmshin pushed a commit to matthewrmshin/cylc-flow that referenced this issue Nov 10, 2017
New commands to initialise/tidy suite directory hierarchy for remote
task runs. Commands now run in the background, and launched on remote
hosts as using `cylc.remote` remote run mechanism.
(Tick a box in cylc#2302.)

Update log and runtime database only before the real submission command.
matthewrmshin pushed a commit to matthewrmshin/cylc-flow that referenced this issue Nov 14, 2017
New commands to initialise/tidy suite directory hierarchy for remote
task runs. Commands now run in the background, and launched on remote
hosts as using `cylc.remote` remote run mechanism.
(Tick a box in cylc#2302.)

Update log and runtime database only before the real submission command.
@hjoliver hjoliver self-assigned this Nov 16, 2017
@hjoliver
Copy link
Member

I'll be looking at the first two tick-boxes next week. The third is handled by current PR #2468

@hjoliver
Copy link
Member

(after this we'll need to update the remote command transcript in the CUG)

@hjoliver
Copy link
Member

hjoliver commented Nov 24, 2017

(assigned @matthewrmshin for the job init part).

matthewrmshin pushed a commit to matthewrmshin/cylc-flow that referenced this issue Nov 24, 2017
New commands to initialise/tidy suite directory hierarchy for remote
task runs. Commands now run in the background, and launched on remote
hosts as using `cylc.remote` remote run mechanism.
(Tick a box in cylc#2302.)

Update log and runtime database only before the real submission command.
@hjoliver
Copy link
Member

hjoliver commented Nov 26, 2017

The cylc cat-log command is something of a mess, having gradually accrued different modes and target files. At this point it can print, list, cat, tail, test, or view-in-editor any suite or job log on the suite or job hosts. To single out the remote bits of this and put them behind a remote cylc command requires some refactoring, but some initial prototyping suggests it'll work.

Plus: the ability to use batch-system-specific cat and tail commands that target the batch job ID.

Plus: the need to ensure that remote tail processes die when the ssh connection is killed - this will actually be easier with a Python program at the remote end - we won't need the complicated shell expression to determine PPID in remote tail command template.

New design: a new function takes a plain log file path and, depending on args, it can print, list, cat, or tail it to stdout, or capture the file content and return it (the later for the edit mode). This function is only called on the host that the target file resides on, and will be called either locally on the suite host, or remotely on the job host via an ssh-invoked command, after all the suite-host processing that the determines exactly what the log file path is.

@hjoliver
Copy link
Member

[Updated previous comment with additional complexities - the two "Plus:..." sentences.]

matthewrmshin pushed a commit to matthewrmshin/cylc-flow that referenced this issue Jan 5, 2018
New commands to initialise/tidy suite directory hierarchy for remote
task runs. Commands now run in the background, and launched on remote
hosts as using `cylc.remote` remote run mechanism.
(Tick a box in cylc#2302.)

Update log and runtime database only before the real submission command.
matthewrmshin pushed a commit to matthewrmshin/cylc-flow that referenced this issue Jan 8, 2018
New commands to initialise/tidy suite directory hierarchy for remote
task runs. Commands now run in the background, and launched on remote
hosts as using `cylc.remote` remote run mechanism.
(Tick a box in cylc#2302.)

Update log and runtime database only before the real submission command.
matthewrmshin pushed a commit to matthewrmshin/cylc-flow that referenced this issue Jan 9, 2018
New commands to initialise/tidy suite directory hierarchy for remote
task runs. Commands now run in the background, and launched on remote
hosts as using `cylc.remote` remote run mechanism.
(Tick a box in cylc#2302.)

Update log and runtime database only before the real submission command.
@matthewrmshin matthewrmshin modified the milestones: soon, next release Apr 10, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants