mirror of
https://github.com/wxWidgets/Phoenix.git
synced 2026-01-07 04:20:07 +01:00
Switching to CircleCI (#765)
* Untested first pass at a CircleCI configuration * Add git submodule checkout * Check which python is being used * activate the venv for each task? * try building with multiple Pythons in parallel * Turn off TravisCI by removing the config file * Add some comments
This commit is contained in:
92
.circleci/config.yml
Normal file
92
.circleci/config.yml
Normal file
@@ -0,0 +1,92 @@
|
||||
# Python CircleCI 2.0 configuration file
|
||||
#
|
||||
# Check https://circleci.com/docs/2.0/language-python/ for more details
|
||||
#
|
||||
version: 2
|
||||
|
||||
# The configuration in this "shared" section are the things that each job will
|
||||
# have in common, and are substituted into the jobs config below. It is the
|
||||
# job definitions that specify the things that are unique to each job (like
|
||||
# the Python version to use, via the docker image name).
|
||||
shared: &shared
|
||||
working_directory: ~/repo
|
||||
|
||||
steps:
|
||||
- checkout
|
||||
- run:
|
||||
name: checkout submodules
|
||||
command: |
|
||||
git submodule sync
|
||||
git submodule update --init --recursive
|
||||
|
||||
- run:
|
||||
name: install apt packages
|
||||
command: |
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y libgtk2.0-dev libgtk-3-dev libjpeg-dev libtiff-dev \
|
||||
libsdl1.2-dev libgstreamer-plugins-base1.0-dev libnotify-dev freeglut3 \
|
||||
freeglut3-dev libsm-dev libwebkitgtk-dev libwebkitgtk-3.0-dev libxtst-dev \
|
||||
python-virtualenv
|
||||
|
||||
- run:
|
||||
name: install python packages
|
||||
command: |
|
||||
$MAKE_VENV
|
||||
source venv/bin/activate
|
||||
pip install -r requirements.txt
|
||||
|
||||
- run:
|
||||
name: build wxWidgets
|
||||
command: |
|
||||
source venv/bin/activate
|
||||
python build.py --jobs=4 dox build_wx
|
||||
|
||||
- run:
|
||||
name: build wxPython
|
||||
command: |
|
||||
source venv/bin/activate
|
||||
python build.py --jobs=4 etg --nodoc sip build_py
|
||||
|
||||
- run:
|
||||
name: build wheel and test install
|
||||
command: |
|
||||
source venv/bin/activate
|
||||
python build.py bdist_wheel
|
||||
python build.py install
|
||||
python -c "import wx; print(wx.version())"
|
||||
|
||||
|
||||
# We use one job for each version of Python that we want to build with. Each
|
||||
# one gets its own copy of the shared config above.
|
||||
jobs:
|
||||
"Python-2.7":
|
||||
<<: *shared
|
||||
docker:
|
||||
- image: circleci/python:2.7
|
||||
environment:
|
||||
- MAKE_VENV: "python -m virtualenv venv"
|
||||
|
||||
"Python-3.5":
|
||||
<<: *shared
|
||||
docker:
|
||||
- image: circleci/python:3.5
|
||||
environment:
|
||||
- MAKE_VENV: "python -m venv venv"
|
||||
|
||||
"Python-3.6":
|
||||
<<: *shared
|
||||
docker:
|
||||
- image: circleci/python:3.6
|
||||
environment:
|
||||
- MAKE_VENV: "python -m venv venv"
|
||||
|
||||
|
||||
# This workflow defines the jobs that comprise the "build" task. The jobs will
|
||||
# be run in parallel.
|
||||
workflows:
|
||||
version: 2
|
||||
build:
|
||||
jobs:
|
||||
- "Python-2.7"
|
||||
- "Python-3.5"
|
||||
- "Python-3.6"
|
||||
91
.travis.yml
91
.travis.yml
@@ -1,91 +0,0 @@
|
||||
#
|
||||
# Travis CI control file for building Phoenix
|
||||
#
|
||||
|
||||
language: python
|
||||
|
||||
matrix:
|
||||
include:
|
||||
- os: linux
|
||||
dist: trusty
|
||||
sudo: required
|
||||
python: 2.7
|
||||
- os: linux
|
||||
dist: trusty
|
||||
sudo: required
|
||||
python: 3.4
|
||||
- os: linux
|
||||
dist: trusty
|
||||
sudo: required
|
||||
python: 3.5
|
||||
- os: linux
|
||||
dist: trusty
|
||||
sudo: required
|
||||
python: 3.6
|
||||
|
||||
# We should try this too
|
||||
# - os: osx
|
||||
# osx_image: xcode7.3
|
||||
# python: 2.7
|
||||
# - os: osx
|
||||
# osx_image: xcode7.3
|
||||
# python: 3.4
|
||||
# - os: osx
|
||||
# osx_image: xcode7.3
|
||||
# python: 3.5
|
||||
# - os: osx
|
||||
# osx_image: xcode7.3
|
||||
# python: 3.6
|
||||
|
||||
|
||||
|
||||
# redundant specification of `sudo` and `python` because of travis-ci.org's way of parsing `.travis.yml`
|
||||
|
||||
# Available build steps:
|
||||
# 1. before_install
|
||||
# 2. install
|
||||
# 3. before_script
|
||||
# 4. script
|
||||
# 5. after_success or after_failure
|
||||
# 6. after_script
|
||||
# 7. OPTIONAL before_deploy
|
||||
# 8. OPTIONAL deploy
|
||||
# 9. OPTIONAL after_deploy
|
||||
|
||||
|
||||
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- libwebkitgtk-dev
|
||||
- libjpeg-dev
|
||||
- libtiff-dev
|
||||
- libgtk2.0-dev
|
||||
- libsdl1.2-dev
|
||||
- libgstreamer-plugins-base0.10-dev
|
||||
- freeglut3
|
||||
- freeglut3-dev
|
||||
- libnotify-dev
|
||||
- libsm-dev
|
||||
- libgtk-3-dev
|
||||
- libwebkitgtk-3.0-dev
|
||||
- libxtst-dev
|
||||
|
||||
|
||||
install:
|
||||
- echo "****** travis install step"
|
||||
- pip install -U pip
|
||||
- pip install -U -r requirements.txt
|
||||
- pip list
|
||||
|
||||
|
||||
script:
|
||||
- echo "****** travis script step"
|
||||
- python build.py dox
|
||||
- python build.py build_wx --jobs=4
|
||||
- python build.py etg --nodoc
|
||||
- python build.py sip
|
||||
- python build.py build_py --jobs=4
|
||||
- python build.py bdist_wheel
|
||||
- sudo python build.py install
|
||||
# TODO: Add running of the tests
|
||||
Reference in New Issue
Block a user