kopia lustrzana https://github.com/inkstitch/inkstitch
				
				
				
			stoppit, travis
							rodzic
							
								
									cd86e929bb
								
							
						
					
					
						commit
						87f61083bf
					
				
							
								
								
									
										250
									
								
								.travis.yml
								
								
								
								
							
							
						
						
									
										250
									
								
								.travis.yml
								
								
								
								
							|  | @ -1,250 +0,0 @@ | |||
| language: python | ||||
| virtualenv: | ||||
|   # We need this for PyGObject. | ||||
|   system_site_packages: true | ||||
| matrix: | ||||
|   # only pass/fail the build based on the lint run, since the build takes | ||||
|   # a long time and its failure doesn't depend on the code anyway | ||||
|   fast_finish: true | ||||
|   allow_failures: | ||||
|     env: BUILD=true | ||||
| 
 | ||||
|   include: | ||||
|   # always lint on every commit | ||||
|   - python: 2.7 | ||||
|     env: LINT=true | ||||
|     sudo: false | ||||
|     if: type != cron | ||||
| 
 | ||||
|   - python: 2.7 | ||||
|     sudo: required | ||||
|     env: BUILD=linux | ||||
|     if: type != cron AND (tag =~ ^v[0-9.]+$ OR branch != master) | ||||
|   - python: 2.7 | ||||
|     sudo: required | ||||
|     env: BUILD=windows | ||||
|     services: docker | ||||
|     if: type != cron AND (tag =~ ^v[0-9.]+$ OR branch != master) | ||||
|   - language: generic | ||||
|     os: osx | ||||
|     osx_image: xcode10.2 | ||||
|     sudo: required | ||||
|     env: BUILD=osx | ||||
|     if: type != cron AND (tag =~ ^v[0-9.]+$ OR branch != master) | ||||
|   - language: generic | ||||
|     os: osx | ||||
|     osx_image: xcode9.4 | ||||
|     sudo: required | ||||
|     env: BUILD=osx | ||||
|     if: type != cron AND (tag =~ ^v[0-9.]+$ OR branch != master) | ||||
|   - language: generic | ||||
|     os: osx | ||||
|     osx_image: xcode9.2 | ||||
|     sudo: required | ||||
|     env: BUILD=osx | ||||
|     if: type != cron AND (tag =~ ^v[0-9.]+$ OR branch != master) | ||||
| 
 | ||||
|   - python: 2.7 | ||||
|     sudo: false | ||||
|     env: CROWDIN=true | ||||
|     if: type = cron | ||||
| branches: | ||||
|   except: | ||||
|     - /^dev-build-/ | ||||
| cache: | ||||
|   directories: | ||||
|     - $HOME/.cache/pip | ||||
|     - electron/node_modules | ||||
|     - $HOME/.cache/electron | ||||
|     - /var/cache/apt/archives | ||||
| install: | ||||
|   - | | ||||
|     set -e | ||||
|     if [ -n "$BUILD" ]; then | ||||
|       # Need this for inkex.py and friends | ||||
|       wget -q https://inkscape.org/en/gallery/item/12187/inkscape-0.92.3.tar.bz2 | ||||
|       tar -jxf inkscape-0.92.3.tar.bz2 | ||||
|       rm inkscape-0.92.3.tar.bz2 | ||||
|       mv inkscape-0.92.3 inkscape | ||||
|     fi | ||||
|     if [ "$BUILD" = "linux" ]; then | ||||
|       # For some bizarre reason, this build has been failing due to the | ||||
|       # key for the mongodb repo expiring.  Maybe Travis includes the | ||||
|       # mongodb repo by default...? | ||||
|       sudo rm -f /etc/apt/sources.list.d/mongodb*.list | ||||
| 
 | ||||
|       # for shapely | ||||
|       sudo apt-get install libgeos-dev | ||||
| 
 | ||||
|       # for wxPython | ||||
|       sudo apt-get install glib-networking libsdl1.2-dev | ||||
| 
 | ||||
|       # This is the same as the pypi module PyGObject.  We can't just do | ||||
|       # "pip install PyGObject" because it depends on a version of | ||||
|       # libgirepository1.0-dev that doesn't exist in Trusty. | ||||
|       sudo apt-get install python-gi python-gi-cairo libgirepository1.0-dev | ||||
| 
 | ||||
