Skip to content
Snippets Groups Projects
Verified Commit 8a61d5f5 authored by Janne Mareike Koschinski's avatar Janne Mareike Koschinski
Browse files

allow building different quassel versions

parent 7f61686c
No related branches found
No related tags found
No related merge requests found
...@@ -17,16 +17,22 @@ RUN apk add --no-cache \ ...@@ -17,16 +17,22 @@ RUN apk add --no-cache \
openldap-dev \ openldap-dev \
ninja \ ninja \
paxmark \ paxmark \
boost-dev \
qt5-qtbase-dev \ qt5-qtbase-dev \
qt5-qtscript-dev \ qt5-qtscript-dev \
qt5-qtbase-postgresql \ qt5-qtbase-postgresql \
qt5-qtbase-sqlite qt5-qtbase-sqlite
ARG QUASSEL_VERSION=""
ARG QUASSEL_BRANCH="master"
# setup repo # setup repo
RUN mkdir /quassel && \ RUN mkdir /quassel && \
git clone -b 0.13 --single-branch https://github.com/quassel/quassel /quassel/src && \ git clone -b "$QUASSEL_BRANCH" --single-branch https://github.com/quassel/quassel /quassel/src && \
cd /quassel/src && \ cd /quassel/src && \
git checkout 0.13.1 if [ ! -z "$QUASSEL_VERSION"]; then \
git checkout $QUASSEL_VERSION; \
fi
# generate build files # generate build files
RUN mkdir /quassel/build && \ RUN mkdir /quassel/build && \
...@@ -56,7 +62,8 @@ FROM $BASE ...@@ -56,7 +62,8 @@ FROM $BASE
RUN apk add --no-cache \ RUN apk add --no-cache \
icu-libs \ icu-libs \
libressl \ libressl \
openldap \ libldap \
boost \
qt5-qtbase \ qt5-qtbase \
qt5-qtscript \ qt5-qtscript \
qt5-qtbase-postgresql \ qt5-qtbase-postgresql \
......
NAME=k8r.eu/justjanne/quassel-docker NAME=k8r.eu/justjanne/quassel-docker
QUASSEL_VERSION=v0.13.1
ALPINE_VERSION=3.10 ALPINE_VERSION=3.10
QUASSEL_VERSION=
ifeq ($(strip $(QUASSEL_VERSION)),)
IMAGE_VERSION=trunk
else
IMAGE_VERSION=v$(QUASSEL_VERSION)
endif
.PHONY: all .PHONY: all
all: push all: push
...@@ -10,33 +15,48 @@ build: build_x86 build_aarch64 build_armhf ...@@ -10,33 +15,48 @@ build: build_x86 build_aarch64 build_armhf
.PHONY: build_x86 .PHONY: build_x86
build_x86: Dockerfile build_x86: Dockerfile
docker build -t $(NAME):$(QUASSEL_VERSION) --build-arg BASE=alpine:$(ALPINE_VERSION) . docker build \
docker tag $(NAME):$(QUASSEL_VERSION) $(NAME):latest -t $(NAME):$(IMAGE_VERSION) \
--build-arg BASE=alpine:$(ALPINE_VERSION) \
--build-arg QUASSEL_VERSION=$(QUASSEL_VERSION) \
--build-arg QUASSEL_BRANCH=$(QUASSEL_BRANCH) \
.
if [ ! -z "$(QUASSEL_VERSION)" ]; then docker tag $(NAME):$(IMAGE_VERSION) $(NAME):latest; fi
.PHONY: build_aarch64 .PHONY: build_aarch64
build_aarch64: Dockerfile build_aarch64: Dockerfile
docker build -t $(NAME):$(QUASSEL_VERSION)-aarch64 --build-arg BASE=multiarch/alpine:aarch64-v$(ALPINE_VERSION) . docker build \
docker tag $(NAME):$(QUASSEL_VERSION)-aarch64 $(NAME):aarch64 -t $(NAME):$(IMAGE_VERSION)-aarch64 \
--build-arg BASE=multiarch/alpine:aarch64-v$(ALPINE_VERSION) \
--build-arg QUASSEL_VERSION=$(QUASSEL_VERSION) \
--build-arg QUASSEL_BRANCH=$(QUASSEL_BRANCH) \
.
if [ ! -z "$(QUASSEL_VERSION)" ]; then docker tag $(NAME):$(IMAGE_VERSION)-aarch64 $(NAME):aarch64; fi
.PHONY: build_armhf .PHONY: build_armhf
build_armhf: Dockerfile build_armhf: Dockerfile
docker build -t $(NAME):$(QUASSEL_VERSION)-armhf --build-arg BASE=multiarch/alpine:armhf-v$(ALPINE_VERSION) . docker build \
docker tag $(NAME):$(QUASSEL_VERSION)-armhf $(NAME):armhf -t $(NAME):$(IMAGE_VERSION)-armhf \
--build-arg BASE=multiarch/alpine:armhf-v$(ALPINE_VERSION) \
--build-arg QUASSEL_VERSION=$(QUASSEL_VERSION) \
--build-arg QUASSEL_BRANCH=$(QUASSEL_BRANCH) \
.
if [ ! -z "$(QUASSEL_VERSION)" ]; then docker tag $(NAME):$(IMAGE_VERSION)-armhf $(NAME):armhf; fi
.PHONY: push .PHONY: push
push: push_x86 push_aarch64 push_armhf push: push_x86 push_aarch64 push_armhf
.PHONY: push_x86 .PHONY: push_x86
push_x86: build_x86 push_x86: build_x86
docker push $(NAME):$(QUASSEL_VERSION) docker push $(NAME):$(IMAGE_VERSION)
docker push $(NAME):latest if [ ! -z "$(QUASSEL_VERSION)" ]; then docker push $(NAME):latest; fi
.PHONY: push_aarch64 .PHONY: push_aarch64
push_aarch64: build_aarch64 push_aarch64: build_aarch64
docker push $(NAME):$(QUASSEL_VERSION)-aarch64 docker push $(NAME):$(IMAGE_VERSION)-aarch64
docker push $(NAME):aarch64 if [ ! -z "$(QUASSEL_VERSION)" ]; then docker push $(NAME):aarch64; fi
.PHONY: push_armhf .PHONY: push_armhf
push_armhf: build_armhf push_armhf: build_armhf
docker push $(NAME):$(QUASSEL_VERSION)-armhf docker push $(NAME):$(IMAGE_VERSION)-armhf
docker push $(NAME):armhf if [ ! -z "$(QUASSEL_VERSION)" ]; then docker push $(NAME):armhf; fi
#!/bin/sh
make QUASSEL_BRANCH=0.13 QUASSEL_VERSION=0.13.1
make QUASSEL_BRANCH=master
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment