diff --git a/.github/workflows/semantic-pr.yml b/.github/workflows/semantic-pr.yml index 76bcf8e..fb4c9fc 100644 --- a/.github/workflows/semantic-pr.yml +++ b/.github/workflows/semantic-pr.yml @@ -6,7 +6,7 @@ on: jobs: pr-title-check: - runs-on: ubuntu-18.04 + runs-on: ubuntu-latest steps: - name: PR title is valid if: > diff --git a/.github/workflows/test-arm.yml b/.github/workflows/test-arm.yml new file mode 100644 index 0000000..3710b70 --- /dev/null +++ b/.github/workflows/test-arm.yml @@ -0,0 +1,21 @@ +name: Unit Test on Arm +on: [pull_request] + +jobs: + aarch_job: + runs-on: ubuntu-latest + name: Test on ubuntu aarch64 + steps: + - uses: actions/checkout@v3 + - uses: uraimo/run-on-arch-action@v2 + name: Run Unit Test + id: runcmd + with: + arch: aarch64 + distro: ubuntu20.04 + githubToken: ${{ github.token }} + install: | + apt update + apt -y install python3 + run: | + python3 -m unittest discover -s ./tests -p '*_test.py' diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 33941b5..ac495dc 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -7,7 +7,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - python-version: [ "3.6" ] + python-version: [ "3.7" ] steps: - name: Checkout source code uses: actions/checkout@v3 diff --git a/src/amplitude_experiment/local/evaluation/lib/linuxArm64/libevaluation_interop.so b/src/amplitude_experiment/local/evaluation/lib/linuxArm64/libevaluation_interop.so index b9a6614..c57b348 100755 Binary files a/src/amplitude_experiment/local/evaluation/lib/linuxArm64/libevaluation_interop.so and b/src/amplitude_experiment/local/evaluation/lib/linuxArm64/libevaluation_interop.so differ diff --git a/src/amplitude_experiment/local/evaluation/libevaluation_interop.py b/src/amplitude_experiment/local/evaluation/libevaluation_interop.py index 7034984..b47314d 100644 --- a/src/amplitude_experiment/local/evaluation/libevaluation_interop.py +++ b/src/amplitude_experiment/local/evaluation/libevaluation_interop.py @@ -765,7 +765,7 @@ def getplatformpaths(self, libname): # actually found multiple architectures or other library types that # may not load yield i - if platform.machine().startswith('arm'): + if platform.machine().startswith(('arm', 'aarch64')): yield os.path.abspath(os.path.join(os.path.dirname(os.path.realpath(__file__)), f"./lib/linuxArm64/{libname}.so")) else: yield os.path.abspath(os.path.join(os.path.dirname(os.path.realpath(__file__)), f"./lib/linuxX64/{libname}.so"))