Skip to content

Commit 4621c03

Browse files
committed
build demo image on release tag created
1 parent a4aac43 commit 4621c03

File tree

5 files changed

+122
-7
lines changed

5 files changed

+122
-7
lines changed

.github/workflows/docker-hub-publish-base.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,5 +14,5 @@ jobs:
1414
with:
1515
DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }}
1616
DOCKERHUB_PASSWORD: ${{ secrets.DOCKERHUB_PASSWORD }}
17-
tag: imiobe/iadelib:base
17+
tags: imiobe/iadelib:base
1818
dockerfile: ./docker/Dockerfile-base

.github/workflows/docker-hub-publish.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,11 @@ jobs:
1414
with:
1515
DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }}
1616
DOCKERHUB_PASSWORD: ${{ secrets.DOCKERHUB_PASSWORD }}
17-
tag: imiobe/iadelib:latest
17+
tags: imiobe/iadelib:latest
1818
- name: Build dev image
1919
uses: IMIO/buildout.pm/actions/dockerhub@master
2020
with:
2121
DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }}
2222
DOCKERHUB_PASSWORD: ${{ secrets.DOCKERHUB_PASSWORD }}
23-
tag: imiobe/iadelib:dev
23+
tags: imiobe/iadelib:dev
2424
dockerfile: ./docker/Dockerfile-dev

.github/workflows/release.yml

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,19 @@ jobs:
1515
with:
1616
DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }}
1717
DOCKERHUB_PASSWORD: ${{ secrets.DOCKERHUB_PASSWORD }}
18-
tag: "imiobe/iadelib:communes-${{ env.GITHUB_REF_NAME }}"
18+
tags: "imiobe/iadelib:communes-${{ env.GITHUB_REF_NAME }}"
19+
demo:
20+
runs-on: ubuntu-latest
21+
steps:
22+
- name: Checkout
23+
uses: actions/checkout@v2
24+
- name: Build and publish to dockerhub
25+
uses: IMIO/buildout.pm/actions/dockerhub@master
26+
with:
27+
DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }}
28+
DOCKERHUB_PASSWORD: ${{ secrets.DOCKERHUB_PASSWORD }}
29+
dockerfile: ./docker/Dockerfile-demo
30+
tags: "imiobe/iadelib:demo-latest,imiobe/iadelib:demo-${{ env.GITHUB_REF_NAME }}"
1931
hainaut-prov:
2032
runs-on: ubuntu-latest
2133
steps:
@@ -27,4 +39,4 @@ jobs:
2739
DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }}
2840
DOCKERHUB_PASSWORD: ${{ secrets.DOCKERHUB_PASSWORD }}
2941
profile: hainaut-prov
30-
tag: "imiobe/iadelib:hainaut-prov-${{ env.GITHUB_REF_NAME }}"
42+
tags: "imiobe/iadelib:hainaut-prov-${{ env.GITHUB_REF_NAME }}"

actions/dockerhub/action.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ inputs:
1111
description: 'Buildout profile'
1212
required: true
1313
default: 'communes'
14-
tag:
14+
tags:
1515
description: 'Tag name'
1616
required: false
1717
dockerfile:
@@ -35,7 +35,7 @@ runs:
3535
with:
3636
context: .
3737
file: ${{ inputs.dockerfile }}
38-
tags: ${{ inputs.tag }}
38+
tags: ${{ inputs.tags }}
3939
platforms: linux/amd64
4040
pull: true
4141
push: true

docker/Dockerfile-demo

