From: Michael Tremer Date: Fri, 27 Jun 2025 14:09:17 +0000 (+0000) Subject: job: Create its own type X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=549e87dc534fafd0837de42d46b2f9b627d3e48c;p=pakfire.git job: Create its own type Signed-off-by: Michael Tremer --- diff --git a/src/pakfire/builder.c b/src/pakfire/builder.c index 067b4617..42b82fad 100644 --- a/src/pakfire/builder.c +++ b/src/pakfire/builder.c @@ -61,7 +61,7 @@ struct pakfire_builder { uint64_t reconnect_holdoff; // Jobs - struct pakfire_job* jobs[MAX_JOBS]; + pakfire_job* jobs[MAX_JOBS]; unsigned int running_jobs; }; @@ -453,7 +453,7 @@ int pakfire_builder_close(struct pakfire_xfer* xfer, int code, void* data) { // Jobs -static struct pakfire_job* pakfire_builder_find_job( +static pakfire_job* pakfire_builder_find_job( pakfire_builder* self, const char* job_id) { // Walk through all jobs for (unsigned int i = 0; i < MAX_JOBS; i++) { @@ -491,7 +491,7 @@ int pakfire_builder_terminate_jobs(pakfire_builder* self) { /* Called after a job has exited */ -int pakfire_builder_job_finished(pakfire_builder* self, struct pakfire_job* job) { +int pakfire_builder_job_finished(pakfire_builder* self, pakfire_job* job) { int r; DEBUG(self->ctx, "Removing job %p\n", job); @@ -527,7 +527,7 @@ int pakfire_builder_job_finished(pakfire_builder* self, struct pakfire_job* job) */ static int pakfire_builder_handle_job_message( pakfire_builder* self, const char* job_id, struct json_object* message) { - struct pakfire_job* job = NULL; + pakfire_job* job = NULL; int r; // Find the job @@ -554,7 +554,7 @@ ERROR: */ static int pakfire_builder_job(pakfire_builder* self, json_object* m) { struct json_object* data = NULL; - struct pakfire_job* job = NULL; + pakfire_job* job = NULL; int r; #if 0 diff --git a/src/pakfire/builder.h b/src/pakfire/builder.h index 4b0b3873..a6cc606e 100644 --- a/src/pakfire/builder.h +++ b/src/pakfire/builder.h @@ -51,7 +51,7 @@ int pakfire_builder_send_message(pakfire_builder* self, struct json_object* mess // Jobs int pakfire_builder_terminate_jobs(pakfire_builder* self); -int pakfire_builder_job_finished(pakfire_builder* self, struct pakfire_job* job); +int pakfire_builder_job_finished(pakfire_builder* self, pakfire_job* job); // Stream Logs int pakfire_builder_stream_logs(pakfire_builder* self); diff --git a/src/pakfire/job.c b/src/pakfire/job.c index b3961aa2..6ec59acc 100644 --- a/src/pakfire/job.c +++ b/src/pakfire/job.c @@ -124,11 +124,11 @@ struct pakfire_job { } uploads; }; -static int pakfire_job_has_flag(struct pakfire_job* self, int flag) { +static int pakfire_job_has_flag(pakfire_job* self, int flag) { return (self->flags & flag); } -static int pakfire_parse_job(struct pakfire_job* job, json_object* data) { +static int pakfire_parse_job(pakfire_job* job, json_object* data) { json_object* ccache = NULL; json_object* o = NULL; int r; @@ -246,7 +246,7 @@ static int pakfire_parse_job(struct pakfire_job* job, json_object* data) { return 0; } -static void pakfire_job_free(struct pakfire_job* job) { +static void pakfire_job_free(pakfire_job* job) { // Logging if (job->log.buffer) pakfire_log_buffer_unref(job->log.buffer); @@ -282,7 +282,7 @@ static void pakfire_job_free(struct pakfire_job* job) { } -static int pakfire_job_finished(struct pakfire_job* self) { +static int pakfire_job_finished(pakfire_job* self) { int r; // Submit the request @@ -297,7 +297,7 @@ static int pakfire_job_finished(struct pakfire_job* self) { static int pakfire_job_package_uploaded(pakfire_client* client, pakfire_client_upload_status status, const char* path, const char* uuid, void* data) { - struct pakfire_job* self = data; + pakfire_job* self = data; int r; // Now we have one less uploads running @@ -327,7 +327,7 @@ static int pakfire_job_package_uploaded(pakfire_client* client, return pakfire_job_finished(self); } -static int pakfire_job_upload_packages(struct pakfire_job* self) { +static int pakfire_job_upload_packages(pakfire_job* self) { FTSENT* entry = NULL; FTS* fts = NULL; int r = 0; @@ -381,7 +381,7 @@ ERROR: */ static int pakfire_job_logfile_uploaded(pakfire_client* client, pakfire_client_upload_status status, const char* path, const char* uuid, void* data) { - struct pakfire_job* self = data; + pakfire_job* self = data; // Check the status switch (status) { @@ -408,7 +408,7 @@ static int pakfire_job_logfile_uploaded(pakfire_client* client, static int pakfire_job_result(pakfire_ctx* ctx, struct pakfire* pakfire, pakfire_build* build, pakfire_archive* archive, void* data) { - struct pakfire_job* self = data; + pakfire_job* self = data; struct pakfire_package* pkg = NULL; const char* filename = NULL; const char* nevra = NULL; @@ -457,7 +457,7 @@ ERROR: This method is triggered by SIGCHLD whenever the job exits */ static int pakfire_job_exited(sd_event_source* s, const siginfo_t* si, void* data) { - struct pakfire_job* job = data; + pakfire_job* job = data; struct pakfire_xfer* xfer = NULL; const char* filename = NULL; const char* path = NULL; @@ -518,7 +518,7 @@ ERROR: return r; } -static int pakfire_job_send_log(struct pakfire_job* job, int priority, const char* line, size_t length) { +static int pakfire_job_send_log(pakfire_job* job, int priority, const char* line, size_t length) { int r; // Write everything to the log file @@ -537,7 +537,7 @@ static int pakfire_job_send_log(struct pakfire_job* job, int priority, const cha static int pakfire_job_stdout(pakfire_ctx* ctx, void* data, const char* line, size_t length) { - struct pakfire_job* job = data; + pakfire_job* job = data; // Send the output to the build service return pakfire_job_send_log(job, LOG_INFO, line, length); @@ -545,7 +545,7 @@ static int pakfire_job_stdout(pakfire_ctx* ctx, static int pakfire_job_stderr(pakfire_ctx* ctx, void* data, const char* line, size_t length) { - struct pakfire_job* job = data; + pakfire_job* job = data; // Send the output to the build service return pakfire_job_send_log(job, LOG_ERR, line, length); @@ -554,7 +554,7 @@ static int pakfire_job_stderr(pakfire_ctx* ctx, /* Called to initialize the parent process. */ -static int pakfire_job_parent(struct pakfire_job* job) { +static int pakfire_job_parent(pakfire_job* job) { int r; // Register the PID file descriptor @@ -584,7 +584,7 @@ static void pakfire_job_log(void* data, int priority, const char* file, static void pakfire_job_log(void* data, int priority, const char* file, int line, const char* fn, const char* format, va_list args) { - struct pakfire_job* job = data; + pakfire_job* job = data; char* buffer = NULL; // Format the line @@ -613,7 +613,7 @@ static void pakfire_job_log(void* data, int priority, const char* file, pakfire_ctx_log_condition(job->ctx, priority, "%s", buffer); } -static int pakfire_job_child(struct pakfire_job* job) { +static int pakfire_job_child(pakfire_job* job) { pakfire_ctx* ctx = NULL; pakfire_build* build = NULL; int build_flags = 0; @@ -695,7 +695,7 @@ ERROR: /* Launches the job */ -int pakfire_job_launch(struct pakfire_job* job) { +int pakfire_job_launch(pakfire_job* job) { int pid; int r; @@ -741,7 +741,7 @@ int pakfire_job_launch(struct pakfire_job* job) { return pakfire_job_parent(job); } -static int pakfire_job_send_log_line(struct pakfire_job* job, +static int pakfire_job_send_log_line(pakfire_job* job, const struct timeval* timestamp, int priority, const char* line, size_t length) { struct json_object* message = NULL; struct json_object* data = NULL; @@ -824,7 +824,7 @@ ERROR: return r; } -int pakfire_job_stream_logs(struct pakfire_job* self) { +int pakfire_job_stream_logs(pakfire_job* self) { struct timeval timestamp = {}; char* line = NULL; size_t length = 0; @@ -856,9 +856,9 @@ int pakfire_job_stream_logs(struct pakfire_job* self) { return 1; } -int pakfire_job_create(struct pakfire_job** job, pakfire_ctx* ctx, +int pakfire_job_create(pakfire_job** job, pakfire_ctx* ctx, pakfire_client* client, pakfire_builder* builder, json_object* data) { - struct pakfire_job* j = NULL; + pakfire_job* j = NULL; char* p = NULL; int r; @@ -935,13 +935,13 @@ ERROR: return r; } -struct pakfire_job* pakfire_job_ref(struct pakfire_job* job) { +pakfire_job* pakfire_job_ref(pakfire_job* job) { ++job->nrefs; return job; } -struct pakfire_job* pakfire_job_unref(struct pakfire_job* job) { +pakfire_job* pakfire_job_unref(pakfire_job* job) { if (--job->nrefs > 0) return job; @@ -949,18 +949,18 @@ struct pakfire_job* pakfire_job_unref(struct pakfire_job* job) { return NULL; } -const char* pakfire_job_get_id(struct pakfire_job* self) { +const char* pakfire_job_get_id(pakfire_job* self) { return self->id; } -int pakfire_job_has_id(struct pakfire_job* job, const char* id) { +int pakfire_job_has_id(pakfire_job* job, const char* id) { return pakfire_string_equals(job->id, id); } /* Terminates the job (if it is still running) */ -int pakfire_job_terminate(struct pakfire_job* job, int signal) { +int pakfire_job_terminate(pakfire_job* job, int signal) { int r; // Fail if we don't have a PID file descriptor @@ -977,7 +977,7 @@ int pakfire_job_terminate(struct pakfire_job* job, int signal) { return 0; } -int pakfire_job_handle_message(struct pakfire_job* self, struct json_object* message) { +int pakfire_job_handle_message(pakfire_job* self, struct json_object* message) { const char* command = NULL; int r; diff --git a/src/pakfire/job.h b/src/pakfire/job.h index 499790a8..3cfc844e 100644 --- a/src/pakfire/job.h +++ b/src/pakfire/job.h @@ -27,28 +27,28 @@ #include #include -struct pakfire_job; +typedef struct pakfire_job pakfire_job; -int pakfire_job_create(struct pakfire_job** worker, pakfire_ctx* ctx, +int pakfire_job_create(pakfire_job** worker, pakfire_ctx* ctx, pakfire_client* client, pakfire_builder* builder, json_object* data); -struct pakfire_job* pakfire_job_ref(struct pakfire_job* worker); -struct pakfire_job* pakfire_job_unref(struct pakfire_job* worker); +pakfire_job* pakfire_job_ref(pakfire_job* worker); +pakfire_job* pakfire_job_unref(pakfire_job* worker); // ID -const char* pakfire_job_get_id(struct pakfire_job* self); -int pakfire_job_has_id(struct pakfire_job* job, const char* id); +const char* pakfire_job_get_id(pakfire_job* self); +int pakfire_job_has_id(pakfire_job* job, const char* id); // Launch -int pakfire_job_launch(struct pakfire_job* job); +int pakfire_job_launch(pakfire_job* job); // Terminate -int pakfire_job_terminate(struct pakfire_job* worker, int signal); +int pakfire_job_terminate(pakfire_job* worker, int signal); // Log Stream -int pakfire_job_stream_logs(struct pakfire_job* self); +int pakfire_job_stream_logs(pakfire_job* self); // Message Received -int pakfire_job_handle_message(struct pakfire_job* self, struct json_object* message); +int pakfire_job_handle_message(pakfire_job* self, struct json_object* message); #endif /* PAKFIRE_JOB_H */