From 205fb9013a3d387478ada8dc30b4da4ec20051a3 Mon Sep 17 00:00:00 2001 From: Karen Arutyunov Date: Fri, 29 Sep 2023 11:54:13 +0300 Subject: Add support for *-build-*email package manifest values --- libbrep/build-extra.sql | 14 +++++++++++++- libbrep/build-package.hxx | 4 ++++ libbrep/build.hxx | 2 +- libbrep/build.xml | 2 ++ libbrep/common.hxx | 7 +++++++ libbrep/package.hxx | 15 ++++----------- libbrep/package.xml | 11 +++++++++++ 7 files changed, 42 insertions(+), 13 deletions(-) (limited to 'libbrep') diff --git a/libbrep/build-extra.sql b/libbrep/build-extra.sql index b1bd04f..9ffbac1 100644 --- a/libbrep/build-extra.sql +++ b/libbrep/build-extra.sql @@ -61,6 +61,12 @@ CREATE FOREIGN TABLE build_package ( version_upstream TEXT NOT NULL, version_release TEXT NULL, project CITEXT NOT NULL, + build_email TEXT NULL, + build_email_comment TEXT NULL, + build_warning_email TEXT NULL, + build_warning_email_comment TEXT NULL, + build_error_email TEXT NULL, + build_error_email_comment TEXT NULL, internal_repository_tenant TEXT NULL, internal_repository_canonical_name TEXT NULL, buildable BOOLEAN NOT NULL) @@ -189,7 +195,13 @@ CREATE FOREIGN TABLE build_package_configs ( index BIGINT NOT NULL, config_name TEXT NOT NULL, config_arguments TEXT NULL, - config_comment TEXT NOT NULL) + config_comment TEXT NOT NULL, + config_email TEXT NULL, + config_email_comment TEXT NULL, + config_warning_email TEXT NULL, + config_warning_email_comment TEXT NULL, + config_error_email TEXT NULL, + config_error_email_comment TEXT NULL) SERVER package_server OPTIONS (table_name 'package_build_configs'); CREATE FOREIGN TABLE build_package_config_builds ( diff --git a/libbrep/build-package.hxx b/libbrep/build-package.hxx index 50294a3..94ffb08 100644 --- a/libbrep/build-package.hxx +++ b/libbrep/build-package.hxx @@ -114,6 +114,10 @@ namespace brep package_name project; + optional build_email; + optional build_warning_email; + optional build_error_email; + // Mapped to the package object requirements and tests members using the // PostgreSQL foreign table mechanism. // diff --git a/libbrep/build.hxx b/libbrep/build.hxx index 717029d..b64b28a 100644 --- a/libbrep/build.hxx +++ b/libbrep/build.hxx @@ -28,7 +28,7 @@ // #define LIBBREP_BUILD_SCHEMA_VERSION_BASE 20 -#pragma db model version(LIBBREP_BUILD_SCHEMA_VERSION_BASE, 21, closed) +#pragma db model version(LIBBREP_BUILD_SCHEMA_VERSION_BASE, 22, closed) // We have to keep these mappings at the global scope instead of inside the // brep namespace because they need to be also effective in the bbot namespace diff --git a/libbrep/build.xml b/libbrep/build.xml index 0374b05..2ac0002 100644 --- a/libbrep/build.xml +++ b/libbrep/build.xml @@ -1,4 +1,6 @@ + + diff --git a/libbrep/common.hxx b/libbrep/common.hxx index 158690e..fec22e8 100644 --- a/libbrep/common.hxx +++ b/libbrep/common.hxx @@ -333,6 +333,13 @@ namespace brep #pragma db value(build_constraint) definition + // email + // + using bpkg::email; + + #pragma db value(email) definition + #pragma db member(email::value) virtual(string) before access(this) column("") + // build_package_config // using build_package_config = bpkg::build_package_config; diff --git a/libbrep/package.hxx b/libbrep/package.hxx index 4cbdded..e189339 100644 --- a/libbrep/package.hxx +++ b/libbrep/package.hxx @@ -20,7 +20,7 @@ // #define LIBBREP_PACKAGE_SCHEMA_VERSION_BASE 27 -#pragma db model version(LIBBREP_PACKAGE_SCHEMA_VERSION_BASE, 27, closed) +#pragma db model version(LIBBREP_PACKAGE_SCHEMA_VERSION_BASE, 28, closed) namespace brep { @@ -72,13 +72,6 @@ namespace brep set(this = brep::manifest_url ((?), "" /* comment */)) \ column("") - // email - // - using bpkg::email; - - #pragma db value(email) definition - #pragma db member(email::value) virtual(string) before access(this) column("") - // licenses // using bpkg::licenses; @@ -527,9 +520,9 @@ namespace brep optional package_url; optional email; optional package_email; - optional build_email; - optional build_warning_email; - optional build_error_email; + optional build_email; // Note: foreign-mapped in build. + optional build_warning_email; // Note: foreign-mapped in build. + optional build_error_email; // Note: foreign-mapped in build. dependencies_type dependencies; requirements_type requirements; // Note: foreign-mapped in build. small_vector tests; // Note: foreign-mapped in build. diff --git a/libbrep/package.xml b/libbrep/package.xml index 98c9055..073fbb6 100644 --- a/libbrep/package.xml +++ b/libbrep/package.xml @@ -1,4 +1,15 @@ + + + + + + + + + + + -- cgit v1.1