Skip to content

qa: update fs:upgrade to test from n-1/n-2 to main#56338

Closed
dparmar18 wants to merge 3 commits intoceph:mainfrom
dparmar18:wip-64506
Closed

qa: update fs:upgrade to test from n-1/n-2 to main#56338
dparmar18 wants to merge 3 commits intoceph:mainfrom
dparmar18:wip-64506

Conversation

@dparmar18
Copy link
Contributor

Contribution Guidelines

  • To sign and title your commits, please refer to Submitting Patches to Ceph.

  • If you are submitting a fix for a stable branch (e.g. "quincy"), please refer to Submitting Patches to Ceph - Backports for the proper workflow.

  • When filling out the below checklist, you may click boxes directly in the GitHub web UI. When entering or editing the entire PR message in the GitHub web UI editor, you may also select a checklist item by adding an x between the brackets: [x]. Spaces and capitalization matter when checking off items this way.

Checklist

  • Tracker (select at least one)
    • References tracker ticket
    • Very recent bug; references commit where it was introduced
    • New feature (ticket optional)
    • Doc update (no ticket needed)
    • Code cleanup (no ticket needed)
  • Component impact
    • Affects Dashboard, opened tracker ticket
    • Affects Orchestrator, opened tracker ticket
    • No impact that needs to be tracked
  • Documentation (select at least one)
    • Updates relevant documentation
    • No doc update is appropriate
  • Tests (select at least one)
Show available Jenkins commands
  • jenkins retest this please
  • jenkins test classic perf
  • jenkins test crimson perf
  • jenkins test signed
  • jenkins test make check
  • jenkins test make check arm64
  • jenkins test submodules
  • jenkins test dashboard
  • jenkins test dashboard cephadm
  • jenkins test api
  • jenkins test docs
  • jenkins render docs
  • jenkins test ceph-volume all
  • jenkins test ceph-volume tox
  • jenkins test windows
  • jenkins test rook e2e

@github-actions github-actions bot added the cephfs Ceph File System label Mar 20, 2024
@dparmar18 dparmar18 force-pushed the wip-64506 branch 8 times, most recently from b87f088 to 7ecf352 Compare March 21, 2024 08:06
@dparmar18
Copy link
Contributor Author

looks like teuth machines dont have lua or lua modules im making use of

lupa.lua54.LuaError: [string "teuthology"]:1: attempt to call a nil value (global 'require')

@dparmar18 dparmar18 force-pushed the wip-64506 branch 3 times, most recently from f35c4b9 to 08d882d Compare March 21, 2024 08:21
Signed-off-by: Dhairya Parmar <dparmar@redhat.com>
Signed-off-by: Dhairya Parmar <dparmar@redhat.com>
@dparmar18 dparmar18 force-pushed the wip-64506 branch 2 times, most recently from 69a8394 to 41fc29c Compare March 21, 2024 08:26
@dparmar18
Copy link
Contributor Author

or i suspect it isn't allowed, i see this commit where there is an allowist consisting of only few lua builtins

@dparmar18
Copy link
Contributor Author

or i suspect it isn't allowed, i see this commit where there is an allowist consisting of only few lua builtins

yeah this is it, it is missing require function in the allowlist. Without its inclusion in the allowlist, this patch cannot move ahead

@dparmar18 dparmar18 force-pushed the wip-64506 branch 2 times, most recently from 41ddc2c to c062eb1 Compare March 26, 2024 10:35
@vshankar
Copy link
Contributor

@dparmar18 What't the status of this? IMO, we should just hand edit the yaml for now and get that merged to start testing upgrades.

@dparmar18
Copy link
Contributor Author

dparmar18 commented Mar 26, 2024

@dparmar18 What't the status of this? IMO, we should just hand edit the yaml for now and get that merged to start testing upgrades.

ive texted on slack for help, im trying to solve issues currently.

EDIT: highlighted my msg on slack just now. https://ceph-storage.slack.com/archives/C04LVQMHM9B/p1711011390319609

dparmar18 added a commit to dparmar18/ceph that referenced this pull request Mar 26, 2024
Implementing this, ceph#56338 is the
way forward once i'm done fixing the backend lua issues

Signed-off-by: Dhairya Parmar <dparmar@redhat.com>
dparmar18 added a commit to dparmar18/ceph that referenced this pull request Mar 26, 2024
Implementing this, ceph#56338 is the
way forward once i'm done fixing the backend lua issues

