Ci workflows (#185)

* Build dev images with every commit.

* Use virtualenv to build dev images.

* Activate virtualenv properly.
This commit is contained in:
Abhilash Raj
2017-11-05 21:22:19 -08:00
committed by GitHub
parent 23339ad812
commit 97e9d68c3b
2 changed files with 35 additions and 36 deletions

View File

@@ -58,6 +58,3 @@ workflows:
jobs: jobs:
- build: - build:
context: org-global context: org-global
filters:
branches:
only: master

View File

@@ -6,45 +6,47 @@ DOCKER=docker
# Set the env variable to later test this release before it is deployed. # Set the env variable to later test this release before it is deployed.
if [ "$1" = "dev" ]; then if [ "$1" = "dev" ]; then
export DEV=true export DEV=true
fi fi
REG_URL=${REGISTRY}_URL REG_URL=${REGISTRY}_URL
if [ "$EVENT_TYPE" = "cron" ] || [ "$DEV" = "true" ] ; then if [ "$EVENT_TYPE" = "cron" ] || [ "$DEV" = "true" ] ; then
python -m pip install python-gitlab python3 -m venv venv
# Get the latest commit for repositories and set their reference values to be source venv/bin/activate
# used in the development builds. pip install python-gitlab
CORE_REF=$(python get_latest_ref.py mailman/mailman) # Get the latest commit for repositories and set their reference values to be
CLIENT_REF=$(python get_latest_ref.py mailman/mailmanclient) # used in the development builds.
POSTORIUS_REF=$(python get_latest_ref.py mailman/postorius) CORE_REF=$(python get_latest_ref.py mailman/mailman)
HYPERKITTY_REF=$(python get_latest_ref.py mailman/hyperkitty) CLIENT_REF=$(python get_latest_ref.py mailman/mailmanclient)
DJ_MM3_REF=$(python get_latest_ref.py mailman/django-mailman3) POSTORIUS_REF=$(python get_latest_ref.py mailman/postorius)
MM3_HK_REF=$(python get_latest_ref.py mailman/mailman-hyperkitty) HYPERKITTY_REF=$(python get_latest_ref.py mailman/hyperkitty)
DJ_MM3_REF=$(python get_latest_ref.py mailman/django-mailman3)
MM3_HK_REF=$(python get_latest_ref.py mailman/mailman-hyperkitty)
# Build the mailman-core image. # Build the mailman-core image.
$DOCKER build -f core/Dockerfile.dev \ $DOCKER build -f core/Dockerfile.dev \
--build-arg CORE_REF=$CORE_REF \ --build-arg CORE_REF=$CORE_REF \
--build-arg MM3_HK_REF=$MM3_HK_REF \ --build-arg MM3_HK_REF=$MM3_HK_REF \
--label version.core="$CORE_REF" \ --label version.core="$CORE_REF" \
--label version.mm3-hk="$MM3_HK_REF" \ --label version.mm3-hk="$MM3_HK_REF" \
--label version.git_commit="$COMMIT_ID" \ --label version.git_commit="$COMMIT_ID" \
-t ${!REG_URL}/maxking/mailman-core:rolling core/ -t ${!REG_URL}/maxking/mailman-core:rolling core/
# Build the mailman-web image. # Build the mailman-web image.
$DOCKER build -f web/Dockerfile.dev \ $DOCKER build -f web/Dockerfile.dev \
--label version.git_commit="$COMMIT_ID" \ --label version.git_commit="$COMMIT_ID" \
--label version.postorius="$POSTORIUS_REF" \ --label version.postorius="$POSTORIUS_REF" \
--label version.hyperkitty="$HYPERKITTY_REF" \ --label version.hyperkitty="$HYPERKITTY_REF" \
--label version.client="$CLIENT_REF" \ --label version.client="$CLIENT_REF" \
--label version.dj-mm3="$DJ_MM3_REF" \ --label version.dj-mm3="$DJ_MM3_REF" \
--build-arg POSTORIUS_REF=$POSTORIUS_REF \ --build-arg POSTORIUS_REF=$POSTORIUS_REF \
--build-arg CLIENT_REF=$CLIENT_REF \ --build-arg CLIENT_REF=$CLIENT_REF \
--build-arg HYPERKITTY_REF=$HYPERKITTY_REF \ --build-arg HYPERKITTY_REF=$HYPERKITTY_REF \
--build-arg DJ_MM3_REF=$DJ_MM3_REF \ --build-arg DJ_MM3_REF=$DJ_MM3_REF \
-t ${!REG_URL}/maxking/mailman-web:rolling web/ -t ${!REG_URL}/maxking/mailman-web:rolling web/
else else
# Do the normal building process. # Do the normal building process.
$DOCKER build -t ${!REG_URL}/maxking/mailman-core:$TAG core/ $DOCKER build -t ${!REG_URL}/maxking/mailman-core:$TAG core/
$DOCKER build -t ${!REG_URL}/maxking/mailman-web:$TAG web/ $DOCKER build -t ${!REG_URL}/maxking/mailman-web:$TAG web/
fi fi