cd /tmp && \
rm -fr /tmp/db_build'
-# Deploy "ctdlvisor", a small supervisor program which runs inside the container to wrangle the various services
-ADD ctdlvisor.c /tmp
-
# Create our build directory
RUN mkdir /tmp/ctdl_build
+# Deploy "ctdlvisor", a small supervisor program which runs inside the container to wrangle the various services
+ADD ctdlvisor.c /tmp
+
# Burn the cache if the upstream repository has changed
ADD "https://easyinstall.citadel.org/libcitadel-easyinstall.tar.gz" /tmp/ctdl_build
ADD "https://easyinstall.citadel.org/citadel-easyinstall.tar.gz" /tmp/ctdl_build
pid_t webcit_pid;
pid_t webcits_pid;
int shutting_down = 0;
+char *logging_flag = "-x1";
// Call this instead of exit() just for common diagnostics etc.
void ctdlvisor_exit(int code) {
pid_t pid = fork();
if (pid == 0) {
fprintf(stderr, "ctdlvisor: executing citserver\n");
- detach_from_tty();
- execlp("/usr/local/citadel/citserver", "citserver", "-x9", "-h", CTDL_DIR, NULL);
+ //detach_from_tty();
+ execlp("/usr/local/citadel/citserver", "citserver", logging_flag, "-h", CTDL_DIR, NULL);
exit(errno);
}
else {
pid_t pid = fork();
if (pid == 0) {
fprintf(stderr, "ctdlvisor: executing webcit (http)\n");
- detach_from_tty();
- execlp("/usr/local/webcit/webcit", "webcit", "-x9", "-p", "80", "uds", CTDL_DIR, NULL);
+ //detach_from_tty();
+ execlp("/usr/local/webcit/webcit", "webcit", logging_flag, "-p", "80", "uds", CTDL_DIR, NULL);
exit(errno);
}
else {
pid_t pid = fork();
if (pid == 0) {
fprintf(stderr, "ctdlvisor: executing webcit (https)\n");
- detach_from_tty();
- execlp("/usr/local/webcit/webcit", "webcit", "-x9", "-s", "-p", "443", "uds", CTDL_DIR, NULL);
+ //detach_from_tty();
+ execlp("/usr/local/webcit/webcit", "webcit", logging_flag, "-s", "-p", "443", "uds", CTDL_DIR, NULL);
exit(errno);
}
else {
symlink(CTDL_DIR "/keys", "/usr/local/webcit/keys");
/* parse command-line arguments */
- while ((a=getopt(argc, argv, "cmd")) != EOF) switch(a) {
+ while ((a=getopt(argc, argv, "cmdx:")) != EOF) switch(a) {
// test this binary for compatibility and exit
case 'c':
database_cleanup_mode = 1;
break;
+ // logging level
+ case 'x':
+ logging_flag = malloc(50);
+ snprintf(logging_flag, 50, "-x%d", atoi(optarg));
+ break;
+
// any other parameter makes it crash and burn
default:
- fprintf(stderr, "usage\n");
+ fprintf(stderr, "%s: usage: %s [-c] [-m] [-d] [-x log_level]\n");
exit(1);
}