hydra-module.nix: Automatically create postgres db user for hydra and an admin hydra account

[?]
Jul 28, 2013, 3:05 PM
ASPNI2AOC553JUKOI6SLF3TF56UPAHINMX2FBSGTQHXSDPN2DCSQC

Dependencies

  • [2] T4DBPQOF hydra-module: Run hydra-init during hydra-init.service
  • [*] D3MDJONY
  • [*] ZYEFL36Q Ported/merged properties from the TUD configuration's hydra-module

Change contents

  • edit in hydra-module.nix at line 154
    [5.907]
    [2.72]
    requires = [ "postgresql.service" ];
    after = [ "postgresql.service" ];
  • edit in hydra-module.nix at line 161
    [2.195]
    [2.195]
    pass=$(HOME=/root ${pkgs.openssl}/bin/openssl rand -base64 32)
    if [ ! -f ${baseDir}/.pgpass ]; then
    ${config.services.postgresql.package}/bin/psql postgres << EOF
    CREATE USER hydra PASSWORD '$pass';
    EOF
    ${config.services.postgresql.package}/bin/createdb -O hydra hydra
    cat > ${baseDir}/.pgpass-tmp << EOF
    localhost:*:hydra:hydra:$pass
    EOF
    chown hydra ${baseDir}/.pgpass-tmp
    chmod 600 ${baseDir}/.pgpass-tmp
    mv ${baseDir}/.pgpass-tmp ${baseDir}/.pgpass
    fi
  • edit in hydra-module.nix at line 175
    [2.264]
    [4.3887]
    ${config.services.postgresql.package}/bin/psql hydra << EOF
    BEGIN;
    INSERT INTO Users(userName, emailAddress, password) VALUES ('admin', '${cfg.notificationSender}', '$(echo -n $pass | sha1sum | cut -c1-40)');
    INSERT INTO UserRoles(userName, role) values('admin', 'admin');
    COMMIT;
    EOF
  • edit in hydra-module.nix at line 183
    [2.305]
    [5.949]
    serviceConfig.RemainAfterExit = true;