question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Don't write .ep_initialized in source directories

See original GitHub issue

In my installation I install Etherpad without giving write permissions to the node processor over the source directory. It seems this is a problem because Etherpad tries to write to four places:

  • APIKEY.txt (OK, I can generate this in advance)
  • SESSIONKEY.txt (I can generate this as well)
  • var/ (this is easy to make writable by node process)
  • .ep_initialized in each plugin directory – this is hard to do without giving write access to all plugin code

So why is .ep_initialized needed? It seems it is only created once, but never really cleaned up?

Issue Analytics

  • State:closed
  • Created 8 years ago
  • Reactions:2
  • Comments:30 (12 by maintainers)

github_iconTop GitHub Comments

1reaction
mitarcommented, Dec 2, 2020

No time at the moment, but eventually yes, if somebody else does not do it earlier.

0reactions
mitarcommented, Oct 28, 2021

I realized that this is even more problematic with Docker containers then it appears. Namely every time you create a Docker container (based of some Docker image) its files are recreated. So even if you make it so that .ep_initialized can be written into the container, the next you create the container (e.g., upgrade Docker image) files are gone. It is hard to make whole source directory into a persisted volume because then code will also not upgrade. Moving these files to var directory might be reasonable, because then I can at least make var directory a persisted volume.

But primarily I do not buy that it would not be better to write this into a database. If database is not available on startup, Etherpad should not start (and then a supervisor can retry it). Everything else is in the database and is required to be there for Etherpad to work, why not also these flags?

Read more comments on GitHub >

github_iconTop Results From Across the Web

How to write a Makefile with separate source and header ...
List your source and build output directories: SRC_DIR := src OBJ_DIR := obj BIN_DIR := bin # or . · Name your final...
Read more >
Characters to Avoid in Filenames and Directories
Don't start or end your filename with a space, period, hyphen, or underline. Keep your filenames to a reasonable length and be sure...
Read more >
Control source, library, and exclude directories - CLion
To manage files and directories of your project, use the right-click menu in the Project tool window (to focus on it, press Alt+1...
Read more >
Simple steps to find why I don't have permission to "mv" a folder
I own all the folders and files under the tree rooted at /home/MyUserName . I have read/write permissions for all files/folders, and ...
Read more >
Resource Type: file - Puppet
Manages files, including their content, ownership, and permissions. The file type can manage normal files, directories, and symlinks; the type should be ...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found