mirror of
https://github.com/hasura/graphql-engine.git
synced 2024-09-11 10:46:25 +03:00
Before these changes: **pro build:** 52min **oss build**: 62min After: **pro build:** 25min **oss build**: 23min This decreases overall CI wall-clock time from 1:50:00 to 1:15:00. Despite bumping the instance size for OSS builds this should (back-of-envelope) **_cut_ CI costs** for haskell build stuff by ~33% Future work will: - cache library dependency build products: saves further ~8 min (build and wallclock) - use the oss lib build products in pro as well: saves further ~5min server time (i.e. saves money for same build time) - maybe cache the rest of `dist-newstyle`: savings depend on the diff (at most 4.5 min; is this even worthwhile?) PR-URL: https://github.com/hasura/graphql-engine-mono/pull/2937 GitOrigin-RevId: a1faceaf1adfc1701e634a887f2cdabacab5cddd
100 lines
3.1 KiB
Plaintext
100 lines
3.1 KiB
Plaintext
-- Global project configuration.
|
|
--
|
|
-- This file can be overridden with cabal.project.local (see e.g. cabal.project.dev)
|
|
--
|
|
-- If you need to switch between several local configurations you can also
|
|
-- create a symlink to this file with a different name, e.g.:
|
|
-- $ ln -s cabal.project cabal.project.myconfig
|
|
-- $ ln -s cabal.project.freeze cabal.project.myconfig.freeze
|
|
-- ...and then create a new set of overrides in:
|
|
-- cabal.project.myconfig.local
|
|
-- ...and then invoke cabal with
|
|
-- $ cabal new-build --project-file=cabal.project.myconfig
|
|
--
|
|
-- See: https://www.haskell.org/cabal/users-guide/nix-local-build.html#configuring-builds-with-cabal-project
|
|
|
|
with-compiler: ghc-8.10.7
|
|
|
|
-- package-level parallelism:
|
|
jobs: $ncpus
|
|
|
|
packages: server
|
|
|
|
constraints:
|
|
-- Ensure we don't end up with a freeze file that forces an incompatible
|
|
-- version in CI for `Setup.hs` scripts.
|
|
setup.Cabal <3.4
|
|
|
|
package *
|
|
-- NOTE: this gets applied to both local (hasura) packages and dependencies,
|
|
-- but optimizations for local hasura packages are overridden/controlled
|
|
-- via the 'optimize-hasura' flag.
|
|
optimization: 2
|
|
-- For tooling, e.g. 'weeder', and IDE-like stuff:
|
|
ghc-options: -fwrite-ide-info
|
|
|
|
haddock-html: true
|
|
haddock-hoogle: true
|
|
haddock-hyperlink-source: true
|
|
haddock-quickjump: true
|
|
|
|
package graphql-engine
|
|
ghc-options: -j
|
|
haddock-options: "--show-all"
|
|
|
|
source-repository-package
|
|
type: git
|
|
location: https://github.com/hasura/kriti-lang.git
|
|
tag: v0.2.2
|
|
|
|
source-repository-package
|
|
type: git
|
|
location: https://github.com/hasura/pg-client-hs.git
|
|
tag: f28738e18b7038627fb59b93dbc67929fe427c57
|
|
|
|
source-repository-package
|
|
type: git
|
|
location: https://github.com/hasura/graphql-parser-hs.git
|
|
tag: 36212bcc3815434a1bc25dc96f091a783b880ca4
|
|
|
|
source-repository-package
|
|
type: git
|
|
location: https://github.com/hasura/ci-info-hs.git
|
|
tag: be578a01979fc95137cc2c84827f9fafb99df60f
|
|
|
|
source-repository-package
|
|
type: git
|
|
location: https://github.com/hasura/pool.git
|
|
tag: bc4c3f739a8fb8ec4444336a34662895831c9acf
|
|
|
|
source-repository-package
|
|
type: git
|
|
location: https://github.com/fpco/odbc.git
|
|
tag: 7c0cea45d0b779419eb16177407c4ee9e7ba4c6f
|
|
|
|
package odbc
|
|
ghc-options: -Wwarn
|
|
-- Our CI compiles with -Werror, which is also applied to those packages
|
|
-- while it's fine for packages we maintain, we can't actually enforce
|
|
-- that third-party packages are warning-free, hence this -Wno-error.
|
|
-- When the changes in odbc are released, we can instead depend on
|
|
-- the hackage version, and remove it from this list of packages.
|
|
|
|
source-repository-package
|
|
type: git
|
|
location: https://github.com/hasura/ekg-core.git
|
|
tag: e31b47d5c67e1347f141079ad2d18f682e1b046f
|
|
|
|
source-repository-package
|
|
type: git
|
|
location: https://github.com/hasura/ekg-json.git
|
|
tag: 098e3a5951c4991c823815706f1f58f608bb6ec3
|
|
|
|
-- This is v1.2.3.2 with https://github.com/haskell/text/pull/348
|
|
-- cherry-picked. When 1.3 is released we can move from this fork.
|
|
source-repository-package
|
|
type: git
|
|
location: https://github.com/hasura/text.git
|
|
tag: 874c3164fadf39a83382359d2b6ce941a3e134da
|
|
|