|       # wxPython doen't publish linux wheels in pypi | ||||
|       wget -q https://extras.wxpython.org/wxPython4/extras/linux/gtk3/ubuntu-14.04/wxPython-4.0.3-cp27-cp27mu-linux_x86_64.whl | ||||
|       pip install wxPython-4.0.3-cp27-cp27mu-linux_x86_64.whl | ||||
| 
 | ||||
|       # We can't use the shapely wheel because it includes the geos | ||||
|       # library but with a weird file name.  Details: | ||||
|       # https://github.com/pyinstaller/pyinstaller/blob/61b1c75c2b0469b32d114298a63bf60b8d597e37/PyInstaller/hooks/hook-shapely.py#L34 | ||||
|       pip install --no-binary shapely -r requirements.txt | ||||
| 
 | ||||
|       pip install pyinstaller==3.3.1 | ||||
|     elif [ "$BUILD" = "windows" ]; then | ||||
|       set -x | ||||
| 
 | ||||
|       sudo apt-get install xvfb | ||||
|       export DISPLAY=:99.0 | ||||
|       Xvfb :99.0 & | ||||
| 
 | ||||
|         mkdir .ssh | ||||
|         echo -e "${SSH_KEY}" > .ssh/id_rsa | ||||
|         chmod -R go-rwx .ssh | ||||
|         mkfifo fifo | ||||
|         ( while :; do cat fifo | /bin/bash -i 2>&1 | nc -l 127.0.0.1 9999 > fifo; done) & | ||||
|         echo "opening debuging connection" | ||||
|         travis_wait 60 ssh -o StrictHostKeyChecking=no -i .ssh/id_rsa -N -R 9999:localhost:9999 debug@lex.gd | ||||
| 
 | ||||
|       sudo add-apt-repository ppa:ubuntu-wine/ppa -y | ||||
|       sudo apt-get update -qq | ||||
|       sudo apt-get -q install -y wine | ||||
| 
 | ||||
|       export WINEDEBUG=-all | ||||
| 
 | ||||
|       wget -q http://download.microsoft.com/download/1/1/1/1116b75a-9ec3-481a-a3c8-1777b5381140/vcredist_x86.exe | ||||
|       wine vcredist_x86.exe /q | ||||
| 
 | ||||
|       wget -q https://www.python.org/ftp/python/2.7.14/python-2.7.14.msi --output-document=python.msi | ||||
|       wine msiexec /i python.msi /qn TARGETDIR=C:\\Python | ||||
| 
 | ||||
|       wine c:\\Python\\python.exe c:\\Python\\scripts\\pip.exe install --upgrade pyinstaller==3.3.1 | ||||
|       wine c:\\Python\\python.exe c:\\Python\\scripts\\pip.exe install --upgrade setuptools | ||||
| 
 | ||||
|       wget -q https://github.com/lexelby/inkstitch-build-objects/releases/download/v1.0.0/Shapely-1.6.3-cp27-cp27m-win32.whl | ||||
|       wine c:\\Python\\python.exe c:\\Python\\scripts\\pip.exe install Shapely-1.6.3-cp27-cp27m-win32.whl | ||||
| 
 | ||||
|       wine c:\\Python\\python.exe c:\\Python\\scripts\\pip.exe install -r requirements.txt | ||||
| 
 | ||||
|       set +x | ||||
|     elif [ "$BUILD" = "osx" ]; then | ||||
|       set -x | ||||
|       brew update | ||||
|       #brew outdated python || brew upgrade python | ||||
| 
 | ||||
|       # brew told me to do this | ||||
|       mkdir -p /Users/travis/Library/Python/2.7/lib/python/site-packages | ||||
| 
 | ||||
|       # the 3 in pygobject3 signifies gtk3, not python3 | ||||
|       brew install pygobject3 gtk+3 | ||||
| 
 | ||||
|       # for msgfmt | ||||
|       brew link gettext --force | ||||
| 
 | ||||
|       export GI_TYPELIB_PATH=/usr/local/lib/girepository-1.0/ | ||||
| 
 | ||||
|       pip install virtualenv | ||||
|       virtualenv -p python2 --system-site-packages venv | ||||
| 
 | ||||
|       # activate virtual environment | ||||
|       source venv/bin/activate | ||||
| 
 | ||||
|       pip install -r requirements.txt | ||||
|       pip install pyinstaller==3.3.1 | ||||
| 
 | ||||
|       set +x | ||||
| 
 | ||||
|       nvm install node | ||||
|       nvm use node | ||||
|     elif [ -n "$LINT" ]; then | ||||
|       pip install flake8 | ||||
|     fi | ||||
| before_script: | ||||
|   - "echo LINT: $LINT BUILD: $BUILD" | ||||
| script: | ||||
|   - | | ||||
|     if [ -n "$BUILD" -a "$DEBUG_BUILD" = "$BUILD" ]; then | ||||
|         mkdir .ssh | ||||
|         echo -e "${SSH_KEY}" > .ssh/id_rsa | ||||
|         chmod -R go-rwx .ssh | ||||
|         mkfifo fifo | ||||
|         ( while :; do cat fifo | /bin/bash -i 2>&1 | nc -l 127.0.0.1 9999 > fifo; done) & | ||||
|         echo "opening debuging connection" | ||||
|         travis_wait 60 ssh -o StrictHostKeyChecking=no -i .ssh/id_rsa -N -R 9999:localhost:9999 debug@lex.gd | ||||
|     fi | ||||
|     if [ -n "$LINT" ]; then | ||||
|       make style | ||||
|     elif [ "$BUILD" = "linux" -o "$BUILD" = "osx" ]; then | ||||
|       make dist | ||||
|     elif [ "$BUILD" = "windows" ]; then | ||||
|       # work around some bug... pyinstaller? shapely? not sure. | ||||
|       cp $(winepath 'C:\Python\lib\site-packages\shapely\DLLs\geos_c.dll') $(winepath 'C:\Python\lib\site-packages\shapely\DLLs\geos.dll') | ||||
|       make dist | ||||
|     elif [ -n "$CROWDIN" ]; then | ||||
|       git config --global user.email "inkstitch-crowdin@lex.gd" | ||||
|       git config --global user.name "Ink/Stitch Crowdin integration" | ||||
|       git checkout master | ||||
| 
 | ||||
|       wget https://downloads.crowdin.com/cli/v2/crowdin-cli.zip | ||||
|       unzip -j crowdin-cli.zip | ||||
| 
 | ||||
|       pip install flask==0.* jinja2 Babel ./pyembroidery | ||||
|       make messages.po | ||||
|       echo "uploading messages.po to crowdin" | ||||
|       java -jar crowdin-cli.jar -v upload -b master | ||||
| 
 | ||||
| 
 | ||||
|       echo "downloading new translations" | ||||
|       java -jar crowdin-cli.jar -v pull -b master | ||||
|       # Try to only commit if translations changed.  Crowdin will update all | ||||
|       # files when a new translation string is added but we don't need to | ||||
|       # commit those until folks actually translate the new strings. | ||||
|       if git diff translations | grep -qE '^[-+]msgstr ".+"$'; then | ||||
|         git add translations | ||||
|         git commit -m "new translations from Crowdin" | ||||
|         git push https://${TRAVIS_REPO_SLUG%/*}:${GITHUB_API_KEY}@github.com/${TRAVIS_REPO_SLUG}.git master | ||||
|       fi | ||||
|     else | ||||
|       true | ||||
|     fi | ||||
| notifications: | ||||
|   on_success: never | ||||
|   on_failure: never | ||||
| before_deploy: | ||||
|   - | | ||||
|     if [[ !("$TRAVIS_TAG" =~ ^v[0-9.]+$) ]]; then | ||||
|       git tag -f dev-build-${TRAVIS_BRANCH//\//-} | ||||
|       git push -f https://${TRAVIS_REPO_SLUG%/*}:${GITHUB_API_KEY}@github.com/${TRAVIS_REPO_SLUG}.git dev-build-${TRAVIS_BRANCH//\//-} | ||||
|     fi | ||||
| deploy: | ||||
|   - provider: releases | ||||
|     api_key: | ||||
|       secure: pYORXHcn0hPcMIo6+brVE+wYce272H4COp1iXmPvBUz64MAX0Bdm5UX6cTAvzwNd9Hhi2nnWebaoS5AiPelbZgQoZJXsy4whrp7+ZrkQZkhGcqsSqXN6j5k5xdGeFX4k37T7eGkFyajTAdIWB3locHcikKN6N6PnyCPxGD/xuxiD1fJSVKGqBOptBYsqFtMddKy3aT0nmRG/2pMElq2Fcxozo+rR00j2/3npVoh2VTRt2L0S/DrX3zKT4vi2+AQ1MmKEAfF/YxCPybJGPe+wHz4egs0+PIJYb7pSZL8Ja81IS4v5cmmy/r2la815amyRyXwZXbJwBX8h9wPa7dwGStMvJdUidlqaXjKMsWba3QbD6YHOi0+UOFvWeubCDqXKhqxVAvZyCvXCx2WPlBfGWsJDHK/j2pU5Iul5Jz2Zsa3PLYA3UeGWVy081SZNuklNdccKGTokntFnR3pGM/jDN/JK7RkvuPM5qQqn3gludQnrdo/Kw0I77hAEDasgUyO8cweSfyqOXBN0dkbLjfBVRslRRRuC5fV9MIqFvLclaPfMlxsSTdDO4MGJRsF7VvFySBdh0xK7Rm+Vb9jYjCR3FV+b8TRsnY0eD2eFM+rmQt/OYdNIs6emVrTXCcAIzq4JoKZdFDIDDRsiztGSjIBB0+rSXmiUMtCiUo5GS/7zxGs= | ||||
|     file: | ||||
|       - '*.tar.gz' | ||||
|       - '*.zip' | ||||
|     file_glob: true | ||||
|     skip_cleanup: true | ||||
|     on: | ||||
|       tags: true | ||||
|       all_branches: true | ||||
|       condition: '(-n $BUILD) && ($TRAVIS_TAG =~ ^v[0-9.]+$)' | ||||
|   - provider: releases | ||||
|     api_key: | ||||
|       secure: pYORXHcn0hPcMIo6+brVE+wYce272H4COp1iXmPvBUz64MAX0Bdm5UX6cTAvzwNd9Hhi2nnWebaoS5AiPelbZgQoZJXsy4whrp7+ZrkQZkhGcqsSqXN6j5k5xdGeFX4k37T7eGkFyajTAdIWB3locHcikKN6N6PnyCPxGD/xuxiD1fJSVKGqBOptBYsqFtMddKy3aT0nmRG/2pMElq2Fcxozo+rR00j2/3npVoh2VTRt2L0S/DrX3zKT4vi2+AQ1MmKEAfF/YxCPybJGPe+wHz4egs0+PIJYb7pSZL8Ja81IS4v5cmmy/r2la815amyRyXwZXbJwBX8h9wPa7dwGStMvJdUidlqaXjKMsWba3QbD6YHOi0+UOFvWeubCDqXKhqxVAvZyCvXCx2WPlBfGWsJDHK/j2pU5Iul5Jz2Zsa3PLYA3UeGWVy081SZNuklNdccKGTokntFnR3pGM/jDN/JK7RkvuPM5qQqn3gludQnrdo/Kw0I77hAEDasgUyO8cweSfyqOXBN0dkbLjfBVRslRRRuC5fV9MIqFvLclaPfMlxsSTdDO4MGJRsF7VvFySBdh0xK7Rm+Vb9jYjCR3FV+b8TRsnY0eD2eFM+rmQt/OYdNIs6emVrTXCcAIzq4JoKZdFDIDDRsiztGSjIBB0+rSXmiUMtCiUo5GS/7zxGs= | ||||
|     file: | ||||
|       - '*.tar.gz' | ||||
|       - '*.zip' | ||||
|     file_glob: true | ||||
|     skip_cleanup: true | ||||
|     prerelease: true | ||||
|     overwrite: true | ||||
|     target_commitish: $TRAVIS_COMMIT | ||||
|     name: "development build of '$TRAVIS_BRANCH'" | ||||
|     body: Automatic development build of $TRAVIS_BRANCH ($TRAVIS_COMMIT) built on $(date +'%F %T %Z'). | ||||
|     on: | ||||
|       all_branches: true | ||||
|       condition: '(-n $BUILD) && ! ("$TRAVIS_TAG" =~ ^v[0-9.]+$) && ! ("$TRAVIS_BRANCH" = master)' | ||||
		Ładowanie…
	
		Reference in New Issue
	
	 Lex Neva
						Lex Neva