Lines changed: 103 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,103 @@
1+
FROM imiobe/iadelib:base as builder
2+
3+
ARG PROFILE="communes.cfg"
4+
5+
WORKDIR /plone
6+
USER root
7+
COPY --chown=imio *.cfg *.conf requirements.txt Makefile /plone/
8+
RUN apt-get update \
9+
&& apt-get full-upgrade -qqy \
10+
&& apt-get install -qqy --no-install-recommends \
11+
python-is-python2 \
12+
lynx \
13+
openjdk-16-jre-headless \
14+
libreoffice \
15+
libreoffice-script-provider-python \
16+
file \
17+
imagemagick \
18+
graphicsmagick \
19+
ghostscript \
20+
poppler-data \
21+
poppler-utils \
22+
ruby \
23+
libmagic1 \
24+
libjpeg62 \
25+
libpng16-16 \
26+
libopenjp2-7 \
27+
libldap-2.4-2 \
28+
ldap-utils \
29+
libwebp6 \
30+
libgif7 \
31+
libpq5 \
32+
lbzip2 \
33+
librsvg2-bin\
34+
libsigc++-2.0-0v5 \
35+
&& apt-get purge -qqy libreoffice-gnome libreoffice-gtk* libreoffice-help* libreoffice-kde* \
36+
&& buildDeps="build-essential \
37+
python-dev-is-python2 \
38+
cmake \
39+
make \
40+
wget \
41+
python3-pip \
42+
libpq-dev \
43+
libreadline-dev \
44+
gcc \
45+
libc6-dev \
46+
libpcre3-dev \
47+
libssl-dev \
48+
libxml2-dev \
49+
libxslt1-dev \
50+
libbz2-dev \
51+
libffi-dev \
52+
libjpeg62-dev \
53+
libopenjp2-7-dev \
54+
zlib1g-dev \
55+
libldap2-dev \
56+
libwebp-dev \
57+
libsasl2-dev \
58+
libldap2-dev \
59+
libsigc++-2.0-dev" \
60+
&& apt-get install -qqy --no-install-recommends $buildDeps \
61+
&& rm -rf /var/lib/apt/lists/* \
62+
&& pip install "virtualenv>=20.7.2" \
63+
&& gem install docsplit \
64+
&& sed -i "s/\${buildout:directory}\/var/\/data/g" *.cfg \
65+
&& echo "[buildout]" > buildout.cfg \
66+
&& echo "extends =" >> buildout.cfg \
67+
&& echo " $PROFILE" >> buildout.cfg \
68+
&& echo " amqp.cfg" >> buildout.cfg \
69+
&& echo " ldap.cfg" >> buildout.cfg \
70+
&& echo " logging.cfg" >> buildout.cfg \
71+
&& echo " docker.cfg" >> buildout.cfg \
72+
&& sed -ie "s#Products.MeetingCommunes:zcity#Products.MeetingCommunes:demo#" base.cfg \
73+
&& su -c "virtualenv -p python2 ." -s /bin/sh imio \
74+
&& su -c "bin/pip install 'python-ldap==2.4.15' -r requirements.txt" -s /bin/sh imio \
75+
&& su -c "bin/buildout -t 30 -N" -s /bin/sh imio \
76+
&& rm -rf develop-eggs/ src/ var/blobstorage/ var/filestorage/ parts/instance? bin/instance?
77+
78+
FROM imiobe/iadelib:base
79+
ENV DELIB_MAJOR=4.2
80+
81+
LABEL delib=$DELIB_VERSION \
82+
name="ia.Delib" \
83+
description="ia.Delib image, based on imiobe/plone-base:4.3.20-ubuntu-20.04" \
84+
maintainer="iMio"
85+
86+
COPY --from=builder /usr/local/lib/python2.7/dist-packages /usr/local/lib/python2.7/dist-packages
87+
88+
COPY --chown=imio --from=builder /plone /plone/
89+
COPY --chown=imio docker/docker-initialize.py docker/*.sh /plone/
90+
WORKDIR /plone
91+
USER imio
92+
93+
ENV ZEO_ADDRESS=zeo:8100 \
94+
OO_SERVER=libreoffice \
95+
OO_PORT=2002 \
96+
USE_STREAM=False \
97+
CUSTOM_TMP=/var/tmp \
98+
ACTIVE_BIGBANG=False \
99+
SITE_ID=standard
100+
101+
EXPOSE 8081
102+
ENTRYPOINT ["/plone/docker-entrypoint.sh"]
103+
CMD ["instance"]

0 commit comments

Comments
 (0)