# Copyright (C) 2017 CZ.NIC, z.s.p.o. (http://www.nic.cz/) # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see . before_script: - ./gradlew unlockIOSKeyChain - git submodule update --init --recursive stages: - build - unitTest - iTest-desktop # Development build # Runs for every commit # Connects to development server dev_debug: stage: build except: - tags script: - ./gradlew clean assemble -PTABLEXIA_ASSETS_UPLOAD=true artifacts: expire_in: 2 weeks paths: - android/build/outputs/apk/*debug*.apk - android/build/outputs/apk/*iTest*.apk - ios/build/robovm/*debug*.ipa - ios/build/robovm/*iTest*.ipa - desktop/build/libs/*debug*.jar # Release debug build # Runs only on tags # Connects to development server release-debug: stage: build only: - tags script: - ./gradlew clean assemble -PTABLEXIA_ASSETS_UPLOAD=true -PTABLEXIA_HD_ASSETS=true artifacts: paths: - android/build/outputs/apk/*debug*.apk - ios/build/robovm/*debug*.ipa - desktop/build/libs/*debug*.deb - desktop/build/outputs/*debug*.exe # Actual release build # Runs only on tags # Connects to production server # -PTABLEXIA_RELEASE_BUILD=true - Tells Tablexia to use production server release: stage: build only: - tags script: - ./gradlew clean assemble -PTABLEXIA_ASSETS_UPLOAD=true -PTABLEXIA_HD_ASSETS=true -PTABLEXIA_RELEASE_BUILD=true -PTABLEXIA_ASSETS_OPTIMIZE=true artifacts: paths: - android/build/outputs/apk/*release*.apk - ios/build/robovm/*release*.ipa - desktop/build/libs/*release*.deb - desktop/build/outputs/*release*.exe unitTest: stage: unitTest script: - ./gradlew test -x prepareAssets -x prepareGraphicAssets -x prepareSoundAssets -x prepareJsonAssets -x processAssets -x runChecksum iTest-desktop: stage: iTest-desktop script: - ./gradlew desktop:runITestBundle artifacts: when: always expire_in: 3 days paths: - desktop/build/libs/iTest_results/*.log - desktop/build/libs/iTest_results/*error.png