diff options
-rw-r--r-- | libbrep/build.hxx | 2 | ||||
-rw-r--r-- | libbrep/build.xml | 40 | ||||
-rw-r--r-- | libbrep/package.hxx | 6 | ||||
-rw-r--r-- | libbrep/package.xml | 18 | ||||
-rw-r--r-- | migrate/migrate.cxx | 22 |
5 files changed, 25 insertions, 63 deletions
diff --git a/libbrep/build.hxx b/libbrep/build.hxx index fbab13d..29d9890 100644 --- a/libbrep/build.hxx +++ b/libbrep/build.hxx @@ -28,7 +28,7 @@ // Used by the data migration entries. // -#define LIBBREP_BUILD_SCHEMA_VERSION_BASE 12 +#define LIBBREP_BUILD_SCHEMA_VERSION_BASE 15 #pragma db model version(LIBBREP_BUILD_SCHEMA_VERSION_BASE, 15, closed) diff --git a/libbrep/build.xml b/libbrep/build.xml index 6a2301b..42de81a 100644 --- a/libbrep/build.xml +++ b/libbrep/build.xml @@ -1,31 +1,5 @@ <changelog xmlns="http://www.codesynthesis.com/xmlns/odb/changelog" database="pgsql" schema-name="build" version="1"> - <changeset version="15"> - <alter-table name="build"> - <add-column name="soft_timestamp" type="BIGINT" null="false"/> - <add-column name="hard_timestamp" type="BIGINT" null="false"/> - <add-column name="controller_checksum" type="TEXT" null="false"/> - <add-column name="machine_checksum" type="TEXT" null="false"/> - <add-column name="agent_checksum" type="TEXT" null="true"/> - <add-column name="worker_checksum" type="TEXT" null="true"/> - <add-column name="dependency_checksum" type="TEXT" null="true"/> - <drop-column name="completion_timestamp"/> - </alter-table> - <alter-table name="build_delay"> - <add-column name="report_soft_timestamp" type="BIGINT" null="false"/> - <add-column name="report_hard_timestamp" type="BIGINT" null="false"/> - <drop-column name="report_timestamp"/> - </alter-table> - </changeset> - - <changeset version="14"/> - - <changeset version="13"> - <alter-table name="build"> - <add-column name="interactive" type="TEXT" null="true"/> - </alter-table> - </changeset> - - <model version="12"> + <model version="15"> <table name="build" kind="object"> <column name="package_tenant" type="TEXT" null="false"/> <column name="package_name" type="CITEXT" null="false"/> @@ -44,15 +18,22 @@ <column name="toolchain_version_upstream" type="TEXT" null="false"/> <column name="toolchain_version_release" type="TEXT" null="true"/> <column name="state" type="TEXT" null="false"/> + <column name="interactive" type="TEXT" null="true"/> <column name="timestamp" type="BIGINT" null="false"/> <column name="force" type="TEXT" null="false"/> <column name="status" type="TEXT" null="true"/> - <column name="completion_timestamp" type="BIGINT" null="false" default="0"/> + <column name="soft_timestamp" type="BIGINT" null="false"/> + <column name="hard_timestamp" type="BIGINT" null="false"/> <column name="agent_fingerprint" type="TEXT" null="true"/> <column name="agent_challenge" type="TEXT" null="true"/> <column name="machine" type="TEXT" null="false"/> <column name="machine_summary" type="TEXT" null="false"/> <column name="target" type="TEXT" null="false"/> + <column name="controller_checksum" type="TEXT" null="false"/> + <column name="machine_checksum" type="TEXT" null="false"/> + <column name="agent_checksum" type="TEXT" null="true"/> + <column name="worker_checksum" type="TEXT" null="true"/> + <column name="dependency_checksum" type="TEXT" null="true"/> <primary-key> <column name="package_tenant"/> <column name="package_name"/> @@ -151,7 +132,8 @@ <column name="package_version_release" type="TEXT" null="true"/> <column name="toolchain_version_upstream" type="TEXT" null="false"/> <column name="toolchain_version_release" type="TEXT" null="true"/> - <column name="report_timestamp" type="BIGINT" null="false"/> + <column name="report_soft_timestamp" type="BIGINT" null="false"/> + <column name="report_hard_timestamp" type="BIGINT" null="false"/> <column name="package_timestamp" type="BIGINT" null="false"/> <primary-key> <column name="package_tenant"/> diff --git a/libbrep/package.hxx b/libbrep/package.hxx index 67536ce..0ce8553 100644 --- a/libbrep/package.hxx +++ b/libbrep/package.hxx @@ -18,7 +18,7 @@ // Used by the data migration entries. // -#define LIBBREP_PACKAGE_SCHEMA_VERSION_BASE 19 +#define LIBBREP_PACKAGE_SCHEMA_VERSION_BASE 21 #pragma db model version(LIBBREP_PACKAGE_SCHEMA_VERSION_BASE, 21, closed) @@ -191,7 +191,7 @@ namespace brep // Database mapping. // - #pragma db member(buildtime) default(false) // @@ TMP + #pragma db member(buildtime) }; // certificate @@ -237,7 +237,7 @@ namespace brep // Database mapping. // #pragma db member(id) id - #pragma db member(private_) default(false) // @@ TMP + #pragma db member(private_) private: friend class odb::access; diff --git a/libbrep/package.xml b/libbrep/package.xml index 093f54e..69f5731 100644 --- a/libbrep/package.xml +++ b/libbrep/package.xml @@ -1,20 +1,9 @@ <changelog xmlns="http://www.codesynthesis.com/xmlns/odb/changelog" database="pgsql" schema-name="package" version="1"> - <changeset version="21"> - <alter-table name="package_tests"> - <add-column name="test_buildtime" type="BOOLEAN" null="false" default="FALSE"/> - </alter-table> - </changeset> - - <changeset version="20"> - <alter-table name="tenant"> - <add-column name="private" type="BOOLEAN" null="false" default="FALSE"/> - <add-column name="interactive" type="TEXT" null="true"/> - </alter-table> - </changeset> - - <model version="19"> + <model version="21"> <table name="tenant" kind="object"> <column name="id" type="TEXT" null="false"/> + <column name="private" type="BOOLEAN" null="false"/> + <column name="interactive" type="TEXT" null="true"/> <column name="creation_timestamp" type="BIGINT" null="false"/> <column name="archived" type="BOOLEAN" null="false"/> <primary-key> @@ -628,6 +617,7 @@ <column name="test_package_version_canonical_release" type="TEXT" null="true" options="COLLATE "C""/> <column name="test_package_version_revision" type="INTEGER" null="true"/> <column name="test_type" type="TEXT" null="false"/> + <column name="test_buildtime" type="BOOLEAN" null="false"/> <foreign-key name="tenant_fk" deferrable="DEFERRED"> <column name="tenant"/> <references table="tenant"> diff --git a/migrate/migrate.cxx b/migrate/migrate.cxx index 468d411..6c66bf0 100644 --- a/migrate/migrate.cxx +++ b/migrate/migrate.cxx @@ -220,14 +220,15 @@ struct package_migration_entry: package_migration_entry_base<v> : package_migration_entry_base<v> (f, "package") {} }; -static const package_migration_entry<20> -package_migrate_v20 ([] (database& db) +static const package_migration_entry<22> +package_migrate_v22 ([] (database& db) { }); #endif // Register the data migration functions for the build database schema. // +#if 0 template <schema_version v> using build_migration_entry_base = data_migration_entry<v, LIBBREP_BUILD_SCHEMA_VERSION_BASE>; @@ -239,22 +240,11 @@ struct build_migration_entry: build_migration_entry_base<v> : build_migration_entry_base<v> (f, "build") {} }; -static const build_migration_entry<15> -build_migrate_v15 ([] (database& db) +static const build_migration_entry<16> +build_migrate_v16 ([] (database& db) { - // Setting proper checksums here feels a bit hairy. Let's assign them - // naturally on the first rebuild. - // - db.execute ("UPDATE build SET " - "soft_timestamp = completion_timestamp, " - "hard_timestamp = completion_timestamp, " - "controller_checksum = '', " - "machine_checksum = ''"); - - db.execute ("UPDATE build_delay SET " - "report_soft_timestamp = report_timestamp, " - "report_hard_timestamp = report_timestamp"); }); +#endif // main() function // |