sudo: required dist: xenial services: - docker before_install: - if [[ "$BUILD" -ne "development" ]]; then echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin; sudo apt-get update && sudo apt-get -y install git; fi - if [[ $BUILD == "development" ]];then sudo apt-get update && sudo apt-get -y install docker-compose; fi install: - if [[ $BUILD == "development" ]];then chmod ugo+x ./dbench; chmod ugo+x ./test.sh; ./dbench setup docker; ./dbench init frappe-bench; ./dbench new-site site1.local; ./dbench setup hosts; fi after_success: - docker --version matrix: include: - name: "Test Frappe / ERPNext development" env: BUILD=development script: - ./test.sh - ./dbench setup docker stop - name: "Build Frappe python environment (edge)" if: branch = develop AND type != pull_request script: - docker build -t frappe-worker -f build/frappe-worker/Dockerfile . - docker tag frappe-worker frappe/frappe-worker:edge - docker push frappe/frappe-worker:edge - name: "Build Frappe nginx + static assets (edge)" if: branch = develop AND type != pull_request script: - docker build -t frappe-assets -f build/frappe-assets/Dockerfile . - docker tag frappe-assets frappe/frappe-assets:edge - docker push frappe/frappe-assets:edge - name: "Build ERPNext python environment (edge)" if: branch = develop AND type != pull_request script: - docker build -t erpnext-worker -f build/erpnext-worker/Dockerfile . - docker tag erpnext-worker frappe/erpnext-worker:edge - docker push frappe/erpnext-worker:edge - name: "Build ERPNext nginx + static assets (edge)" if: branch = develop AND type != pull_request script: - docker build -t erpnext-assets -f build/erpnext-assets/Dockerfile . - docker tag erpnext-assets frappe/erpnext-assets:edge - docker push frappe/erpnext-assets:edge - name: "Build Frappe socketio service (edge)" if: branch = develop AND type != pull_request script: - docker build -t frappe-socketio -f build/frappe-socketio/Dockerfile . - docker tag frappe-socketio frappe/frappe-socketio:edge - docker push frappe/frappe-socketio:edge - name: "Build Frappe python environment (v12)" if: branch = master AND type != pull_request script: - git clone https://github.com/frappe/frappe --branch version-12 - cd frappe - git fetch --tags - export VERSION=$(git tag --list --sort=-version:refname "v12*" | sed -n 1p | sed -e 's#.*@\(\)#\1#') - cd .. - docker build -t frappe/frappe-worker:$VERSION -f build/frappe-worker/v12.Dockerfile . - docker tag frappe/frappe-worker:$VERSION frappe/frappe-worker:v12 - docker tag frappe/frappe-worker:$VERSION frappe/frappe-worker:$VERSION - docker push frappe/frappe-worker:$VERSION - name: "Build Frappe nginx + static assets (v12)" if: branch = master AND type != pull_request script: - git clone https://github.com/frappe/frappe --branch version-12 - cd frappe - git fetch --tags - export VERSION=$(git tag --list --sort=-version:refname "v12*" | sed -n 1p | sed -e 's#.*@\(\)#\1#') - cd .. - docker build -t frappe/frappe-assets:$VERSION -f build/frappe-assets/v12.Dockerfile . - docker tag frappe/frappe-assets:$VERSION frappe/frappe-assets:v12 - docker push frappe/frappe-assets:$VERSION - name: "Build ERPNext python environment (v12)" if: branch = master AND type != pull_request script: - git clone https://github.com/frappe/erpnext --branch version-12 - cd erpnext - git fetch --tags - export VERSION=$(git tag --list --sort=-version:refname "v12*" | sed -n 1p | sed -e 's#.*@\(\)#\1#') - cd .. - docker build -t frappe/erpnext-worker:$VERSION -f build/erpnext-worker/v12.Dockerfile . - docker tag frappe/erpnext-worker:$VERSION frappe/erpnext-worker:v12 - docker push frappe/erpnext-worker:$VERSION - name: "Build ERPNext nginx + static assets (v12)" if: branch = master AND type != pull_request script: - git clone https://github.com/frappe/erpnext --branch version-12 - cd erpnext - git fetch --tags - export VERSION=$(git tag --list --sort=-version:refname "v12*" | sed -n 1p | sed -e 's#.*@\(\)#\1#') - cd .. - docker build -t frappe/erpnext-assets:$VERSION -f build/erpnext-assets/v12.Dockerfile . - docker tag frappe/erpnext-assets:$VERSION frappe/erpnext-assets:v12 - docker push frappe/erpnext-assets:$VERSION - name: "Build Frappe socketio service (v12)" if: branch = master AND type != pull_request script: - git clone https://github.com/frappe/frappe --branch version-12 - cd frappe - git fetch --tags - export VERSION=$(git tag --list --sort=-version:refname "v12*" | sed -n 1p | sed -e 's#.*@\(\)#\1#') - cd .. - docker build -t frappe/frappe-socketio:$VERSION -f build/frappe-socketio/v12.Dockerfile . - docker tag frappe/frappe-socketio:$VERSION frappe/frappe-socketio:v12 - docker push frappe/frappe-socketio:$VERSION - name: "Build Frappe python environment (v11)" if: branch = master AND type != pull_request script: - git clone https://github.com/frappe/frappe --branch version-11 - cd frappe - git fetch --tags - export VERSION=$(git tag --list --sort=-version:refname "v11*" | sed -n 1p | sed -e 's#.*@\(\)#\1#') - cd .. - docker build -t frappe/frappe-worker:$VERSION -f build/frappe-worker/v11.Dockerfile . - docker tag frappe/frappe-worker:$VERSION frappe/frappe-worker:v11 - docker push frappe/frappe-worker:$VERSION - name: "Build Frappe nginx + static assets (v11)" if: branch = master AND type != pull_request script: - git clone https://github.com/frappe/frappe --branch version-11 - cd frappe - git fetch --tags - export VERSION=$(git tag --list --sort=-version:refname "v11*" | sed -n 1p | sed -e 's#.*@\(\)#\1#') - cd .. - docker build -t frappe/frappe-assets:$VERSION -f build/frappe-assets/v11.Dockerfile . - docker tag frappe/frappe-assets:$VERSION frappe/frappe-assets:v11 - docker push frappe/frappe-assets:$VERSION - name: "Build ERPNext python environment (v11)" if: branch = master AND type != pull_request script: - git clone https://github.com/frappe/erpnext --branch version-11 - cd erpnext - git fetch --tags - export VERSION=$(git tag --list --sort=-version:refname "v11*" | sed -n 1p | sed -e 's#.*@\(\)#\1#') - cd .. - docker build -t frappe/erpnext-worker:$VERSION -f build/erpnext-worker/v11.Dockerfile . - docker tag frappe/erpnext-worker:$VERSION frappe/erpnext-worker:v11 - docker push frappe/erpnext-worker:$VERSION - name: "Build ERPNext nginx + static assets (v11)" if: branch = master AND type != pull_request script: - git clone https://github.com/frappe/erpnext --branch version-11 - cd erpnext - git fetch --tags - export VERSION=$(git tag --list --sort=-version:refname "v11*" | sed -n 1p | sed -e 's#.*@\(\)#\1#') - cd .. - docker build -t frappe/erpnext-assets:$VERSION -f build/erpnext-assets/v11.Dockerfile . - docker tag frappe/erpnext-assets:$VERSION frappe/erpnext-assets:v11 - docker push frappe/erpnext-assets:$VERSION - name: "Build Frappe socketio service (v11)" if: branch = master AND type != pull_request script: - git clone https://github.com/frappe/frappe --branch version-11 - cd frappe - git fetch --tags - export VERSION=$(git tag --list --sort=-version:refname "v11*" | sed -n 1p | sed -e 's#.*@\(\)#\1#') - cd .. - docker build -t frappe/frappe-socketio:$VERSION -f build/frappe-socketio/v11.Dockerfile . - docker tag frappe/frappe-socketio:$VERSION frappe/frappe-socketio:v11 - docker push frappe/frappe-socketio:$VERSION