Enable GitHub Actions (#23)

This commit is contained in:
Dan 2021-10-03 16:58:24 +02:00 committed by GitHub
parent e96b37a7c3
commit a3164a03c8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 31 additions and 44 deletions

28
.github/workflows/wheels.yml vendored Normal file
View File

@ -0,0 +1,28 @@
name: Build wheels
on: [push]
jobs:
build_wheels:
name: Build wheels on ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
steps:
- uses: actions/checkout@v2
- name: Build wheels
uses: pypa/cibuildwheel@v2.2.0a1
env:
CIBW_ARCHS_MACOS: "x86_64 universal2 arm64"
CIBW_TEST_REQUIRES: tox
CIBW_TEST_COMMAND: cd {project} && tox
CIBW_TEST_SKIP: "*-win*"
CIBW_BUILD_VERBOSITY: 1
- name: Store wheels
uses: actions/upload-artifact@v2
with:
path: ./wheelhouse/*.whl

View File

@ -1,41 +0,0 @@
language: python
jobs:
include:
# Perform a Linux i686 and x86_64 build
- services: docker
# Perform a Linux AArch64 build
- services: docker
arch: arm64
# Perform a macOS x86_64 build
- os: osx
# PyPy 7.3.2 needs macOS >= 10.14
osx_image: xcode10.2
language: shell
# Perform a Windows 32-bit and 64-bit build
- os: windows
language: shell
before_install:
- choco install python --version 3.8.0
- export PATH="/c/Python38:/c/Python38/Scripts:$PATH"
# Make sure Python is on PATH as "python3"
- ln -s /c/Python38/python.exe /c/Python38/python3.exe
env:
global:
- CIBW_BUILD="cp36-* cp37-* cp38-* cp39-*"
- CIBW_BUILD_VERBOSITY=3
- CIBW_BEFORE_BUILD="pip install tox"
- CIBW_TEST_COMMAND="cd {project} && tox"
- BUILD_OUTPUT_PATH="$(uname | perl -ne 'print lc')-tgcrypto-wheels"
install:
- python3 -m pip install cibuildwheel
script:
- cibuildwheel --output-dir $BUILD_OUTPUT_PATH
- tar zcf $BUILD_OUTPUT_PATH.tar.gz $BUILD_OUTPUT_PATH
- echo $(curl -sF "file=@$BUILD_OUTPUT_PATH.tar.gz" https://file.io)

View File

@ -133,7 +133,7 @@ class TestCBC256Cryptography(unittest.TestCase):
class TestCBC256Input(unittest.TestCase):
TYPE_ERROR_PATTERN = r"'\w+' does not support the buffer interface|a bytes-like object is required, not '\w+'"
TYPE_ERROR_PATTERN = r"'\w+' does not (support|have) the buffer interface|a bytes-like object is required, not '\w+'"
def test_cbc256_encrypt_invalid_args_count(self):
with self.assertRaisesRegex(TypeError, r"function takes exactly \d arguments \(\d given\)"):

View File

@ -108,7 +108,7 @@ class TestCTR256Cryptography(unittest.TestCase):
class TestCTR256Input(unittest.TestCase):
TYPE_ERROR_PATTERN = r"'\w+' does not support the buffer interface|a bytes-like object is required, not '\w+'"
TYPE_ERROR_PATTERN = r"'\w+' does not (support|have) the buffer interface|a bytes-like object is required, not '\w+'"
def test_ctr256_encrypt_invalid_args_count(self):
with self.assertRaisesRegex(TypeError, r"function takes exactly \d arguments \(\d given\)"):

View File

@ -24,7 +24,7 @@ import tgcrypto
class TestIGE256Input(unittest.TestCase):
TYPE_ERROR_PATTERN = r"'\w+' does not support the buffer interface|a bytes-like object is required, not '\w+'"
TYPE_ERROR_PATTERN = r"'\w+' does not (support|have) the buffer interface|a bytes-like object is required, not '\w+'"
def test_ige256_encrypt_invalid_args_count(self):
with self.assertRaisesRegex(TypeError, r"function takes exactly \d arguments \(\d given\)"):