Skip to content
Draft
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
13 changes: 12 additions & 1 deletion .dockerignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,13 @@
*.sublime-project
aws_machines
Brewfile
build_times
build_types
codeship-services.yml
codeship-steps*
codeship.aes
CONTRIBUTING.md
COPYRIGHT.txt
README.md
tmp
.git
Vagrantfile
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -108,3 +108,7 @@ bundler_stubs/*

vendor/bundle/*
*.db

# Codeship Docker Plattform
codeship.aes
dockercfg
79 changes: 55 additions & 24 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,34 +1,65 @@
FROM ruby:2.2.1
MAINTAINER flo@codeship.com
FROM ruby:2.3.1-slim
MAINTAINER maintainers@codeship.com

ENV \
DEBIAN_DISTRIBUTION="jessie" \
DEBIAN_FRONTEND="noninteractive" \
NODE_VERSION="4.x" \
PHANTOMJS_VERSION="1.9.7"

RUN \
apt-get update -y && \
apt-get upgrade -y && \
DEBIAN_FRONTEND=noninteractive apt-get install -y \
apt-get update \
&& apt-get install -y --no-install-recommends \
apt-transport-https \
&& curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add - \
&& echo "deb https://deb.nodesource.com/node_${NODE_VERSION} ${DEBIAN_DISTRIBUTION} main" > /etc/apt/sources.list.d/nodesource.list \
&& curl -s https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add - \
&& echo "deb http://apt.postgresql.org/pub/repos/apt/ ${DEBIAN_DISTRIBUTION}-pgdg main" > /etc/apt/sources.list.d/postgresql.list \
&& apt-get update \
&& apt-get install -y --no-install-recommends \
postgresql-client-9.5 \
apt-utils \
build-essential \
bzip2 \
gifsicle \
git \
graphicsmagick-imagemagick-compat \
jhead \
jpegoptim \
libfontconfig \
libfreetype6 \
libjpeg-progs \
libpq-dev \
nodejs \
apt-utils \
vim git wget libfreetype6 libfontconfig bzip2 time python-pip

ENV PHANTOMJS_VERSION 1.9.7
optipng \
postgresql-client-9.4 \
python-pip \
time \
vim \
wget \
&& apt-get clean -y \
&& rm -rf /var/lib/apt/lists/* \
&& pip install awscli \
&& npm config set "production" "true" \
&& npm config set "loglevel" "error" \
&& npm install npm -g \
&& npm install -g svgo

RUN \
mkdir -p /srv/var && \
wget -q --no-check-certificate -O /tmp/phantomjs-$PHANTOMJS_VERSION-linux-x86_64.tar.bz2 https://s3.amazonaws.com/codeship.io/checkbot/archives/phantomjs-$PHANTOMJS_VERSION-linux-x86_64.tar.bz2 && \
tar -xjf /tmp/phantomjs-$PHANTOMJS_VERSION-linux-x86_64.tar.bz2 -C /tmp && \
rm -f /tmp/phantomjs-$PHANTOMJS_VERSION-linux-x86_64.tar.bz2 && \
mv /tmp/phantomjs-$PHANTOMJS_VERSION-linux-x86_64/ /srv/var/phantomjs && \
ln -s /srv/var/phantomjs/bin/phantomjs /usr/bin/phantomjs
wget --no-verbose --output-document /tmp/phantomjs-linux-x86_64.tar.bz2 "https://s3.amazonaws.com/codeship-packages/phantomjs-${PHANTOMJS_VERSION}-linux-x86_64.tar.bz2" \
&& tar -xaf /tmp/phantomjs-linux-x86_64.tar.bz2 --directory /tmp/ \
&& mv "/tmp/phantomjs-${PHANTOMJS_VERSION}-linux-x86_64/bin/phantomjs" /usr/bin/phantomjs \
&& rm -rf /tmp/phantomjs-linux-x86_64.tar.bz2 "/tmp/phantomjs-${PHANTOMJS_VERSION}-linux-x86_64"

RUN pip install awscli
RUN mkdir /code
WORKDIR /code

RUN mkdir -p /app
WORKDIR /app
COPY Gemfile ./Gemfile
COPY Gemfile.lock ./Gemfile.lock
COPY vendor ./vendor
RUN bundle install -j24
RUN gem install parallel_tests
COPY Gemfile Gemfile.lock vendor ./
RUN \
bundle install --jobs 20 --retry 5 \
&& gem install parallel_tests

WORKDIR /code
COPY . ./

RUN \
mkdir -p ./public/backups/default tmp
15 changes: 7 additions & 8 deletions codeship-services.yml
Original file line number Diff line number Diff line change
@@ -1,19 +1,18 @@
app:
build:
image: flomotlik/discourse
dockerfile_path: Dockerfile
environment:
SECRET_TOKEN: abcdefghij
REDIS_ADDRESS: redis://redis:6379
RAILS_ENV: test
DATABASE_HOST: postgresql
PGHOST: postgresql
PGUSER: postgres
RAILS_ENV: test
REDIS_ADDRESS: redis://redis:6379
SECRET_TOKEN: abcdefghij
links:
- postgresql
- redis
cached: true
volumes:
- ./:/code
postgresql:
image: postgres:9.3.6
image: postgres:9.5
redis:
image: redis:3.0.2
image: redis:3.2-alpine
10 changes: 5 additions & 5 deletions codeship-steps.yml
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
- type: parallel
encrypted_dockercfg_path: dockercfg.encrypted
service: app
steps:
- service: app
- name: Specs
command: ./script/ci/ci.parallel spec
- service: app
- name: Plugins
command: ./script/ci/ci.parallel plugin
- service: app
- name: QUnit
command: ./script/ci/ci.parallel qunit
- service: app
- name: PhantomJS
command: phantomjs --help
1 change: 0 additions & 1 deletion dockercfg.encrypted

This file was deleted.