Add redis symlinks at the same place as the installed binaries#193
Conversation
Signed-off-by: Vitah Lin <vitahlin@gmail.com>
Signed-off-by: Vitah Lin <vitahlin@gmail.com>
madolson
left a comment
There was a problem hiding this comment.
I think the approach makes sense, just some minor comments
ba81d4d to
c4982d3
Compare
Co-authored-by: Madelyn Olson <34459052+madolson@users.noreply.github.com> Signed-off-by: Vitah Lin <vitahlin@gmail.com>
Signed-off-by: Vitah Lin <vitahlin@gmail.com> Co-authored-by: Madelyn Olson <34459052+madolson@users.noreply.github.com>
Signed-off-by: Vitah Lin <vitahlin@gmail.com> Co-authored-by: Madelyn Olson <34459052+madolson@users.noreply.github.com>
Co-authored-by: Madelyn Olson <34459052+madolson@users.noreply.github.com> Signed-off-by: Vitah Lin <vitahlin@gmail.com>
Signed-off-by: Vitah Lin <vitahlin@gmail.com>
Solved the language expression problem you suggested and the space problem in Makefile. |
zuiderkwast
left a comment
There was a problem hiding this comment.
Yeah, this is the behaviour we want. Some comments on details.
|
One more thing: The symlinks Code in server.c: /* Check if we need to start in redis-check-rdb/aof mode. We just execute
* the program main. However the program is part of the Redis executable
* so that we can easily execute an RDB check on loading errors. */
if (strstr(exec_name,"valkey-check-rdb") != NULL)
redis_check_rdb_main(argc,argv,NULL);
else if (strstr(exec_name,"valkey-check-aof") != NULL)
redis_check_aof_main(argc,argv); |
Signed-off-by: Vitah Lin <vitahlin@gmail.com>
Signed-off-by: Vitah Lin <vitahlin@gmail.com>
Signed-off-by: Vitah Lin <vitahlin@gmail.com>
Signed-off-by: Vitah Lin <vitahlin@gmail.com>
…t to uninstall redis symlink Signed-off-by: Vitah Lin <vitahlin@gmail.com>
Signed-off-by: Vitah Lin <vitahlin@gmail.com>
zuiderkwast
left a comment
There was a problem hiding this comment.
Disclaimer: The suggestions are untested. :)
…links Signed-off-by: Vitah Lin <vitahlin@gmail.com>
I will test it next. |
Signed-off-by: Vitah Lin <vitahlin@gmail.com>
Signed-off-by: Vitah Lin <vitahlin@gmail.com>
zuiderkwast
left a comment
There was a problem hiding this comment.
Good. Just a few minor suggestions.
Signed-off-by: Vitah Lin <vitahlin@gmail.com>
|
My first PR that wasn't about typo. Thank you for your patience and help, have a nice day. 😀 |
|
Thanks @vitahlin! I edited the top comment to match what was finally implemented. |
…y-io#193) Adds a new make variable called `USE_REDIS_SYMLINKS`, with default value `yes`. If yes, then `make install` creates additional symlinks to the installed binaries: * `valkey-server` * `valkey-cli` * `valkey-benchmark` * `valkey-check-rdb` * `valkey-check-aof` * `valkey-sentinel` The names of the symlinks are the legacy redis binary names (`redis-server`, etc.). The purpose is to provide backward compatibility for scripts expecting the these filenames. The symlinks are installed in the same directory as the binaries (typically `/usr/local/bin/` or similar). Similarly, `make uninstall` removes these symlinks if `USE_REDIS_SYMLINKS` is `yes`. This is described in a note in README.md. Fixes valkey-io#147 --------- Signed-off-by: Vitah Lin <vitahlin@gmail.com> Co-authored-by: Madelyn Olson <34459052+madolson@users.noreply.github.com>
…y-io#193) Adds a new make variable called `USE_REDIS_SYMLINKS`, with default value `yes`. If yes, then `make install` creates additional symlinks to the installed binaries: * `valkey-server` * `valkey-cli` * `valkey-benchmark` * `valkey-check-rdb` * `valkey-check-aof` * `valkey-sentinel` The names of the symlinks are the legacy redis binary names (`redis-server`, etc.). The purpose is to provide backward compatibility for scripts expecting the these filenames. The symlinks are installed in the same directory as the binaries (typically `/usr/local/bin/` or similar). Similarly, `make uninstall` removes these symlinks if `USE_REDIS_SYMLINKS` is `yes`. This is described in a note in README.md. Fixes valkey-io#147 --------- Signed-off-by: Vitah Lin <vitahlin@gmail.com> Co-authored-by: Madelyn Olson <34459052+madolson@users.noreply.github.com>
|
For me this change causes issues when using TLS. When I switch off symlinks for redis then installation fails cause it can't find |
|
@furai Yes, of course we can revise it. Why is |
|
I haven't had time to dig into it. What I'm doing is pretty simple, e.g.: make BUILD_TLS=yes USE_SYSTEMD=yes
make PREFIX=custom/usr USE_REDIS_SYMLINKS=no installAnd then it fails with error because it can't find the aforementioned file. I was building from prepackaged version 7.2.5 available here on github. |
Adds a new make variable called
USE_REDIS_SYMLINKS, with default valueyes. If yes, thenmake installcreates additional symlinks to the installed binaries:valkey-servervalkey-clivalkey-benchmarkvalkey-check-rdbvalkey-check-aofvalkey-sentinelThe names of the symlinks are the legacy redis binary names (
redis-server, etc.). The purpose is to provide backward compatibility for scripts expecting the these filenames. The symlinks are installed in the same directory as the binaries (typically/usr/local/bin/or similar).Similarly,
make uninstallremoves these symlinks ifUSE_REDIS_SYMLINKSisyes.This is described in a note in README.md.
Fixes #147