Hello, I am currently using Dak in a shell script that installs GOsa (Dak is used for the gosa-client-dak plugin). I am using the attached dak.sh script (incorporated into a larger GOsa installer script) to automate the Dak installation from Git. I wrote this script based on the notes found in /opt/dak/setup/README. I recently ran into an error condition (everything was working fine until just recently). Please let me know if something changed in the last month in the Dak source code that needs to be updated in this dak.sh script. I have attached a dak.error.log regarding the errors produced when running this script on Debian Squeeze 6.x. I am not sure why Dak was removed from Debian 6.x. It would be very nice to have a "frozen" somewhat stable binary version available on the mirrors, or at least a second Git repository that contains a stable "frozen" version. Thank you for your time and help with this matter. Regards, Travis |
Adding group `ftpmaster' (GID 120) ... Done. Adding system user `dak' (UID 113) ... Adding new user `dak' (UID 113) with group `ftpmaster' ... Creating home directory `/home/dak' ... CREATE ROLE CREATE ROLE CREATE ROLE CREATE ROLE CREATE DATABASE You are now connected to database "projectb" as user "postgres". NOTICE: extension "plpgsql" already exists, skipping CREATE EXTENSION CREATE EXTENSION psql:/opt/dak/setup/current_schema.sql:4011: WARNING: no privileges could be revoked for "public" psql:/opt/dak/setup/current_schema.sql:4012: WARNING: no privileges could be revoked for "public" psql:/opt/dak/setup/current_schema.sql:4013: WARNING: no privileges were granted for "public" psql:/opt/dak/setup/current_schema.sql:4014: WARNING: no privileges were granted for "public" Creating components Creating core queues Creating default sections Creating default priorities Setting up source and all architectures Setting up default keyrings Creating override types Setting up archive and locations Setting up source formats Setting up metadata key ordering W: Lock directory doesn't exist yet - not locking Determining dak database revision ... dak database schema at 68 dak version requires schema 82 Add support for Description-md5 @contact: Debian FTP Master <ftpmaster@debian.org> @copyright: 2011 Ansgar Burchardt <ansgar@debian.org> @license: GNU General Public License version 2 or later updated database schema from 68 to 69 Add suite options for overrides and control-suite to DB @contact: Debian FTP Master <ftpmaster@debian.org> @copyright: 2011 Mark Hymers <mhy@debian.org> @license: GNU General Public License version 2 or later updated database schema from 69 to 70 Make lastused in queuefiles/policyqueuefiles default now() @contact: Debian FTP Master <ftpmaster@debian.org> @copyright: 2011 Joerg Jaspert <joerg@debian.org> @license: GNU General Public License version 2 or later updated database schema from 70 to 71 Remove redundant indices @contact: Debian FTP Master <ftpmaster@debian.org> @copyright: 2012 Ansgar Burchardt <ansgar@debian.org> @license: GNU General Public License version 2 or later updated database schema from 71 to 72 Reference archive table from suite and add path to archive root @contact: Debian FTP Master <ftpmaster@debian.org> @copyright: 2012 Ansgar Burchardt <ansgar@debian.org> @license: GNU General Public License version 2 or later updated database schema from 72 to 73 Drop origin_server column from archive table @contact: Debian FTP Master <ftpmaster@debian.org> @copyright: 2012 Ansgar Burchardt <ansgar@debian.org> @license: GNU General Public License version 2 or later updated database schema from 73 to 74 Multi-archive support; convert policy and build queues to regular suites @contact: Debian FTP Master <ftpmaster@debian.org> @copyright: 2012 Ansgar Burchardt <ansgar@debian.org> @license: GNU General Public License version 2 or later MANUAL UPGRADE INSTRUCTIONS =========================== This database update will convert policy and build queues to regular suites. For these archives will be created under Dir::Base: NEW: <base>/new policy queues: <base>/policy build queues: <base>/build-queues Please add Dir::Base to dak.conf and try the update again. Once the database upgrade is finished, you will have to reprocess all uploads currently in policy queues: just move them back to unchecked manually. Was unable to update database schema from 74 to 75. The error message received was Please update dak.conf and try again. E: DB Schema upgrade failed /opt/dak/dak/daklib/dbconn.py:2627: SADeprecationWarning: useexisting is deprecated. Use extend_existing. autoload=True, useexisting=True) Traceback (most recent call last): File "/home/dak/bin/dak", line 237, in <module> main() File "/home/dak/bin/dak", line 217, in main module.main() File "/opt/dak/dak/init_dirs.py", line 173, in main d = DBConn() File "/opt/dak/dak/daklib/dbconn.py", line 2550, in __init__ self.__createconn() File "/opt/dak/dak/daklib/dbconn.py", line 2940, in __createconn self.__setuptables() File "/opt/dak/dak/daklib/dbconn.py", line 2627, in __setuptables autoload=True, useexisting=True) File "/usr/lib/python2.6/dist-packages/sqlalchemy/schema.py", line 265, in __new__ table._init(name, metadata, *args, **kw) File "/usr/lib/python2.6/dist-packages/sqlalchemy/schema.py", line 335, in _init self, include_columns File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/base.py", line 2264, in run_callable return conn.run_callable(callable_, *args, **kwargs) File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/base.py", line 1894, in run_callable return callable_(self, *args, **kwargs) File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/default.py", line 254, in reflecttable return insp.reflecttable(table, include_columns) File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/reflection.py", line 377, in reflecttable for col_d in self.get_columns(table_name, schema, **tblkw): File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/reflection.py", line 230, in get_columns **kw) File "<string>", line 1, in <lambda> File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/reflection.py", line 46, in cache ret = fn(self, con, *args, **kw) File "/usr/lib/python2.6/dist-packages/sqlalchemy/dialects/postgresql/base.py", line 1120, in get_columns info_cache=kw.get('info_cache')) File "<string>", line 1, in <lambda> File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/reflection.py", line 46, in cache ret = fn(self, con, *args, **kw) File "/usr/lib/python2.6/dist-packages/sqlalchemy/dialects/postgresql/base.py", line 1034, in get_table_oid raise exc.NoSuchTableError(table_name) sqlalchemy.exc.NoSuchTableError: files_archive_map cp: target `/srv/dak/templates/' is not a directory gpg: keyblock resource `/srv/dak/keyrings/s3kr1t/dot-gnupg/secring.gpg': file open error gpg: keyblock resource `/srv/dak/keyrings/s3kr1t/dot-gnupg/pubring.gpg': file open error ....+++++ +++++ gpg: no writable public keyring found: eof gpg: key generation failed: eof gpg: can't create `/home/dak/.gnupg/random_seed': No such file or directory /opt/dak/dak/daklib/dbconn.py:2627: SADeprecationWarning: useexisting is deprecated. Use extend_existing. autoload=True, useexisting=True) Traceback (most recent call last): File "/home/dak/bin/dak", line 237, in <module> main() File "/home/dak/bin/dak", line 217, in main module.main() File "/opt/dak/dak/admin.py", line 622, in main dispatch[subcommand](arguments) File "/opt/dak/dak/admin.py", line 174, in architecture d = DBConn() File "/opt/dak/dak/daklib/dbconn.py", line 2550, in __init__ self.__createconn() File "/opt/dak/dak/daklib/dbconn.py", line 2940, in __createconn self.__setuptables() File "/opt/dak/dak/daklib/dbconn.py", line 2627, in __setuptables autoload=True, useexisting=True) File "/usr/lib/python2.6/dist-packages/sqlalchemy/schema.py", line 265, in __new__ table._init(name, metadata, *args, **kw) File "/usr/lib/python2.6/dist-packages/sqlalchemy/schema.py", line 335, in _init self, include_columns File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/base.py", line 2264, in run_callable return conn.run_callable(callable_, *args, **kwargs) File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/base.py", line 1894, in run_callable return callable_(self, *args, **kwargs) File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/default.py", line 254, in reflecttable return insp.reflecttable(table, include_columns) File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/reflection.py", line 377, in reflecttable for col_d in self.get_columns(table_name, schema, **tblkw): File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/reflection.py", line 230, in get_columns **kw) File "<string>", line 1, in <lambda> File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/reflection.py", line 46, in cache ret = fn(self, con, *args, **kw) File "/usr/lib/python2.6/dist-packages/sqlalchemy/dialects/postgresql/base.py", line 1120, in get_columns info_cache=kw.get('info_cache')) File "<string>", line 1, in <lambda> File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/reflection.py", line 46, in cache ret = fn(self, con, *args, **kw) File "/usr/lib/python2.6/dist-packages/sqlalchemy/dialects/postgresql/base.py", line 1034, in get_table_oid raise exc.NoSuchTableError(table_name) sqlalchemy.exc.NoSuchTableError: files_archive_map /opt/dak/dak/daklib/dbconn.py:2627: SADeprecationWarning: useexisting is deprecated. Use extend_existing. autoload=True, useexisting=True) Traceback (most recent call last): File "/home/dak/bin/dak", line 237, in <module> main() File "/home/dak/bin/dak", line 217, in main module.main() File "/opt/dak/dak/admin.py", line 622, in main dispatch[subcommand](arguments) File "/opt/dak/dak/admin.py", line 174, in architecture d = DBConn() File "/opt/dak/dak/daklib/dbconn.py", line 2550, in __init__ self.__createconn() File "/opt/dak/dak/daklib/dbconn.py", line 2940, in __createconn self.__setuptables() File "/opt/dak/dak/daklib/dbconn.py", line 2627, in __setuptables autoload=True, useexisting=True) File "/usr/lib/python2.6/dist-packages/sqlalchemy/schema.py", line 265, in __new__ table._init(name, metadata, *args, **kw) File "/usr/lib/python2.6/dist-packages/sqlalchemy/schema.py", line 335, in _init self, include_columns File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/base.py", line 2264, in run_callable return conn.run_callable(callable_, *args, **kwargs) File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/base.py", line 1894, in run_callable return callable_(self, *args, **kwargs) File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/default.py", line 254, in reflecttable return insp.reflecttable(table, include_columns) File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/reflection.py", line 377, in reflecttable for col_d in self.get_columns(table_name, schema, **tblkw): File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/reflection.py", line 230, in get_columns **kw) File "<string>", line 1, in <lambda> File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/reflection.py", line 46, in cache ret = fn(self, con, *args, **kw) File "/usr/lib/python2.6/dist-packages/sqlalchemy/dialects/postgresql/base.py", line 1120, in get_columns info_cache=kw.get('info_cache')) File "<string>", line 1, in <lambda> File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/reflection.py", line 46, in cache ret = fn(self, con, *args, **kw) File "/usr/lib/python2.6/dist-packages/sqlalchemy/dialects/postgresql/base.py", line 1034, in get_table_oid raise exc.NoSuchTableError(table_name) sqlalchemy.exc.NoSuchTableError: files_archive_map REcompile() - panic: values still on machine stack gpg: directory `/root/.gnupg' created gpg: new configuration file `/root/.gnupg/gpg.conf' created gpg: WARNING: options in `/root/.gnupg/gpg.conf' are not yet active during this run gpg: keyring `/root/.gnupg/secring.gpg' created gpg: keyring `/root/.gnupg/pubring.gpg' created gpg: /root/.gnupg/trustdb.gpg: trustdb created /opt/dak/dak/daklib/dbconn.py:2627: SADeprecationWarning: useexisting is deprecated. Use extend_existing. autoload=True, useexisting=True) Traceback (most recent call last): File "/home/dak/bin/dak", line 237, in <module> main() File "/home/dak/bin/dak", line 217, in main module.main() File "/opt/dak/dak/admin.py", line 622, in main dispatch[subcommand](arguments) File "/opt/dak/dak/admin.py", line 265, in suite d = DBConn() File "/opt/dak/dak/daklib/dbconn.py", line 2550, in __init__ self.__createconn() File "/opt/dak/dak/daklib/dbconn.py", line 2940, in __createconn self.__setuptables() File "/opt/dak/dak/daklib/dbconn.py", line 2627, in __setuptables autoload=True, useexisting=True) File "/usr/lib/python2.6/dist-packages/sqlalchemy/schema.py", line 265, in __new__ table._init(name, metadata, *args, **kw) File "/usr/lib/python2.6/dist-packages/sqlalchemy/schema.py", line 335, in _init self, include_columns File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/base.py", line 2264, in run_callable return conn.run_callable(callable_, *args, **kwargs) File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/base.py", line 1894, in run_callable return callable_(self, *args, **kwargs) File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/default.py", line 254, in reflecttable return insp.reflecttable(table, include_columns) File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/reflection.py", line 377, in reflecttable for col_d in self.get_columns(table_name, schema, **tblkw): File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/reflection.py", line 230, in get_columns **kw) File "<string>", line 1, in <lambda> File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/reflection.py", line 46, in cache ret = fn(self, con, *args, **kw) File "/usr/lib/python2.6/dist-packages/sqlalchemy/dialects/postgresql/base.py", line 1120, in get_columns info_cache=kw.get('info_cache')) File "<string>", line 1, in <lambda> File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/reflection.py", line 46, in cache ret = fn(self, con, *args, **kw) File "/usr/lib/python2.6/dist-packages/sqlalchemy/dialects/postgresql/base.py", line 1034, in get_table_oid raise exc.NoSuchTableError(table_name) sqlalchemy.exc.NoSuchTableError: files_archive_map /opt/dak/dak/daklib/dbconn.py:2627: SADeprecationWarning: useexisting is deprecated. Use extend_existing. autoload=True, useexisting=True) Traceback (most recent call last): File "/home/dak/bin/dak", line 237, in <module> main() File "/home/dak/bin/dak", line 217, in main module.main() File "/opt/dak/dak/init_dirs.py", line 173, in main d = DBConn() File "/opt/dak/dak/daklib/dbconn.py", line 2550, in __init__ self.__createconn() File "/opt/dak/dak/daklib/dbconn.py", line 2940, in __createconn self.__setuptables() File "/opt/dak/dak/daklib/dbconn.py", line 2627, in __setuptables autoload=True, useexisting=True) File "/usr/lib/python2.6/dist-packages/sqlalchemy/schema.py", line 265, in __new__ table._init(name, metadata, *args, **kw) File "/usr/lib/python2.6/dist-packages/sqlalchemy/schema.py", line 335, in _init self, include_columns File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/base.py", line 2264, in run_callable return conn.run_callable(callable_, *args, **kwargs) File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/base.py", line 1894, in run_callable return callable_(self, *args, **kwargs) File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/default.py", line 254, in reflecttable return insp.reflecttable(table, include_columns) File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/reflection.py", line 377, in reflecttable for col_d in self.get_columns(table_name, schema, **tblkw): File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/reflection.py", line 230, in get_columns **kw) File "<string>", line 1, in <lambda> File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/reflection.py", line 46, in cache ret = fn(self, con, *args, **kw) File "/usr/lib/python2.6/dist-packages/sqlalchemy/dialects/postgresql/base.py", line 1120, in get_columns info_cache=kw.get('info_cache')) File "<string>", line 1, in <lambda> File "/usr/lib/python2.6/dist-packages/sqlalchemy/engine/reflection.py", line 46, in cache ret = fn(self, con, *args, **kw) File "/usr/lib/python2.6/dist-packages/sqlalchemy/dialects/postgresql/base.py", line 1034, in get_table_oid raise exc.NoSuchTableError(table_name) sqlalchemy.exc.NoSuchTableError: files_archive_map
Attachment:
dak.sh
Description: application/shellscript