add option --no-logfile

cute-signatures
Daniel Golle 2021-12-09 15:52:09 +00:00 committed by Timo Teräs
parent af489f3b6f
commit 4ccf038a9f
3 changed files with 6 additions and 1 deletions

View File

@ -70,6 +70,7 @@ static void version(struct apk_out *out, const char *prefix)
OPT(OPT_GLOBAL_interactive, APK_OPT_SH("i") "interactive") \
OPT(OPT_GLOBAL_keys_dir, APK_OPT_ARG "keys-dir") \
OPT(OPT_GLOBAL_no_cache, "no-cache") \
OPT(OPT_GLOBAL_no_logfile, "no-logfile") \
OPT(OPT_GLOBAL_no_network, "no-network") \
OPT(OPT_GLOBAL_no_progress, "no-progress") \
OPT(OPT_GLOBAL_print_arch, "print-arch") \
@ -168,6 +169,9 @@ static int option_parse_global(void *ctx, struct apk_ctx *ac, int opt, const cha
case OPT_GLOBAL_wait:
ac->lock_wait = atoi(optarg);
break;
case OPT_GLOBAL_no_logfile:
ac->flags |= APK_NO_LOGFILE;
break;
case OPT_GLOBAL_no_network:
ac->flags |= APK_NO_NETWORK;
break;

View File

@ -28,6 +28,7 @@
#define APK_NO_CACHE BIT(9)
#define APK_NO_COMMIT_HOOKS BIT(10)
#define APK_NO_CHROOT BIT(11)
#define APK_NO_LOGFILE BIT(12)
#define APK_FORCE_OVERWRITE BIT(0)
#define APK_FORCE_OLD_APK BIT(1)

View File

@ -69,7 +69,7 @@ int apk_ctx_prepare(struct apk_ctx *ac)
}
ac->dest_fd = ac->root_fd;
if (ac->open_flags & APK_OPENF_WRITE) {
if ((ac->open_flags & APK_OPENF_WRITE) && !(ac->flags & APK_NO_LOGFILE)) {
const char *log_path = "var/log/apk.log";
const int lflags = O_WRONLY | O_APPEND | O_CREAT | O_CLOEXEC;
int fd = openat(ac->root_fd, log_path, lflags, 0644);