Skip to content

Clarify install target docs. - #929

Open
hjoliver wants to merge 2 commits into
cylc:8.6.xfrom
hjoliver:clarify-install-target
Open

Clarify install target docs.#929
hjoliver wants to merge 2 commits into
cylc:8.6.xfrom
hjoliver:clarify-install-target

Conversation

@hjoliver

@hjoliver hjoliver commented May 21, 2026

Copy link
Copy Markdown
Member

Companion of cylc/cylc-flow#7315

Current docs are a bit misleading (IMO) on exactly what an install target is.

Question: can we also change install target = localhost in various example to something else, e.g. local_cluster to make it more obvious that an install target is not a hostname?

Requirements check-list

  • I have read CONTRIBUTING.md and added my name as a Code Contributor.

@hjoliver hjoliver added this to the 8.6.x milestone May 21, 2026
@hjoliver hjoliver self-assigned this May 21, 2026

@MetRonnie MetRonnie left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, I was unclear on this myself

Comment thread src/reference/config/writing-platform-configs.rst Outdated

@MetRonnie MetRonnie left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actually could you stick this on 8.6.x base branch

@hjoliver
hjoliver force-pushed the clarify-install-target branch from 4f3d4b4 to 68a14d3 Compare June 17, 2026 23:51
@hjoliver
hjoliver changed the base branch from master to 8.6.x June 17, 2026 23:51
@hjoliver

hjoliver commented Jun 17, 2026

Copy link
Copy Markdown
Member Author

@oliver-sanders or @dpmatthews - @MetRonnie has approved this, but can one of you comment on my question above re use of install target = localhost in the other places in the docs?

hjoliver and others added 2 commits June 18, 2026 11:54
Co-authored-by: Ronnie Dutta <61982285+MetRonnie@users.noreply.github.com>
@hjoliver
hjoliver force-pushed the clarify-install-target branch from 68a14d3 to 1a0e670 Compare June 17, 2026 23:54

@dpmatthews dpmatthews left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I now think it's clearer, and more accurate, if we talk about $HOME directories rather than filesystems (for example, you could have platforms which share the same network filesystem but use different $HOME directories on that filesystem).

I also think we need a note in the "Symlinking Directories" section:
Note: If multiple platforms share the same install target and you specify a symlink directory such as ``log = $DATADIR`` then it is essential that ``$DATADIR`` is defined on all the platforms and points to the same filesystem.

Comment on lines +44 to +45
- An ``install target``, representing each distinct filesystem that Cylc might
need to install workflow files on.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggestion:
An ``install target``, representing the ``$HOME`` directory used on the platform.

Comment on lines +60 to +62
An install target is an arbitrary label to identify a distinct file system. All
platforms that see the same filesystem should specify the same install target
so that Cylc knows where it needs to install workflow files.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggestion:
An install target is an arbitrary label to identify the $HOME directory. All platforms that share the same $HOME directories should specify the same install target so that Cylc knows whether it needs to install workflow files.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

or maybe:
An install target is an arbitrary label to identify the distinct filesystem used to store the $HOME directories. All platforms that share the same $HOME directories (i.e. the same files) should specify the same install target so that Cylc knows whether it needs to install workflow files

Comment on lines +73 to +75
Note, if missing from the configuration, the install target will default to
the platform name. If incorrectly configured, this will cause errors in
:ref:`RemoteInit` due to Cylc finding files there already during setup.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggestion:
Note, if missing from the configuration, the install target will default to the platform name (which is fine if there are no other platforms using the same $HOME directories). However, if incorrectly configured (i.e. you use platforms which share $HOME directories but use different install targets), this will cause errors in :ref:RemoteInit due to Cylc finding files there already during setup.

@dpmatthews

Copy link
Copy Markdown
Contributor

@oliver-sanders or @dpmatthews - @MetRonnie has approved this, but can one of you comment on my question above re use of install target = localhost in the other places in the docs?

In the examples I've looked at, install target = localhost is required unless you also change the install target used for the localhost platform (which may add to any confusion?).

@hjoliver

hjoliver commented Aug 4, 2026

Copy link
Copy Markdown
Member Author

I now think it's clearer, and more accurate, if we talk about $HOME directories rather than filesystems (for example, you could have platforms which share the same network filesystem but use different $HOME directories on that filesystem).

@dpmatthews OK I hadn't thought of that. Do you know of actual cases of this - different platforms with different home paths on the same filesystem??

Anyhow, "talking about $HOME directories rather than filesystems" could also be confusing. It's common to have the same username and home dir path on different platforms (with separate filesystems) and I'm pretty sure many users would think of that as "having the same home directory" on those platforms. Whereas, they are really "different home directories with the same path". What's the easiest way to explain this clearly? Maybe we need to talk about both filesystems and home directories to avoid any misunderstandings 🤔

@hjoliver

hjoliver commented Aug 4, 2026

Copy link
Copy Markdown
Member Author

In the examples I've looked at, install target = localhost is required unless you also change the install target used for the localhost platform (which may add to any confusion?).

Yes, we'd have to make the changes self-consistent of course. I just think that our frequent use ofinstall target = localhost strongly gives the impression that the install target is an actual host (perhaps, the particular host on the platform that Cylc should use for installing files - which it is not).

@dpmatthews

Copy link
Copy Markdown
Contributor

Do you know of actual cases of this - different platforms with different home paths on the same filesystem??

Possibly once in the past.

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 this pull request may close these issues.

3 participants