googleCloudRunner
googleCloudRunner copied to clipboard
ENH: Triggers with source code
Is there use to have this in the package:
cr_buildtrigger_list_full = function(projectId = googleCloudRunner::cr_project_get()) {
triggers = googleCloudRunner::cr_buildtrigger_list(projectId = projectId)
if (NROW(triggers) == 0 || length(triggers) == 0) return(NULL)
triggers$id = triggers$buildTriggerId
trigger_data = lapply(triggers$buildTriggerId, function(triggerId) {
x = googleCloudRunner::cr_buildtrigger_get(triggerId = triggerId,
projectId = projectId)
tibble::tibble(buildTriggerId = triggerId, build = list(x))
})
trigger_data = dplyr::bind_rows(trigger_data)
data = dplyr::full_join(triggers, trigger_data)
return(data)
}
(non-dplyr version)
cr_buildtrigger_list_full = function(projectId = googleCloudRunner::cr_project_get()) {
triggers = googleCloudRunner::cr_buildtrigger_list(projectId = projectId)
if (NROW(triggers) == 0 || length(triggers) == 0) return(NULL)
triggers$id = triggers$buildTriggerId
trigger_data = lapply(triggers$buildTriggerId, function(triggerId) {
x = googleCloudRunner::cr_buildtrigger_get(triggerId = triggerId,
projectId = projectId)
tibble::tibble(buildTriggerId = triggerId, build = list(x))
})
trigger_data = do.call(rbind, trigger_data)
data = merge(triggers, trigger_data, all = TRUE, by = "buildTriggerId")
return(data)
}
Sure would be cool - I'd prefer it as an option flag on cr_buildtrigger_list()
so something like cr_buildtrigger_list(full=TRUE)
to opt-in. Yes needs to not pull in any extra dependencies.