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

Indicate what backend is used for config storage in the status page #6520

Open
klonos opened this issue May 8, 2024 · 21 comments · May be fixed by backdrop/backdrop#4739
Open

Indicate what backend is used for config storage in the status page #6520

klonos opened this issue May 8, 2024 · 21 comments · May be fixed by backdrop/backdrop#4739

Comments

@klonos
Copy link
Member

klonos commented May 8, 2024

With #2277 in for the upcoming 1.28.0 release, we should be indicating in the status report page whether files or the db is being used for config. Perhaps links to documentation as well?

@indigoxela
Copy link
Member

we should be indicating in the status report page whether files or the db is being used for config

Yes, we definitely should, as this is an important info. @klonos do you have time to provide a PR? It would be cool, if we managed to get this into the 1.28 stable release.

@klonos
Copy link
Member Author

klonos commented May 9, 2024

@klonos do you have time to provide a PR? It would be cool, if we managed to get this into the 1.28 stable release.

Yes, of course. Working on it...

@klonos klonos self-assigned this May 9, 2024
@klonos klonos changed the title Status page: Indicate what backend is used for config storage Indicate what backend is used for config storage in the status page & provide telemetry for it as well. May 9, 2024
@indigoxela
Copy link
Member

Ah, a change of scope just happened. 😉

To be clear: adding this to telemetry would only be useful, it we needed some sort of decision base, which we don't. We just added the ability and won't remove it any time soon.

Adding the info to the status page is, what I consider useful here.

@klonos klonos changed the title Indicate what backend is used for config storage in the status page & provide telemetry for it as well. Indicate what backend is used for config storage in the status page May 9, 2024
@klonos
Copy link
Member Author

klonos commented May 9, 2024

Ah, a change of scope just happened. 😉

Fair enough. I'll move telemetry to another issue (because I think that it's good to have some data when we need it, and it is a simple change).

@klonos
Copy link
Member Author

klonos commented May 9, 2024

Here's a PR: backdrop/backdrop#4739

image

Given concerns raised in #5791 with regards to not exposing the config directories, I'm only indicating files or database at the moment. Also, should I be accounting for contrib providing other methods? (in which case, what should we be indicating?)

@indigoxela
Copy link
Member

indigoxela commented May 10, 2024

Looks good! 👍

One thing came to my mind... wording:

"Configuration storage locations" - technically it's a "location", but actually, for the admin looking at that page, the "location" would be the path to the directory, if it were files based (the usual case). What they see is actually the ... hm ... "type"?
Personally, I find the word "location" ambiguous here. 😉 But I don't have strong feelings re that phrasing.

@klonos
Copy link
Member Author

klonos commented May 10, 2024

How about "Configuration storage backend" or simply "Configuration storage" then? ...other thoughts?

@indigoxela
Copy link
Member

How about "Configuration storage backend"

Perfect! 👍

@klonos
Copy link
Member Author

klonos commented May 12, 2024

OK, I'll give it some time to allow others to chime in, and I'll then update the PR. In the meantime, what about the strings for the values? ...should it be as it currently is:

  • Active configuration: files
  • Staging configuration: files

...or simply:

  • Active: files
  • Staging: files

In the dev meeting this past week, it was also mentioned that we should add some help text as well, with a link to documentation about this. We currently have no documentation for this though. I was thinking something along these lines:

By default, configuration is stored in .json files (in the /files/config directory). This can be adjusted in the settings.php file. See documentation for details.

Thoughts?

@stpaultim
Copy link
Member

Given concerns raised in #5791 with regards to not exposing the config directories, I'm only indicating files or database at the moment. Also, should I be accounting for contrib providing other methods? (in which case, what should we be indicating?)

I'm not advocating one way or another, but the concern about sharing complete path to files directory was that the debug info was specifically intended to be shared, potentially in a public forum. I think providing a path the admin on the status page would be different.

@indigoxela
Copy link
Member

Friendly reminder, that the release providing that new feature will come out in a few days.
If we get into bike shedding here, the accompanying info on status page may not make it in in time. 😉

@indigoxela
Copy link
Member

indigoxela commented May 13, 2024

If displaying the config file path (as set in settings.php) is an option, then the text can just stay as-is. Because then it's the "path" that admins would expect, anyway.

@klonos if your time permits, mind to update the PR to actually show the path? I haven't been involved in any discussion re path display, but I guess, this info's just fine to show to admins (only privileged accounts may see this page).

I'd really like to get this into 1.28.0, as this is the only "user facing" thing for the new config backend. It's info and feature presentation in one. 😉

@klonos
Copy link
Member Author

klonos commented May 14, 2024

only privileged accounts may see this page

Yes, that was the counter-argument I presented in #5791, but people still had concerns. What I think we can do is the same thing that we are doing with the cron job entry, where we are hiding any sensitive information inside a "more" link. I'll update the PR to do that.

Can I please get some suggestions for the help text to add, so that I update everything in one go?

@indigoxela
Copy link
Member

@klonos I do get the concerns for #5791 and I think, they're valid there. But the use-case is different here, as this info is for admins, not to paste to some potentially public space (the purpose of the debug info).

But if there are concerns, your first suggestion "Configuration storage backend" works just great as label.

And even if everything stays as-is in the current PR, I'm fine with it. It feels a bit ambiguous, but is still valuable info.

@quicksketch
Copy link
Member

I think this PR is good for starters. I also like that we can swap out the words "files" or "database" for directories or database tables if we so desire without changing the translation strings.

@klonos
Copy link
Member Author

klonos commented May 14, 2024

We still need feedback on the following strings for this:

  • Configuration storage locations or Configuration storage backends or just Configuration storage?
  • Active configuration and Staging configuration or just Active and Staging?
  • files or directories ...or .json files? (specifically mention the type of files)
  • database or database tables?

It would be nice to have some documentation available that we can link to (things like "this can only be changed during installation currently" etc.)

@olafgrabienski
Copy link

olafgrabienski commented May 14, 2024

only privileged accounts may see this page

Yes, that was the counter-argument I presented in #5791, but people still had concerns.

I raised the concerns about the Debug report, but that is another case because it's optimized for sharing information via copy & paste. In the status report, it's fine to show the information, in my opinion.

@klonos
Copy link
Member Author

klonos commented May 14, 2024

Thanks @olafgrabienski 🙏🏼 ...it seems that we have a few people here stating that this is not a concern in the status report page. I'll work on the PR to add the config paths and db string then.

@findlabnet
Copy link

we should be indicating in the status report page whether files or the db is being used for config

It seems like I am missing something, but what is it important for?

@indigoxela
Copy link
Member

but what is it important for?

@findlabnet Core as of 1.28 provides two different config storage options - files or database. The latter is new. Which one the site uses, is important info for admins and should get displayed. At least, as an admin I'd like to know "at a glance", without accessing the settings.php file.

@findlabnet
Copy link

@indigoxela thanks for the clarification, sorry for the wrong question, I was thinking of something else.

@quicksketch quicksketch modified the milestones: 1.28.0, 1.28.1 May 16, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment