aboutsummaryrefslogtreecommitdiff
path: root/.circleci
diff options
context:
space:
mode:
authorEphraim Park <ephiepark@fb.com>2019-06-04 12:45:31 -0700
committerEphraim Park <ephiepark@fb.com>2019-06-05 13:12:51 -0700
commitf7b52ecbbad2d2632e0ae08f105d38e3f49a3673 (patch)
tree92e0ebb617aac35f8de6e87b0650b9f7712d9c7b /.circleci
parent348e107d99d8b482463f6eb5faf83df8f69cf1f1 (diff)
downloadlz4-f7b52ecbbad2d2632e0ae08f105d38e3f49a3673.tar.gz
circleci : use custom docker image with pre-installed dependencies
Diffstat (limited to '.circleci')
-rw-r--r--.circleci/config.yml33
-rw-r--r--.circleci/images/primary/Dockerfile12
2 files changed, 13 insertions, 32 deletions
diff --git a/.circleci/config.yml b/.circleci/config.yml
index a620cd1e..3abcbc1d 100644
--- a/.circleci/config.yml
+++ b/.circleci/config.yml
@@ -27,8 +27,7 @@ jobs:
# To see the list of pre-built images that CircleCI provides for most common languages see
# https://circleci.com/docs/2.0/circleci-images/
docker:
- - image: circleci/build-image:ubuntu-14.04-XXL-upstart-1189-5614f37
- command: /sbin/init
+ - image: fbopensource/lz4-circleci-primary:0.0.4
steps:
# Machine Setup
# If you break your build into multiple jobs with workflows, you will probably want to do the parts of this that are relevant in each
@@ -38,36 +37,6 @@ jobs:
# In many cases you can simplify this from what is generated here.
# 'See docs on artifact collection here https://circleci.com/docs/2.0/artifacts/'
- run: mkdir -p $CIRCLE_ARTIFACTS $CIRCLE_TEST_REPORTS
- # Dependencies
- # This would typically go in either a build or a build-and-test job when using workflows
- # Restore the dependency cache
- - restore_cache:
- keys:
- # This branch if available
- - v1-dep-{{ .Branch }}-
- # Default branch if not
- - v1-dep-dev-
- # Any branch if there are none on the default branch - this should be unnecessary if you have your default branch configured correctly
- - v1-dep-
- # This is based on your 1.0 configuration file or project settings
- - run: sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test; sudo apt-get -y -qq update
- - run: sudo apt-get -y install qemu-system-ppc qemu-user-static gcc-powerpc-linux-gnu
- - run: sudo apt-get -y install qemu-system-arm gcc-arm-linux-gnueabi libc6-dev-armel-cross gcc-aarch64-linux-gnu libc6-dev-arm64-cross
- - run: sudo apt-get -y install libc6-dev-i386 clang gcc-5 gcc-5-multilib gcc-6 valgrind
- # Save dependency cache
- - save_cache:
- key: v1-dep-{{ .Branch }}-{{ epoch }}
- paths:
- # This is a broad list of cache paths to include many possible development environments
- # You can probably delete some of these entries
- - vendor/bundle
- - ~/virtualenvs
- - ~/.m2
- - ~/.ivy2
- - ~/.bundle
- - ~/.go_workspace
- - ~/.gradle
- - ~/.cache/bower
# Test
# This would typically be a build job when using workflows, possibly combined with build
# This is based on your 1.0 configuration file or project settings
diff --git a/.circleci/images/primary/Dockerfile b/.circleci/images/primary/Dockerfile
new file mode 100644
index 00000000..77670148
--- /dev/null
+++ b/.circleci/images/primary/Dockerfile
@@ -0,0 +1,12 @@
+FROM circleci/buildpack-deps:bionic
+
+RUN sudo apt-get -y -qq update
+RUN sudo apt-get -y install software-properties-common
+RUN sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
+RUN sudo apt-get -y install cmake
+RUN sudo apt-get -y install qemu-system-ppc qemu-user-static qemu-system-arm
+RUN sudo apt-get -y install libc6-dev-armel-cross libc6-dev-arm64-cross libc6-dev-i386
+RUN sudo apt-get -y install clang clang-tools
+RUN sudo apt-get -y install gcc-5 gcc-5-multilib gcc-6
+RUN sudo apt-get -y install valgrind
+RUN sudo apt-get -y install gcc-multilib-powerpc-linux-gnu gcc-powerpc-linux-gnu gcc-arm-linux-gnueabi gcc-aarch64-linux-gnu