Signed-off-by: Dhairya Parmar <dparmar@redhat.com>
@dparmar18
Copy link
Contributor Author

lupa.lua54.LuaError: error loading module 'socket.core' from file './socket/core.so':
	dynamic libraries not enabled; check your Lua installation

@dparmar18 dparmar18 force-pushed the wip-64506 branch 3 times, most recently from 1e10aef to 8c2f79a Compare April 2, 2024 15:00
dparmar18 added a commit to dparmar18/ceph that referenced this pull request Apr 3, 2024
Implementing this, ceph#56338 is the
way forward once i'm done fixing the backend lua issues

Signed-off-by: Dhairya Parmar <dparmar@redhat.com>
dparmar18 added a commit to dparmar18/ceph that referenced this pull request Apr 3, 2024
Implementing this, ceph#56338 is the
way forward once i'm done fixing the backend lua issues

Signed-off-by: Dhairya Parmar <dparmar@redhat.com>
@leonid-s-usov
Copy link
Contributor

leonid-s-usov commented Apr 4, 2024

It's a lot of fun playing with the lua scripting and inventing new ways of injecting dynamic values.
However, taking a step back and looking at the task at hand, I have the following question: was it considered to encode an n-1 and n-2 branches with dedicated branch name syntax and then resolve them already as part of the install and install.upgrade python task itself? It could be as simple as

- install.upgrade:
    # upgrade the single cluster node, which is running all the mon/mds/osd/mgr daemons
    mon.a:
      branch: "@+1"

where @ would mean the tested branch and ±n would go up/down the release lineup. This would need to be supported as a syntax to install branch as well

UPD: maybe we could even avoid using @ and just use ±n to denote the relation to the current build, where the current build is the one installed, or if it's the install command, then the build of the test branch

@dparmar18
Copy link
Contributor Author

It's a lot of fun playing with the lua scripting and inventing new ways of injecting dynamic values. However, taking a step back and looking at the task at hand, I have the following question: was it considered to encode an n-1 and n-2 branches with dedicated branch name syntax and then resolve them already as part of the install and install.upgrade python task itself? It could be as simple as

- install.upgrade:
    # upgrade the single cluster node, which is running all the mon/mds/osd/mgr daemons
    mon.a:
      branch: "@+1"

where @ would mean the tested branch and ±n would go up/down the release lineup. This would need to be supported as a syntax to install branch as well

UPD: maybe we could even avoid using @ and just use ±n to denote the relation to the current build, where the current build is the one installed, or if it's the install command, then the build of the test branch

So let me try to summarise this and I hope I understand it well - You're saying is we enable install and install.upgrade through teuthology code by using @ or ±n which would trigger some logic that fetches the latest ceph version and installs/upgrade automatically?

@leonid-s-usov
Copy link
Contributor

So let me try to summarise this and I hope I understand it well - You're saying is we enable install and install.upgrade through teuthology code by using @ or ±n which would trigger some logic that fetches the latest ceph version and installs/upgrade automatically?

That is correct!
I think it would be best to implement it on the teuthology side, but if for any reason we would not like that, there's also an option of creating our local cephfs wrapper task for both install and upgrade, that will only deal with the special branch names but after injecting the correct parameters will simply call the standard implementation by importing it from teuthology

@github-actions
Copy link

github-actions bot commented Jun 4, 2024

This pull request has been automatically marked as stale because it has not had any activity for 60 days. It will be closed if no further activity occurs for another 30 days.
If you are a maintainer or core committer, please follow-up on this pull request to identify what steps should be taken by the author to move this proposed change forward.
If you are the author of this pull request, thank you for your proposed contribution. If you believe this change is still appropriate, please ensure that any feedback has been addressed and ask for a code review.

@github-actions
Copy link

This pull request can no longer be automatically merged: a rebase is needed and changes have to be manually resolved

@github-actions github-actions bot removed the stale label Jun 17, 2024
@vshankar
Copy link
Contributor

@dparmar18 - are you still planning to work on this? IIRC, we had stumbled upon couple of not-so-straightforward roadblocks related to automatic upgrades.

@dparmar18
Copy link
Contributor Author

@dparmar18 - are you still planning to work on this? IIRC, we had stumbled upon couple of not-so-straightforward roadblocks related to automatic upgrades.

right, this one should be closed since we all agreed that the automation requires significant efforts for something like this that requires minor changes once or twice a year

@dparmar18 dparmar18 closed this Jul 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cephfs Ceph File System needs-rebase

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants