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

clean: only attempt to clean platforms which have been installed to #4951

Closed
wants to merge 1 commit into from

Conversation

oliver-sanders
Copy link
Member

@oliver-sanders oliver-sanders commented Jun 30, 2022

Addresses the "broken platform" side of #4935.

  • Store the remote init map in the workflow database.
  • This table is not in itself housekept because the database as a whole is housekept by cylc clean.
  • Add a new remote-init status for platforms which have no hosts available (therefor do not need cleaning as we haven't managed to install anything onto them in the first place).

TODO:

  • Don't update the status of an install_target if the new status would not require clean and the old would (e.g. can happen on restart if no hosts are available but the remote-init completed for the previous start)
  • Requires (extremely simple) DB upgrader (i.e. add blank table on restart).
  • Add test.

Requirements check-list

  • I have read CONTRIBUTING.md and added my name as a Code Contributor.
  • Contains logically grouped changes (else tidy your branch by rebase).
  • Does not contain off-topic changes (use other PRs for other changes).
  • Applied any dependency changes to both setup.cfg and conda-environment.yml.
  • Appropriate tests are included (unit and/or functional).
  • Already covered by existing tests.
  • Does not need tests (why?).
  • Appropriate change log entry included.
  • No change log entry required (why? e.g. invisible to users).
  • (master branch) I have opened a documentation PR at cylc/cylc-doc/pull/XXXX.
  • (7.8.x branch) I have updated the documentation in this PR branch.
  • No documentation update required.

* Store the remote init map in the workflow database.
* This table is not in itself housekept because the database as a whole
  is housekept by `cylc clean`.
* Add a new remote-init status for platforms which have no hosts
  available (therefor do not need cleaning as we haven't managed to
  install anything onto them in the first place).
@oliver-sanders oliver-sanders self-assigned this Jun 30, 2022
@oliver-sanders oliver-sanders added this to the cylc-8.0rc5 milestone Jun 30, 2022
@oliver-sanders
Copy link
Member Author

@hjoliver Does this approach make sense to you?

@oliver-sanders oliver-sanders modified the milestones: cylc-8.0rc5, cylc-8.x Jun 30, 2022
@oliver-sanders
Copy link
Member Author

Bumping to 8.x as I think this only really impacts us developers dealing with test battery workflows?

For real platforms users will just wait until the platform becomes available again and retry the clean command.

@hjoliver
Copy link
Member

hjoliver commented Jul 1, 2022

Yes, it seems an eminently sensible approach!

@oliver-sanders oliver-sanders modified the milestones: cylc-8.x, some-day Jul 17, 2023
@oliver-sanders
Copy link
Member Author

May come back to this one day, but not today...

@oliver-sanders oliver-sanders removed this from the some-day milestone Aug 3, 2023
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.

2 participants