mirror of
https://github.com/MCV-Software/TWBlue.git
synced 2024-11-22 19:28:09 -06:00
Merge pull request #265 from manuelcortez/appveyor
Generate snapshot versions with AppVeyor. Closes #264
This commit is contained in:
commit
d734a30a18
@ -1,6 +1,8 @@
|
|||||||
TWBlue -
|
TWBlue -
|
||||||
======
|
======
|
||||||
|
|
||||||
|
[![Build status](https://ci.appveyor.com/api/projects/status/fml5fu7h1fj8vf6l?svg=true)](https://ci.appveyor.com/project/manuelcortez/twblue)
|
||||||
|
|
||||||
TW Blue is an app designed to use Twitter simply and efficiently while using minimal system resources.
|
TW Blue is an app designed to use Twitter simply and efficiently while using minimal system resources.
|
||||||
With this app you’ll have access to twitter features such as:
|
With this app you’ll have access to twitter features such as:
|
||||||
|
|
||||||
|
83
appveyor.yml
Normal file
83
appveyor.yml
Normal file
@ -0,0 +1,83 @@
|
|||||||
|
pull_requests:
|
||||||
|
# Avoid building after pull requests. Shall we disable this option?
|
||||||
|
do_not_increment_build_number: true
|
||||||
|
|
||||||
|
# Only build whenever we add tags to the repo.
|
||||||
|
skip_non_tags: true
|
||||||
|
|
||||||
|
environment:
|
||||||
|
|
||||||
|
matrix:
|
||||||
|
|
||||||
|
# List of python versions we want to work with.
|
||||||
|
- PYTHON: "C:\\Python27"
|
||||||
|
PYTHON_VERSION: "2.7.x" # currently 2.7.9
|
||||||
|
PYTHON_ARCH: "32"
|
||||||
|
|
||||||
|
# perhaps we may enable this one in future?
|
||||||
|
# - PYTHON: "C:\\Python27-x64"
|
||||||
|
# PYTHON_VERSION: "2.7.x" # currently 2.7.9
|
||||||
|
# PYTHON_ARCH: "64"
|
||||||
|
|
||||||
|
# This is important so we will retrieve everything in submodules as opposed to default method.
|
||||||
|
clone_script:
|
||||||
|
- cmd: >-
|
||||||
|
git clone -q --branch=%APPVEYOR_REPO_BRANCH% https://github.com/%APPVEYOR_REPO_NAME%.git %APPVEYOR_BUILD_FOLDER%
|
||||||
|
&& cd %APPVEYOR_BUILD_FOLDER%
|
||||||
|
&& git checkout -qf %APPVEYOR_REPO_COMMIT%
|
||||||
|
&& git submodule update --init --recursive
|
||||||
|
|
||||||
|
install:
|
||||||
|
# If there is a newer build queued for the same PR, cancel this one.
|
||||||
|
# The AppVeyor 'rollout builds' option is supposed to serve the same
|
||||||
|
# purpose but it is problematic because it tends to cancel builds pushed
|
||||||
|
# directly to master instead of just PR builds (or the converse).
|
||||||
|
# credits: JuliaLang developers.
|
||||||
|
- ps: if ($env:APPVEYOR_PULL_REQUEST_NUMBER -and $env:APPVEYOR_BUILD_NUMBER -ne ((Invoke-RestMethod `
|
||||||
|
https://ci.appveyor.com/api/projects/$env:APPVEYOR_ACCOUNT_NAME/$env:APPVEYOR_PROJECT_SLUG/history?recordsNumber=50).builds | `
|
||||||
|
Where-Object pullRequestId -eq $env:APPVEYOR_PULL_REQUEST_NUMBER)[0].buildNumber) { `
|
||||||
|
throw "There are newer queued builds for this pull request, failing early." }
|
||||||
|
- ECHO "Filesystem root:"
|
||||||
|
- ps: "ls \"C:/\""
|
||||||
|
|
||||||
|
# Check that we have the expected version and architecture for Python
|
||||||
|
- "python --version"
|
||||||
|
- "python -c \"import struct; print(struct.calcsize('P') * 8)\""
|
||||||
|
|
||||||
|
# Upgrade to the latest version of pip to avoid it displaying warnings
|
||||||
|
# about it being out of date.
|
||||||
|
- "python -m pip install --upgrade pip"
|
||||||
|
|
||||||
|
# Install the build dependencies of the project. If some dependencies contain
|
||||||
|
# compiled extensions and are not provided as pre-built wheel packages,
|
||||||
|
# pip will build them from source using the MSVC compiler matching the
|
||||||
|
# target Python version and architecture
|
||||||
|
- "%CMD_IN_ENV% pip install -r requirements.txt"
|
||||||
|
- "%CMD_IN_ENV% pip install pyenchant"
|
||||||
|
|
||||||
|
build_script:
|
||||||
|
# Build documentation at first, so setup.py won't fail when copying everything.
|
||||||
|
- "cd doc"
|
||||||
|
# Import documentation before building, so strings.py will be created.
|
||||||
|
- "%CMD_IN_ENV% python documentation_importer.py"
|
||||||
|
# build doc from src folder so it will generate result files right there.
|
||||||
|
- "cd ..\\src"
|
||||||
|
- "%CMD_IN_ENV% python ..\\doc\\generator.py"
|
||||||
|
# Build distributable files.
|
||||||
|
- "%CMD_IN_ENV% python setup.py py2exe"
|
||||||
|
- "cd dist"
|
||||||
|
# Zip it all.
|
||||||
|
- cmd: 7z a ..\..\snapshot.zip *
|
||||||
|
|
||||||
|
artifacts:
|
||||||
|
- path: snapshot.zip
|
||||||
|
|
||||||
|
deploy:
|
||||||
|
- provider: FTP
|
||||||
|
host: twblue.es
|
||||||
|
protocol: ftp
|
||||||
|
beta: true
|
||||||
|
username: twblue
|
||||||
|
password:
|
||||||
|
secure: ml/xB8YEoZ7DmjzDr+KSNw==
|
||||||
|
# folder: '//pubs'
|
@ -1,6 +1,7 @@
|
|||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
import markdown
|
import markdown
|
||||||
import os
|
import os
|
||||||
|
import shutil
|
||||||
from codecs import open as _open
|
from codecs import open as _open
|
||||||
import languageHandler
|
import languageHandler
|
||||||
languageHandler.setLanguage("en")
|
languageHandler.setLanguage("en")
|
||||||
@ -38,14 +39,18 @@ def generate_document(language, document_type="documentation"):
|
|||||||
""" % (language, title, title)
|
""" % (language, title, title)
|
||||||
first_html_block = first_html_block+ markdown_file
|
first_html_block = first_html_block+ markdown_file
|
||||||
first_html_block = first_html_block + "\n</body>\n</html>"
|
first_html_block = first_html_block + "\n</body>\n</html>"
|
||||||
if not os.path.exists(language):
|
if not os.path.exists(os.path.join("documentation", language)):
|
||||||
os.mkdir(language)
|
os.mkdir(os.path.join("documentation", language))
|
||||||
mdfile = _open("%s/%s" % (language, filename), "w", encoding="utf-8")
|
mdfile = _open(os.path.join("documentation", language, filename), "w", encoding="utf-8")
|
||||||
mdfile.write(first_html_block)
|
mdfile.write(first_html_block)
|
||||||
mdfile.close()
|
mdfile.close()
|
||||||
|
|
||||||
def create_documentation():
|
def create_documentation():
|
||||||
print("Creating documentation in the supported languages...\n")
|
print("Creating documentation in the supported languages...\n")
|
||||||
|
if not os.path.exists("documentation"):
|
||||||
|
os.mkdir("documentation")
|
||||||
|
if os.path.exists(os.path.join("documentation", "license.txt")) == False:
|
||||||
|
shutil.copy(os.path.join("..", "license.txt"), os.path.join("documentation", "license.txt"))
|
||||||
for i in languages:
|
for i in languages:
|
||||||
print("Creating documentation for: %s" % (i,))
|
print("Creating documentation for: %s" % (i,))
|
||||||
generate_document(i)
|
generate_document(i)
|
||||||
|
@ -22,3 +22,4 @@ urllib3
|
|||||||
youtube-dl
|
youtube-dl
|
||||||
python-vlc
|
python-vlc
|
||||||
pywin32
|
pywin32
|
||||||
|
py2exe_py2
|
@ -112,7 +112,7 @@ data_files = get_data(),
|
|||||||
options = {
|
options = {
|
||||||
'py2exe': {
|
'py2exe': {
|
||||||
'optimize':2,
|
'optimize':2,
|
||||||
'packages': ["pubsub", "pubsub.core", "pubsub.core.kwargs", "dbhash"],
|
'packages': ["pubsub", "pubsub.core", "pubsub.core.kwargs", "dbhash", "oauthlib.oauth1.rfc5849.endpoints.resource", "oauthlib.oauth2.rfc6749.endpoints.resource"],
|
||||||
'dll_excludes': ["MPR.dll", "api-ms-win-core-apiquery-l1-1-0.dll", "api-ms-win-core-console-l1-1-0.dll", "api-ms-win-core-delayload-l1-1-1.dll", "api-ms-win-core-errorhandling-l1-1-1.dll", "api-ms-win-core-file-l1-2-0.dll", "api-ms-win-core-handle-l1-1-0.dll", "api-ms-win-core-heap-obsolete-l1-1-0.dll", "api-ms-win-core-libraryloader-l1-1-1.dll", "api-ms-win-core-localization-l1-2-0.dll", "api-ms-win-core-processenvironment-l1-2-0.dll", "api-ms-win-core-processthreads-l1-1-1.dll", "api-ms-win-core-profile-l1-1-0.dll", "api-ms-win-core-registry-l1-1-0.dll", "api-ms-win-core-synch-l1-2-0.dll", "api-ms-win-core-sysinfo-l1-2-0.dll", "api-ms-win-security-base-l1-2-0.dll", "api-ms-win-core-heap-l1-2-0.dll", "api-ms-win-core-interlocked-l1-2-0.dll", "api-ms-win-core-localization-obsolete-l1-1-0.dll", "api-ms-win-core-string-l1-1-0.dll", "api-ms-win-core-string-obsolete-l1-1-0.dll", "WLDAP32.dll", "MSVCP90.dll", "CRYPT32.dll", "mfc90.dll"],
|
'dll_excludes': ["MPR.dll", "api-ms-win-core-apiquery-l1-1-0.dll", "api-ms-win-core-console-l1-1-0.dll", "api-ms-win-core-delayload-l1-1-1.dll", "api-ms-win-core-errorhandling-l1-1-1.dll", "api-ms-win-core-file-l1-2-0.dll", "api-ms-win-core-handle-l1-1-0.dll", "api-ms-win-core-heap-obsolete-l1-1-0.dll", "api-ms-win-core-libraryloader-l1-1-1.dll", "api-ms-win-core-localization-l1-2-0.dll", "api-ms-win-core-processenvironment-l1-2-0.dll", "api-ms-win-core-processthreads-l1-1-1.dll", "api-ms-win-core-profile-l1-1-0.dll", "api-ms-win-core-registry-l1-1-0.dll", "api-ms-win-core-synch-l1-2-0.dll", "api-ms-win-core-sysinfo-l1-2-0.dll", "api-ms-win-security-base-l1-2-0.dll", "api-ms-win-core-heap-l1-2-0.dll", "api-ms-win-core-interlocked-l1-2-0.dll", "api-ms-win-core-localization-obsolete-l1-1-0.dll", "api-ms-win-core-string-l1-1-0.dll", "api-ms-win-core-string-obsolete-l1-1-0.dll", "WLDAP32.dll", "MSVCP90.dll", "CRYPT32.dll", "mfc90.dll"],
|
||||||
'compressed': True
|
'compressed': True
|
||||||
},
|
},
|
||||||
|
Loading…
Reference in New Issue
Block a user