我正在尝试使用hakyll
设置GitHub Pages网站,但在cabal
中运行时,travis
似乎无法解析依赖关系。
所有内容似乎都在本地工作,但是当我尝试将travis
集成到我的项目中时,看起来无法解决所需的依赖项(但是可以在我的开发环境中解决它。)
看起来cabal
在hakyll ==4.7.*
上找不到travis
,即使依赖项已在我的cabal
文件中定义。有谁知道我的明显错误可能是什么?也许我需要使用stack
代替cabal
?
我在这里添加了来自Travis的部分日志(and a full Travis log here):
...
Resolving dependencies...
Configuring tylerjfisher-github-io-0.1.0.0...
cabal: At least the following dependencies are missing:
hakyll ==4.7.*
travis_time:end:097fdfc3:start=1453342815270747376,finish=1453342815885794604,duration=615047228
[0K
[31;1mThe command "cabal configure --disable-library-profiling --disable-tests --disable-library-coverage --disable-benchmarks --disable-split-objs" failed and exited with 1 during .[0m
...
以下是我用来收集GitHub页面网站依赖项的cabal
文件。
name: tylerjfisher-github-io
version: 0.1.0.0
build-type: Simple
cabal-version: >= 1.10
executable site
main-is: site.hs
build-depends: base == 4.*
, hakyll == 4.7.*
ghc-options: -threaded
default-language: Haskell2010
我使用的travis.yml
文件如下所示,来自使用hakyll
的教程。我知道使用教程通常不赞成,但我是Haskell的新手。
language: haskell
sudo: required
ghc: 7.8
branches:
only:
- source
before_install:
- git submodule foreach --recursive 'git checkout master; git ls-files | grep -v README
| grep -v CNAME | xargs -r git rm'
install:
- curl http://bin.begriffs.com/hakyll/cabal-sandbox.tar.xz | tar xJ
- cabal sandbox init
- cabal configure --disable-library-profiling --disable-tests --disable-library-coverage --disable-benchmarks --disable-split-objs
before_script:
- git config --global user.email "$GIT_EMAIL"
- git config --global user.name "$GIT_NAME"
script: cabal run -j build
after_script:
- cd _site
- export REMOTE=$(git config remote.origin.url | sed 's/.*:\/\///')
- git remote add github https://${GH_TOKEN}@${REMOTE}
- git add --all
- git status
- git commit -m "Built by Travis ( build $TRAVIS_BUILD_NUMBER )"
- git push github master:master | grep -v http
deploy:
provider: github
api-key:
secure: Ck/yT5hanQ/eML4Md8oFIC/AWTbBD4D71+MMhglRR8T624jKJxjgctVWxSbhX+8nEoXYoEGzzolwMQBL6CsbIc5fl9F7ou21jbReipitts2AIb/nLPrn0y4ICXVBc1Tkq9arE4isFp1pJIKiREzk+gOocFZSt7vQF7J+aaD+9e+mTylfCi0V8WFwYyKKgO17+N1z4UD3RVZYyj0ibmVohFC+Ot0HTO4VeJrSaokCsnuJ1Ab8AovZxaaT+F6wQAo9fYqev+ZmRy84iUo7q034lU0CSZHYTBmnCjXi41/c/dFLOWKBM8mmwT4Xc8sa0akxxLfHmk+MHTgpGC57rGeGk/sJWFtbCUk46CbfGOMHU+refgXp9l04k6O5Ij77EA2m1mjw1tirK+VIsudoAYf3Lb7ul3eKdTS4yPFrSjOv6ETKt+1ifhxd7C7F0PGbwyz2lNgmIOXT3MjobSeopWtctRYcxjjjttR4QLcvEQT3MkqJv90lFnhC46QQPVFvaTrE0XhXSv9EBcwb/rkqugWUc/sEPze+SdD4yxdyX/r98Rj+BTky55jcCM+kIHQAX1xlhmvngsIxUqM82qMD04whmczi1fGPimbE+aqKcEPycyEcZDObUcZ3G9/ytLl3GNFbe7dd/sROWhm49slAIa5bpIo7GYRrjLCPBFKrdsmS9+Y=