Merge e4689b5ecf0495f436db1fedf4001bc62845aa76 into 2daf84a6c10d22fcd4151fa9fcff9bea5407293a

This commit is contained in:
Monty Taylor 2024-03-09 21:44:56 -07:00 committed by GitHub
commit 288abb9bf7
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
6 changed files with 61 additions and 28 deletions

View File

@ -2,4 +2,4 @@
.gitignore
.git
Dockerfile
Dockerfile.centos7
Dockerfile.centos

View File

@ -6,32 +6,40 @@ sudo: false
matrix:
include:
# test on docker+centos7
# test on docker+centos
- os: linux
compiler: clang
services:
- docker
sudo: true
dist: trusty
env: DOCKERFILE=Dockerfile.centos7
dist: bionic
env: DOCKERFILE=Dockerfile.centos
before_install: []
# build the builder image separately to run the tests
install:
- docker build -t tippecanoe-image-builder -f ${DOCKERFILE} . --target=builder
- docker build -t tippecanoe-image -f ${DOCKERFILE} .
# run tippecanoe --help to make sure runtime libs are correct
script:
- docker run -it tippecanoe-image
- docker run -it tippecanoe-image-builder
- docker run -it tippecanoe-image tippecanoe --help
# test on docker+ubuntu
- os: linux
compiler: clang
services:
- docker
sudo: true
dist: trusty
dist: bionic
env: DOCKERFILE=Dockerfile
before_install: []
# build the builder image separately to run the tests
install:
- docker build -t tippecanoe-image-builder -f ${DOCKERFILE} . --target=builder
- docker build -t tippecanoe-image -f ${DOCKERFILE} .
# run tippecanoe --help to make sure runtime libs are correct
script:
- docker run -it tippecanoe-image
- docker run -it tippecanoe-image-builder
- docker run -it tippecanoe-image tippecanoe --help
# debug+integer-santizer build
- os: linux
compiler: clang

View File

@ -1,13 +1,14 @@
# Allow setting version as an argument
ARG UBUNTU_VERSION=20.04
# Start from ubuntu
FROM ubuntu:16.04
FROM ubuntu:${UBUNTU_VERSION} as builder
# Update repos and install dependencies
RUN apt-get update \
&& apt-get -y upgrade \
&& apt-get -y install build-essential libsqlite3-dev zlib1g-dev
&& apt-get -y install make gcc g++ libsqlite3-dev zlib1g-dev
# Create a directory and copy in all files
RUN mkdir -p /tmp/tippecanoe-src
# Copy in all files
WORKDIR /tmp/tippecanoe-src
COPY . /tmp/tippecanoe-src
@ -17,3 +18,15 @@ RUN make \
# Run the tests
CMD make test
# Build final image
FROM ubuntu:${UBUNTU_VERSION}
# Install runtime dependencies
RUN apt-get update \
&& apt-get install -y libsqlite3-0 zlib1g \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
# Copy built files into final image
COPY --from=builder /usr/local/ /usr/local/

27
Dockerfile.centos Normal file
View File

@ -0,0 +1,27 @@
ARG CENTOS_VERSION=8
# Start from centos
FROM centos:${CENTOS_VERSION} as builder
# Intall dependencies
RUN yum install -y make sqlite-devel zlib-devel gcc-c++ diffutils perl
# Copy in all files
WORKDIR /tmp/tippecanoe-src
COPY . /tmp/tippecanoe-src
# Build tippecanoe
RUN make \
&& make install
# Run the tests
CMD make test
# Build final image
FROM centos:${CENTOS_VERSION}
# Install runtime dependencies
RUN yum install -y sqlite-libs zlib
# Copy built files into final image
COPY --from=builder /usr/local/ /usr/local/

View File

@ -1,15 +0,0 @@
FROM centos:7
RUN yum install -y make sqlite-devel zlib-devel bash git gcc-c++
# Create a directory and copy in all files
RUN mkdir -p /tmp/tippecanoe-src
WORKDIR /tmp/tippecanoe-src
COPY . /tmp/tippecanoe-src
# Build tippecanoe
RUN make \
&& make install
# Run the tests
CMD make test

View File

@ -690,7 +690,7 @@ uses md2man (`gem install md2man`).
Linux:
sudo apt-get install build-essential libsqlite3-dev zlib1g-dev
sudo apt-get install gcc g++ make libsqlite3-dev zlib1g-dev
Then build: