Revert "Move build logic for the core hydra package into its own default.nix."
[?]
Apr 12, 2017, 11:07 AM
ICYJNJWHY6KBNLM2EMSW7VJ35OIOHN26JO3FG32VYTKNLFNZAREQCDependencies
- [2]
UBPWXGKFMove build logic for the core hydra package into its own default.nix. - [3]
X4KYZJBQUse latest nixUnstable - [4]
FV2M6MOThydra: use autoconf/-make - [5]
D3MDJONY - [6]
CLXEECMF* Start putting build results in a database. - [7]
T4LLYESZ* Nix expression for building Hydra. - [8]
GX5R7OKFDoh - [9]
IZYR3KTLrelease.nix: Get rid of the "system" argument - [10]
6K5PBUUNUse buildEnv to combine Hydra's Perl dependencies - [11]
YQWH4POV* Simplify. - [12]
DWQCLOPQTweaks for nix-shell - [13]
SFMN6AFQ* Include a license. - [14]
6A6CZ7SCdraft manual - [15]
GBCPEGYCAdd a .gitignore - [16]
TEGLW4X3* hydra/release.nix: remove supportOldDBs - [17]
ZGBU7H7P* Pass nixUnstable to the tarball build. - [18]
RRUSDIBLAdd a job for the manual - [19]
SAFVRDTK* Put Hydra's dependencies so that they can easily be installed in a - [20]
X27GNHDV* Basic job info in the database. - [21]
DO432JDJ* Build Hydra with the Nix Perl bindings. - [22]
NVMDS7GEAdd README.md - [23]
ZL4LHHZFRemove empty files - [24]
HPIJ35SG - [25]
UHMUHQMUhydra: fix tarball build, add pre suffix to tarballs - [26]
X7IAG7JTSimplify running nix-shell - [27]
U2BNO3C5hydra: fix build job - [28]
G2ZB6464first test, not yet in buildprocess - [*]
WQ2VQ7H3Use hydra-module.nix in the tests
Change contents
- file deletion: default.nix
{ stdenv, hydraSrc ? { outPath = ./.; revCount = 1234; rev = "abcdef"; }, version ? builtins.readFile ./version + "." + toString hydraSrc.revCount + "." + hydraSrc.rev, makeWrapper, libtool, unzip, nukeReferences, sqlite, libpqxx, guile ? null, perl, nix, postgresql92, perlPackages, openssh, buildEnv, autoreconfHook, pkgconfig, topGit, mercurial, darcs, subversion, bazaar, openssl, bzip2, libxslt, docbook_xsl, coreutils, findutils, pixz, gzip, lzma, gnutar, git, gnused, rpm, dpkg, cdrkit, boehmgc, aws-sdk-cpp}: assert builtins.compareVersions "6" stdenv.cc.cc.version < 1;let perlDeps = buildEnv {name = "hydra-perl-deps";paths = with perlPackages;[ ModulePluggableCatalystActionRESTCatalystAuthenticationStoreDBIxClassCatalystDevelCatalystDispatchTypeRegexCatalystPluginAccessLogCatalystPluginAuthorizationRolesCatalystPluginCaptchaCatalystPluginSessionStateCookieCatalystPluginSessionStoreFastMmapCatalystPluginStackTraceCatalystPluginUnicodeEncodingCatalystTraitForRequestProxyBaseCatalystViewDownloadCatalystViewJSONCatalystViewTTCatalystXScriptServerStarmanCryptRandPasswdDBDPgDBDSQLiteDataDumpDateTimeDigestSHA1EmailMIMEEmailSenderFileSlurpIOCompressIPCRunJSONXSLWPLWPProtocolHttpsNetAmazonS3NetStatsdPadWalkerReadonlySQLSplitStatementSetScalarStarmanSysHostnameLongTestMoreTextDiffTextTableXMLSimplenixnix.perl-bindingsgitboehmgcaws-sdk-cpp];};in stdenv.mkDerivation {name = "hydra-${version}";src = hydraSrc;buildInputs =[ makeWrapper autoreconfHook libtool unzip nukeReferences pkgconfig sqlite libpqxxtopGit mercurial darcs subversion bazaar openssl bzip2 libxsltguile # optional, for Guile + Guix supportperlDeps perl nixpostgresql92 # for running the tests];hydraPath = stdenv.lib.makeBinPath ([ sqlite subversion openssh nix coreutils findutils pixzgzip bzip2 lzma gnutar unzip git topGit mercurial darcs gnused bazaar] ++ stdenv.lib.optionals stdenv.isLinux [ rpm dpkg cdrkit ] );configureFlags = [ "--with-docbook-xsl=${docbook_xsl}/xml/xsl/docbook" ];preHook = ''PATH=$(pwd)/src/hydra-evaluator:$(pwd)/src/script:$(pwd)/src/hydra-eval-jobs:$(pwd)/src/hydra-queue-runner:$PATHPERL5LIB=$(pwd)/src/lib:$PERL5LIB;'';preCheck = ''patchShebangs .export LOGNAME=${LOGNAME:-foo}'';postInstall = ''mkdir -p $out/nix-supportfor i in $out/bin/*; do #*/read -n 4 chars < $iif [[ $chars =~ ELF ]]; then continue; fiwrapProgram $i \--prefix PERL5LIB ':' $out/libexec/hydra/lib:$PERL5LIB \--prefix PATH ':' $out/bin:$hydraPath \--set HYDRA_RELEASE ${version} \--set HYDRA_HOME $out/libexec/hydra \--set NIX_RELEASE ${nix.name or "unknown"}done'';dontStrip = true;passthru.perlDeps = perlDeps;} - edit in release.nix at line 31[30.532][3.413]
version = builtins.readFile ./version + "." + toString hydraSrc.revCount + "." + hydraSrc.rev; - replacement in release.nix at line 50
stdenv6 = overrideCC stdenv gcc6;/*nix = overrideDerivation nixUnstable (attrs: {src = fetchFromGitHub {owner = "NixOS";repo = "nix";rev = "4be4f6de56f4de77f6a376f1a40ed75eb641bb89";sha256 = "0icvbwpca1jh8qkdlayxspdxl5fb0qjjd1kn74x6gs6iy66kndq6";};buildInputs = attrs.buildInputs ++ [ autoreconfHook bison flex ];nativeBuildInputs = attrs.nativeBuildInputs ++ [ aws-sdk-cpp' autoconf-archive ];configureFlags = attrs.configureFlags + " --disable-doc-gen";preConfigure = "./bootstrap.sh; mkdir -p $doc $man";});*/nix = nixUnstable;perlDeps = buildEnv {name = "hydra-perl-deps";paths = with perlPackages;[ ModulePluggableCatalystActionRESTCatalystAuthenticationStoreDBIxClassCatalystDevelCatalystDispatchTypeRegexCatalystPluginAccessLogCatalystPluginAuthorizationRolesCatalystPluginCaptchaCatalystPluginSessionStateCookieCatalystPluginSessionStoreFastMmapCatalystPluginStackTraceCatalystPluginUnicodeEncodingCatalystTraitForRequestProxyBaseCatalystViewDownloadCatalystViewJSONCatalystViewTTCatalystXScriptServerStarmanCryptRandPasswdDBDPgDBDSQLiteDataDumpDateTimeDigestSHA1EmailMIMEEmailSenderFileSlurpIOCompressIPCRunJSONXSLWPLWPProtocolHttpsNetAmazonS3NetStatsdPadWalkerReadonlySQLSplitStatementSetScalarStarmanSysHostnameLongTestMoreTextDiffTextTableXMLSimplenixnix.perl-bindingsgitboehmgcaws-sdk-cpp'];}; - replacement in release.nix at line 122
callPackage ./. {stdenv = stdenv6 // { mkDerivation = args: releaseTools.nixBuild (args // {stdenv = stdenv6;postUnpack = optionalString (!shell) ''# Clean up when building from a working tree.(cd $sourceRoot && (git ls-files -o --directory | xargs -r rm -rfv)) || true'';}); };inherit (gitAndTools) topGit;nix = nixUnstable;aws-sdk-cpp = aws-sdk-cpp';hydraSrc = if shell then null else hydraSrc;releaseTools.nixBuild {name = "hydra-${version}";src = if shell then null else hydraSrc;stdenv = overrideCC stdenv gcc6;buildInputs =[ makeWrapper autoconf automake libtool unzip nukeReferences pkgconfig sqlite libpqxxgitAndTools.topGit mercurial darcs subversion bazaar openssl bzip2 libxsltguile # optional, for Guile + Guix supportperlDeps perl nixpostgresql92 # for running the tests];hydraPath = lib.makeBinPath ([ sqlite subversion openssh nix coreutils findutils pixzgzip bzip2 lzma gnutar unzip git gitAndTools.topGit mercurial darcs gnused bazaar] ++ lib.optionals stdenv.isLinux [ rpm dpkg cdrkit ] );postUnpack = optionalString (!shell) ''# Clean up when building from a working tree.(cd $sourceRoot && (git ls-files -o --directory | xargs -r rm -rfv)) || true'';configureFlags = [ "--with-docbook-xsl=${docbook_xsl}/xml/xsl/docbook" ];preHook = ''PATH=$(pwd)/src/hydra-evaluator:$(pwd)/src/script:$(pwd)/src/hydra-eval-jobs:$(pwd)/src/hydra-queue-runner:$PATHPERL5LIB=$(pwd)/src/lib:$PERL5LIB;'';preConfigure = "autoreconf -vfi";enableParallelBuilding = true;preCheck = ''patchShebangs .export LOGNAME=${LOGNAME:-foo}'';postInstall = ''mkdir -p $out/nix-supportfor i in $out/bin/*; doread -n 4 chars < $iif [[ $chars =~ ELF ]]; then continue; fiwrapProgram $i \--prefix PERL5LIB ':' $out/libexec/hydra/lib:$PERL5LIB \--prefix PATH ':' $out/bin:$hydraPath \--set HYDRA_RELEASE ${version} \--set HYDRA_HOME $out/libexec/hydra \--set NIX_RELEASE ${nix.name or "unknown"}done''; # */dontStrip = true;meta.description = "Build of Hydra on ${system}";passthru.perlDeps = perlDeps; - replacement in release.nix at line 184
manual = pkgs.runCommand "hydra-manual-${build.x86_64-linux.version}"manual = pkgs.runCommand "hydra-manual-${version}"