annotate .github/workflows/ci-test.yml @ 6878:81d811b8d45f

set full python version string; other cleanups
author John Rouillard <rouilj@ieee.org>
date Thu, 01 Sep 2022 11:14:08 -0400
parents ac2b8a8f5727
children 5ba79dd2f31c
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
6839
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
1 # merged in python-package.yml workflow
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
2
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
3 name: roundup-ci
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
4
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
5 on:
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
6 push:
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
7 branches: [ "master" ]
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
8 # pull_request:
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
9 # branches: [ "master" ]
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
10 # schedule:
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
11 # - cron '0 11 * * 1-5'
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
12
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
13 jobs:
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
14 test:
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
15 name: CI build test
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
16
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
17 runs-on: ubuntu-latest
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
18 # use below if running on multiple OS's.
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
19 # runs-on: ${{ matrix.os }}
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
20
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
21 strategy:
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
22 fail-fast: false
6878
81d811b8d45f set full python version string; other cleanups
John Rouillard <rouilj@ieee.org>
parents: 6877
diff changeset
23 max-parallel: 4
6839
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
24 matrix:
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
25 # Run in all these versions of Python
6878
81d811b8d45f set full python version string; other cleanups
John Rouillard <rouilj@ieee.org>
parents: 6877
diff changeset
26 python-version: [ "2.7", "3.10", "3.9", "3.8", "3.6", "3.11.0-rc.1" ]
81d811b8d45f set full python version string; other cleanups
John Rouillard <rouilj@ieee.org>
parents: 6877
diff changeset
27 # use for multiple os or ubuntu versions
81d811b8d45f set full python version string; other cleanups
John Rouillard <rouilj@ieee.org>
parents: 6877
diff changeset
28 #os: [ubuntu-latest, macos-latest, windows-latest]
81d811b8d45f set full python version string; other cleanups
John Rouillard <rouilj@ieee.org>
parents: 6877
diff changeset
29 # if the ones above fail. fail the build
6877
ac2b8a8f5727 fix mysql SQL to create user and grant. set max jobs in parallel
John Rouillard <rouilj@ieee.org>
parents: 6876
diff changeset
30 experimental: [false]
ac2b8a8f5727 fix mysql SQL to create user and grant. set max jobs in parallel
John Rouillard <rouilj@ieee.org>
parents: 6876
diff changeset
31 include:
ac2b8a8f5727 fix mysql SQL to create user and grant. set max jobs in parallel
John Rouillard <rouilj@ieee.org>
parents: 6876
diff changeset
32 # example: if 3.12 fails the jobs still succeeds
ac2b8a8f5727 fix mysql SQL to create user and grant. set max jobs in parallel
John Rouillard <rouilj@ieee.org>
parents: 6876
diff changeset
33 - python-version: 3.12
ac2b8a8f5727 fix mysql SQL to create user and grant. set max jobs in parallel
John Rouillard <rouilj@ieee.org>
parents: 6876
diff changeset
34 experimental: true
6839
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
35
6858
John Rouillard <rouilj@ieee.org>
parents: 6857
diff changeset
36 env:
6864
7e907d97deb6 redis, gpg, more myql debugging
John Rouillard <rouilj@ieee.org>
parents: 6863
diff changeset
37 # get colorized pytest output even without a controlling tty
7e907d97deb6 redis, gpg, more myql debugging
John Rouillard <rouilj@ieee.org>
parents: 6863
diff changeset
38 PYTEST_ADDOPTS: "--color=yes"
6859
ebdadf3b2653 fixes and re-enable mysql.
John Rouillard <rouilj@ieee.org>
parents: 6858
diff changeset
39 # OS: ${{ matrix.os }}
6860
69928bcce59d fix env again.
John Rouillard <rouilj@ieee.org>
parents: 6859
diff changeset
40 PYTHON_VERSION: ${{ matrix.python-version }}
6839
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
41
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
42 steps:
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
43 # Checkout the latest code from the repo
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
44 - name: Checkout source
6878
81d811b8d45f set full python version string; other cleanups
John Rouillard <rouilj@ieee.org>
parents: 6877
diff changeset
45 # example directives:
81d811b8d45f set full python version string; other cleanups
John Rouillard <rouilj@ieee.org>
parents: 6877
diff changeset
46 # disable step
6873
8dab742710b6 null pw??
John Rouillard <rouilj@ieee.org>
parents: 6872
diff changeset
47 # if: {{ false }}
6878
81d811b8d45f set full python version string; other cleanups
John Rouillard <rouilj@ieee.org>
parents: 6877
diff changeset
48 # continue running if step fails
6874
70a78f281179 fix bad tab.
John Rouillard <rouilj@ieee.org>
parents: 6873
diff changeset
49 # continue-on-error: true
6839
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
50 uses: actions/checkout@v3
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
51
6878
81d811b8d45f set full python version string; other cleanups
John Rouillard <rouilj@ieee.org>
parents: 6877
diff changeset
52 # Setup version of Python to use
6839
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
53 - name: Set Up Python ${{ matrix.python-version }}
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
54 uses: actions/setup-python@v3
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
55 with:
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
56 python-version: ${{ matrix.python-version }}
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
57
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
58 # Display the Python version being used
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
59 - name: Display Python version
6861
097578791f7b mysql verbose and remove -u
John Rouillard <rouilj@ieee.org>
parents: 6860
diff changeset
60 run: python -c "import sys; print(sys.version)"
6839
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
61
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
62 # Install the databases
6852
8ffb859b01dd more fixes.
John Rouillard <rouilj@ieee.org>
parents: 6851
diff changeset
63 - name: Install mysql/mariadb
6839
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
64 run: |
6878
81d811b8d45f set full python version string; other cleanups
John Rouillard <rouilj@ieee.org>
parents: 6877
diff changeset
65 #set -xv
81d811b8d45f set full python version string; other cleanups
John Rouillard <rouilj@ieee.org>
parents: 6877
diff changeset
66 # mysql is pre-installed and active but this is the install command
81d811b8d45f set full python version string; other cleanups
John Rouillard <rouilj@ieee.org>
parents: 6877
diff changeset
67 # sudo apt-get install mysql-server mysql-client
6841
3671c0f6352e More fixes to yaml using linter:
John Rouillard <rouilj@ieee.org>
parents: 6840
diff changeset
68 # set up mysql database
6870
b040642efae3 mysql sleep and more debug
John Rouillard <rouilj@ieee.org>
parents: 6869
diff changeset
69 sudo sed -i -e '/^\[mysqld\]/,/^\[mysql/s/^#* *max_allowed_packet.*/max_allowed_packet = 500M/' /etc/mysql/mysql.conf.d/mysqld.cnf; sleep 3
6878
81d811b8d45f set full python version string; other cleanups
John Rouillard <rouilj@ieee.org>
parents: 6877
diff changeset
70 #tail -n +0 /etc/mysql/my.cnf /etc/mysql/mysql.conf.d/mysqld.cnf
81d811b8d45f set full python version string; other cleanups
John Rouillard <rouilj@ieee.org>
parents: 6877
diff changeset
71 #grep max_allowed /etc/mysql/mysql.conf.d/mysqld.cnf
81d811b8d45f set full python version string; other cleanups
John Rouillard <rouilj@ieee.org>
parents: 6877
diff changeset
72 #ls /etc/mysql/conf.d/ /etc/mysql/mysql.conf.d/
81d811b8d45f set full python version string; other cleanups
John Rouillard <rouilj@ieee.org>
parents: 6877
diff changeset
73 #sleep 5
81d811b8d45f set full python version string; other cleanups
John Rouillard <rouilj@ieee.org>
parents: 6877
diff changeset
74 sudo service mysql restart
81d811b8d45f set full python version string; other cleanups
John Rouillard <rouilj@ieee.org>
parents: 6877
diff changeset
75 #sleep 10
81d811b8d45f set full python version string; other cleanups
John Rouillard <rouilj@ieee.org>
parents: 6877
diff changeset
76 #ps -ef | grep mysqld
81d811b8d45f set full python version string; other cleanups
John Rouillard <rouilj@ieee.org>
parents: 6877
diff changeset
77 #sudo netstat -anp | grep mysqld
6877
ac2b8a8f5727 fix mysql SQL to create user and grant. set max jobs in parallel
John Rouillard <rouilj@ieee.org>
parents: 6876
diff changeset
78 sudo mysql -u root -proot -e 'CREATE USER "rounduptest"@"localhost" IDENTIFIED WITH mysql_native_password BY "rounduptest"; GRANT ALL on rounduptest.* TO "rounduptest"@"localhost";'
6873
8dab742710b6 null pw??
John Rouillard <rouilj@ieee.org>
parents: 6872
diff changeset
79
8dab742710b6 null pw??
John Rouillard <rouilj@ieee.org>
parents: 6872
diff changeset
80 - name: Install postgres
8dab742710b6 null pw??
John Rouillard <rouilj@ieee.org>
parents: 6872
diff changeset
81 run: |
8dab742710b6 null pw??
John Rouillard <rouilj@ieee.org>
parents: 6872
diff changeset
82 sudo apt-get install postgresql
6875
f1f947f6e476 try password found at
John Rouillard <rouilj@ieee.org>
parents: 6874
diff changeset
83 # Disable fsync for speed, don't care about data durability
f1f947f6e476 try password found at
John Rouillard <rouilj@ieee.org>
parents: 6874
diff changeset
84 # when testing
6873
8dab742710b6 null pw??
John Rouillard <rouilj@ieee.org>
parents: 6872
diff changeset
85 sudo sed -i -e '$a\fsync = off' /etc/postgresql/*/*/postgresql.conf
6878
81d811b8d45f set full python version string; other cleanups
John Rouillard <rouilj@ieee.org>
parents: 6877
diff changeset
86 sudo service postgresql restart; sleep 10
6873
8dab742710b6 null pw??
John Rouillard <rouilj@ieee.org>
parents: 6872
diff changeset
87 # set up postgresql database
8dab742710b6 null pw??
John Rouillard <rouilj@ieee.org>
parents: 6872
diff changeset
88 sudo -u postgres psql -c "CREATE ROLE rounduptest WITH CREATEDB LOGIN PASSWORD 'rounduptest';" -U postgres
6839
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
89
6864
7e907d97deb6 redis, gpg, more myql debugging
John Rouillard <rouilj@ieee.org>
parents: 6863
diff changeset
90 - name: install redis
6865
e69b4bfaccd3 pip redis in, fix markdown2 test, install ReST, mysql edit
John Rouillard <rouilj@ieee.org>
parents: 6864
diff changeset
91 run: |
e69b4bfaccd3 pip redis in, fix markdown2 test, install ReST, mysql edit
John Rouillard <rouilj@ieee.org>
parents: 6864
diff changeset
92 sudo apt-get install redis
e69b4bfaccd3 pip redis in, fix markdown2 test, install ReST, mysql edit
John Rouillard <rouilj@ieee.org>
parents: 6864
diff changeset
93 pip install redis
6864
7e907d97deb6 redis, gpg, more myql debugging
John Rouillard <rouilj@ieee.org>
parents: 6863
diff changeset
94
6839
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
95 - name: Update pip
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
96 run: python -m pip install --upgrade pip
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
97
6878
81d811b8d45f set full python version string; other cleanups
John Rouillard <rouilj@ieee.org>
parents: 6877
diff changeset
98 - name: Install python db libraries
6839
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
99 run: pip install psycopg2 mysqlclient
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
100
6865
e69b4bfaccd3 pip redis in, fix markdown2 test, install ReST, mysql edit
John Rouillard <rouilj@ieee.org>
parents: 6864
diff changeset
101 - name: Install auxiliary packages
6839
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
102 run: |
6850
ce3f39195a68 updates and remove tab from yml.
John Rouillard <rouilj@ieee.org>
parents: 6849
diff changeset
103 sudo apt-get install swig gpgsm libgpgme-dev
6865
e69b4bfaccd3 pip redis in, fix markdown2 test, install ReST, mysql edit
John Rouillard <rouilj@ieee.org>
parents: 6864
diff changeset
104 # pygments for markdown2 to highlight code blocks
e69b4bfaccd3 pip redis in, fix markdown2 test, install ReST, mysql edit
John Rouillard <rouilj@ieee.org>
parents: 6864
diff changeset
105 pip install markdown2 pygments
e69b4bfaccd3 pip redis in, fix markdown2 test, install ReST, mysql edit
John Rouillard <rouilj@ieee.org>
parents: 6864
diff changeset
106 # docutils for ReStructuredText
6866
a3ad2d1a4ea1 spec mistune version; force socket on mysql invocation
John Rouillard <rouilj@ieee.org>
parents: 6865
diff changeset
107 pip install beautifulsoup4 brotli docutils gpg jinja2 \
a3ad2d1a4ea1 spec mistune version; force socket on mysql invocation
John Rouillard <rouilj@ieee.org>
parents: 6865
diff changeset
108 mistune==0.8.4 pyjwt pytz whoosh
6839
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
109
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
110 - name: Install aux packages that need versions differences
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
111 # if zstd fails install, keep going with test, don't abort
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
112 run: |
6842
d8d4600c49eb More fixes to yaml using linter:
John Rouillard <rouilj@ieee.org>
parents: 6841
diff changeset
113 set -xv
6840
8ee17804086e untabify yml file.
John Rouillard <rouilj@ieee.org>
parents: 6839
diff changeset
114 pip install zstd || true
6861
097578791f7b mysql verbose and remove -u
John Rouillard <rouilj@ieee.org>
parents: 6860
diff changeset
115 if [[ "$PYTHON_VERSION" != "2."* ]]; then
6839
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
116 pip install Markdown; fi
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
117
6867
25487b21f812 add xapian build/install
John Rouillard <rouilj@ieee.org>
parents: 6866
diff changeset
118 - name: Install xapian
25487b21f812 add xapian build/install
John Rouillard <rouilj@ieee.org>
parents: 6866
diff changeset
119 run: |
25487b21f812 add xapian build/install
John Rouillard <rouilj@ieee.org>
parents: 6866
diff changeset
120 sudo apt-get install libxapian-dev
25487b21f812 add xapian build/install
John Rouillard <rouilj@ieee.org>
parents: 6866
diff changeset
121 # Sphinx required to build the xapian python bindings. Use 1.8.5 on
25487b21f812 add xapian build/install
John Rouillard <rouilj@ieee.org>
parents: 6866
diff changeset
122 # older python and newest on newer.
25487b21f812 add xapian build/install
John Rouillard <rouilj@ieee.org>
parents: 6866
diff changeset
123 if [[ $PYTHON_VERSION == "2."* ]]; then pip install sphinx==1.8.5; fi
25487b21f812 add xapian build/install
John Rouillard <rouilj@ieee.org>
parents: 6866
diff changeset
124 if [[ $PYTHON_VERSION == '3.'* ]] ; then pip install sphinx; fi
25487b21f812 add xapian build/install
John Rouillard <rouilj@ieee.org>
parents: 6866
diff changeset
125 XAPIAN_VER=$(dpkg -l libxapian-dev | tail -n 1 | awk '{print $3}' | cut -d '-' -f 1); echo $XAPIAN_VER
25487b21f812 add xapian build/install
John Rouillard <rouilj@ieee.org>
parents: 6866
diff changeset
126 cd /tmp
25487b21f812 add xapian build/install
John Rouillard <rouilj@ieee.org>
parents: 6866
diff changeset
127 curl -s -O https://oligarchy.co.uk/xapian/$XAPIAN_VER/xapian-bindings-$XAPIAN_VER.tar.xz
25487b21f812 add xapian build/install
John Rouillard <rouilj@ieee.org>
parents: 6866
diff changeset
128 tar -Jxvf xapian-bindings-$XAPIAN_VER.tar.xz
25487b21f812 add xapian build/install
John Rouillard <rouilj@ieee.org>
parents: 6866
diff changeset
129 cd xapian-bindings-$XAPIAN_VER/
25487b21f812 add xapian build/install
John Rouillard <rouilj@ieee.org>
parents: 6866
diff changeset
130 if [[ $PYTHON_VERSION == "2."* ]]; then ./configure --prefix=$VIRTUAL_ENV --with-python --disable-documentation; fi
25487b21f812 add xapian build/install
John Rouillard <rouilj@ieee.org>
parents: 6866
diff changeset
131 # edit the configure script.
25487b21f812 add xapian build/install
John Rouillard <rouilj@ieee.org>
parents: 6866
diff changeset
132 # distutils.sysconfig.get_config_vars('SO') doesn't work for
25487b21f812 add xapian build/install
John Rouillard <rouilj@ieee.org>
parents: 6866
diff changeset
133 # 3.11 or newer.
25487b21f812 add xapian build/install
John Rouillard <rouilj@ieee.org>
parents: 6866
diff changeset
134 # Change distutils.sysconfig... to just sysconfig and SO
25487b21f812 add xapian build/install
John Rouillard <rouilj@ieee.org>
parents: 6866
diff changeset
135 # to EXT_SUFFIX to get valid value.
25487b21f812 add xapian build/install
John Rouillard <rouilj@ieee.org>
parents: 6866
diff changeset
136 if [[ $PYTHON_VERSION == "3."* ]]; then sed -i -e '/PYTHON3_SO=/s/distutils\.//g' -e '/PYTHON3_SO=/s/"SO"/"EXT_SUFFIX"/g' configure; ./configure --prefix=$VIRTUAL_ENV --with-python3 --disable-documentation; fi
6868
5aee1b6ffb52 sudo make install; add 3.11 python.
John Rouillard <rouilj@ieee.org>
parents: 6867
diff changeset
137 case "$PYTHON_VERSION" in nightly) echo skipping xapian build;; *) make && sudo make install; esac
6867
25487b21f812 add xapian build/install
John Rouillard <rouilj@ieee.org>
parents: 6866
diff changeset
138
6839
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
139 - name: Install pytest and other packages needed for running tests
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
140 run: pip install codecov flake8 pytest pytest-cov requests
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
141
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
142 - name: Test build roundup and install locale so lang tests work.
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
143 run: |
6855
30815d9bd95c fix tab
John Rouillard <rouilj@ieee.org>
parents: 6854
diff changeset
144 sudo apt-get install gettext
6854
4f115313e262 install gettext for locale
John Rouillard <rouilj@ieee.org>
parents: 6853
diff changeset
145 python setup.py build
6840
8ee17804086e untabify yml file.
John Rouillard <rouilj@ieee.org>
parents: 6839
diff changeset
146 (cd locale; make local_install; ls -lR locale/de/LC_MESSAGES)
6839
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
147
6843
c61ab02ad067 fix syntax error name can not include :
John Rouillard <rouilj@ieee.org>
parents: 6842
diff changeset
148 - name: run flake8 - abort for syntax error, otherwise warn only
6839
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
149 run: |
6840
8ee17804086e untabify yml file.
John Rouillard <rouilj@ieee.org>
parents: 6839
diff changeset
150 # stop the build for Python syntax errors or undefined names
6857
a346b5d23480 flake8 fixes.
John Rouillard <rouilj@ieee.org>
parents: 6855
diff changeset
151 # talgettext is a utility function ignore it.
a346b5d23480 flake8 fixes.
John Rouillard <rouilj@ieee.org>
parents: 6855
diff changeset
152 flake8 roundup --count --select=E9,F63,F7,F82 --show-source --statistics --extend-exclude talgettext.py
6839
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
153 # exit-zero treats all errors as warnings.
6840
8ee17804086e untabify yml file.
John Rouillard <rouilj@ieee.org>
parents: 6839
diff changeset
154 # The GitHub editor is 127 chars wide
6839
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
155 flake8 roundup --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
156
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
157 # Run the tests using pytest with test files in tests directory.
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
158 - name: Run tests
6858
John Rouillard <rouilj@ieee.org>
parents: 6857
diff changeset
159 run: |
6861
097578791f7b mysql verbose and remove -u
John Rouillard <rouilj@ieee.org>
parents: 6860
diff changeset
160 if [[ "$PYTHON_VERSION" != "2."* ]]; then
6858
John Rouillard <rouilj@ieee.org>
parents: 6857
diff changeset
161 pytest -r a \
John Rouillard <rouilj@ieee.org>
parents: 6857
diff changeset
162 -W default \
John Rouillard <rouilj@ieee.org>
parents: 6857
diff changeset
163 -W "ignore:SelectableGroups:DeprecationWarning" \
John Rouillard <rouilj@ieee.org>
parents: 6857
diff changeset
164 -W "ignore:the imp module:DeprecationWarning:gpg.gpgme:15" \
John Rouillard <rouilj@ieee.org>
parents: 6857
diff changeset
165 -W "ignore:'U' mode::docutils.io" \
John Rouillard <rouilj@ieee.org>
parents: 6857
diff changeset
166 -W "ignore:unclosed:ResourceWarning:roundup.roundup.demo" \
John Rouillard <rouilj@ieee.org>
parents: 6857
diff changeset
167 -W "ignore:unclosed file:ResourceWarning:enum" \
John Rouillard <rouilj@ieee.org>
parents: 6857
diff changeset
168 -v --maxfail=5 test/ --cov=roundup
John Rouillard <rouilj@ieee.org>
parents: 6857
diff changeset
169 else
John Rouillard <rouilj@ieee.org>
parents: 6857
diff changeset
170 # python2 case
John Rouillard <rouilj@ieee.org>
parents: 6857
diff changeset
171 pytest -v -r a --maxfail=5 test/ --cov=roundup
John Rouillard <rouilj@ieee.org>
parents: 6857
diff changeset
172 fi
6839
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
173
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
174 - name: Upload coverage to Codecov
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
175 # see: https://github.com/codecov/codecov-action#usage
6840
8ee17804086e untabify yml file.
John Rouillard <rouilj@ieee.org>
parents: 6839
diff changeset
176 uses: codecov/codecov-action@v3
6839
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
177 with:
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
178 verbose: true
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
179
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
180 - name: test build_doc
6e1a82c3addb Add GitHub Actions test workflow.
John Rouillard <rouilj@ieee.org>
parents:
diff changeset
181 run: |
6842
d8d4600c49eb More fixes to yaml using linter:
John Rouillard <rouilj@ieee.org>
parents: 6841
diff changeset
182 python ./setup.py build_doc

Roundup Issue Tracker: http://roundup-tracker.org/