Skip to content

Commit

Permalink
Migrate to turnkey-support and turnkey-gradle-plugin; introduce vario…
Browse files Browse the repository at this point in the history
…us refactorings and support JPMS modules.
  • Loading branch information
no-preserve-root committed Sep 20, 2024
1 parent eb298b6 commit ea4b124
Show file tree
Hide file tree
Showing 37 changed files with 1,121 additions and 1,436 deletions.
22 changes: 12 additions & 10 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -1,16 +1,18 @@
# SPDX-License-Identifier: Apache-2.0
#
# Copyright 2019-2024 The Z3-TurnKey Authors
# SPDX-License-Identifier: ISC
# Copyright 2019-2024 The TurnKey Authors
#
# Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby
# granted, provided that the above copyright notice and this permission notice appear in all copies.
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
# INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN
# AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# PERFORMANCE OF THIS SOFTWARE.
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

version: 2
updates:
Expand All @@ -21,4 +23,4 @@ updates:
- package-ecosystem: github-actions
directory: /
schedule:
interval: daily
interval: daily
112 changes: 112 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,112 @@
# SPDX-License-Identifier: Apache-2.0
#
# Copyright 2019-2024 The TurnKey Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

name: CI/CD

on:
push:
branches:
- main
pull_request:
branches:
- main
workflow_dispatch:

permissions:
contents: write

jobs:
build-local:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: temurin
java-version: 17
- uses: gradle/actions/setup-gradle@v4
- run: |
./gradlew build testRunner versionFile
cp build/z3.version build/libs/z3-turnkey-*-test-runner.jar .
- uses: actions/upload-artifact@v4
with:
name: test-runner
path: |
z3-turnkey-*-test-runner.jar
z3.version
test:
strategy:
matrix:
os: [macos-latest, ubuntu-latest, windows-latest]
java-package: [liberica, microsoft, temurin, zulu]
java-version: [8, 11, 17, 21]
architecture: [x64]
exclude:
- java-package: microsoft
java-version: 8
fail-fast: false # Ensure we get all failures on all affected platforms

name: JUnit Test on ${{ matrix.os }} and ${{ matrix.java-package }} version ${{ matrix.java-version }} for ${{ matrix.architecture }}
needs: build-local
runs-on: ${{ matrix.os }}
steps:
- uses: actions/download-artifact@v4
with:
name: test-runner

- uses: actions/setup-java@v4
with:
distribution: ${{ matrix.java-package }}
java-version: ${{ matrix.java-version }}
architecture: ${{ matrix.architecture }}

- shell: bash
run: |
z3version="$(cat z3.version)"
prefix=""
if ! command -v arch &> /dev/null; then
case "${{ matrix.architecture }}" in
"aarch64") prefix="arch -arm64";;
"x64") prefix="arch -x86_64";;
*) echo "unknown architecture ${{ matrix.architecture }}"; exit 1;;
esac
fi
module_options=""
if [ "${{ matrix.java-version }}" -gt 8 ]; then
module_options="--add-opens java.base/java.io=ALL-UNNAMED"
fi
${prefix} java ${module_options} \
-DexpectedZ3Version="${z3version}" \
-jar z3-turnkey-*-test-runner.jar \
execute --fail-if-no-tests \
--select-package tools.aqua.turnkey.z3 \
--reports-dir test-results
- uses: mikepenz/action-junit-report@v4
if: always()
with:
require_tests: true
report_paths: "test-results/*.xml"

dependency-submission:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: temurin
java-version: 17
- uses: gradle/actions/dependency-submission@v4
156 changes: 0 additions & 156 deletions .github/workflows/test.yml

This file was deleted.

22 changes: 17 additions & 5 deletions AUTHORS.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,20 @@
### The Z3-TurnKey Authors
<!--
SPDX-License-Identifier: CC-BY-4.0
Z3-TurnKey is maintained by the [AQUA Group](https://aqua.engineering/) at TU Dortmund University.
Copyright 2019-2024 The TurnKey Authors
#### Active Contributors
This work is licensed under the Creative Commons Attribution 4.0
International License.
* [Simon Dierl](mailto:[email protected])
* [Malte Mues](mailto:[email protected])
You should have received a copy of the license along with this
work. If not, see <https://creativecommons.org/licenses/by/4.0/>.
-->

# The TurnKey Authors

The project is maintained by [AQUA Group](https://aqua.engineering/) at TU Dortmund University.

## Active Contributors

- [Simon Dierl](mailto:[email protected])
- [Malte Mues](mailto:[email protected])
Loading

0 comments on commit ea4b124

Please sign in to comment.