Skip to content

WIP: evaluate Circle CI #23171

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 5 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
80 changes: 80 additions & 0 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
version: 2
workflows:
version: 2
linux-builds:
jobs:
- build-i686
# - build-x86_64

jobs:
build-i686:
docker:
- image: circleci/python:2.7
environment:
JULIA_CPU_CORES: 6
JULIA_TEST_MAXRSS_MB: 800
ARCH: i686
steps: &steps
- run: | # install build dependencies
sudo apt-get install -y g++-4.8-multilib gfortran-4.8-multilib \
time ccache bar &&
for prog in gcc g++ gfortran; do
sudo ln -s /usr/bin/$prog-4.8 /usr/local/bin/$prog;
done
- checkout # circle ci code checkout step
# (FIXME: need to unset url."ssh://[email protected]".insteadOf or libgit2 tests fail)
- run: | # checkout merge commit, set versioning info and Make.user variables
git config --global --unset url."ssh://[email protected]".insteadOf &&
if [ -n "$CIRCLE_PR_NUMBER" ]; then
git fetch origin +refs/pull/$CIRCLE_PR_NUMBER/merge &&
git checkout -qf FETCH_HEAD;
fi &&
make -C base version_git.jl.phony &&
echo "override ARCH = $ARCH" | tee -a Make.user &&
for var in FORCE_ASSERTIONS LLVM_ASSERTIONS USECCACHE NO_GIT; do
echo "override $var = 1" | tee -a Make.user;
done &&
echo "$ARCH $HOME $(date +%Y%W)" | tee /tmp/weeknumber
- restore_cache: # silly to take a checksum of the tag file here instead of
keys: # its contents but this is the only thing that works on circle
- ccache-{{ checksum "/tmp/weeknumber" }}
- run: | # compile julia deps
contrib/download_cmake.sh &&
make -j8 -C deps || make
- run: | # build julia, output ccache stats when done
make -j8 all &&
make prefix=/tmp/julia install &&
ccache -s &&
make build-stats
- run: | # move source tree out of the way, run tests from install tree
cd .. &&
mv project julia-src &&
/tmp/julia/bin/julia -e 'versioninfo()' &&
/tmp/julia/bin/julia --precompiled=no -e 'true' &&
/tmp/julia/bin/julia-debug --precompiled=no -e 'true' &&
pushd /tmp/julia/share/julia/test &&
/tmp/julia/bin/julia --check-bounds=yes runtests.jl all --skip socket | bar -i 30 &&
/tmp/julia/bin/julia --check-bounds=yes runtests.jl libgit2-online download pkg &&
popd &&
mkdir /tmp/embedding-test &&
make check -C /tmp/julia/share/doc/julia/examples/embedding \
JULIA=/tmp/julia/bin/julia BIN=/tmp/embedding-test \
"$(cd julia-src && make print-CC)" &&
mv julia-src project
# - run: cd project && make -C doc deploy
# - run:
# command: sudo dmesg
# when: on_fail
- save_cache:
key: ccache-{{ checksum "/tmp/weeknumber" }}
paths:
- ~/.ccache

# build-x86_64:
# docker:
# - image: circleci/python:2.7
# environment:
# JULIA_CPU_CORES: 6
# JULIA_TEST_MAXRSS_MB: 800
# ARCH: x86_64
# steps: *steps
30 changes: 15 additions & 15 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,21 +3,21 @@ sudo: false
dist: trusty
matrix:
include:
- os: linux
env: ARCH="i686"
compiler: "g++ -m32"
addons:
apt:
packages:
- libssl1.0.0
- bar
- time
- gcc-multilib
- g++-multilib
- make:i386
- libssl-dev:i386
- gfortran
- gfortran-multilib
# - os: linux
# env: ARCH="i686"
# compiler: "g++ -m32"
# addons:
# apt:
# packages:
# - libssl1.0.0
# - bar
# - time
# - gcc-multilib
# - g++-multilib
# - make:i386
# - libssl-dev:i386
# - gfortran
# - gfortran-multilib
- os: linux
env: ARCH="x86_64"
compiler: "g++ -m64"
Expand Down