Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Completed prep work for quarkus_openshift tests #2454

Merged
merged 5 commits into from
Apr 8, 2021
Merged
Show file tree
Hide file tree
Changes from 4 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 31 additions & 0 deletions external/quarkus_openshift/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
# External quarkus_openshift Tests

Third Party container tests help verify that the Adoptium binaries are good by running a variety of Java applications inside of Docker containers. AdoptOpenJDK/openjdk-tests/Issue [#172](https://github.com/AdoptOpenJDK/openjdk-tests/issues/172) lists the applications that we have initially targeted to best exercise the Adoptium binaries. For each application, we choose to run a selection of their functional tests. Quarkus Openshift tests are pulled from the [quarkus-openshift-test-suite](https://github.com/quarkus-qe/quarkus-openshift-test-suite.git) repository. These tests require an Openshift cluster environment to run.
Copy link
Contributor

@sophia-guo sophia-guo Apr 6, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please change the first part of the sentence to be:
Quarkus_openshift tests are part of the external third-party application tests that help verify that the Adoptium binaries are good...

Other than that, all is good to me.


## Running quarkus-openshift tests locally

To run any AQA tests locally, you follow the same pattern:

0. Ensure your test machine is set up with [test prereqs](https://github.com/AdoptOpenJDK/openjdk-tests/blob/master/doc/Prerequisites.md). For external tests, you do need Docker installed.

1. Download/unpack the SDK you want to your test machine

2. `export TEST_JDK_HOME=</pathToWhereYouInstalledSDK>`

3. `git clone https://github.com/AdoptOpenJDK/openjdk-tests.git`

4. `cd openjdk-tests`

5. `./get.sh`

6. `cd TKG`

7. export required environment variables, BUILD_LIST and EXTRA_DOCKER_ARGS (`export BUILD_LIST=external/quarkus_openshift` and `export EXTRA_DOCKER_ARGS="-v $TEST_JDK_HOME:/opt/java/openjdk"`

8. `make compile` (This fetches test material and compiles it, based on build.xml files in the test directories)

9. `make _quarkus_openshift_test` (When you defined BUILD_LIST to point to a directory in openjdk-tests/external, then this is a testCaseName from the playlist.xml file within the directory you chose)

When [running these from the command-line](https://github.com/AdoptOpenJDK/openjdk-tests/blob/master/doc/userGuide.md#local-testing-via-make-targets-on-the-commandline), these tests are grouped under a make target called 'external', so 'make external' would run the entire set of tests found in the openjdk-tests/external directory. This is unadvisable! Limit what you compile and run, BUILD_LIST=external/`<someSubDirectory>`, and TARGET=`<testCaseNameFromSubdirPlaylist>`.

These tests run regularly and results can be found in [TRSS Third Party Application view](https://trss.adoptopenjdk.net/ThirdPartyAppView).
13 changes: 13 additions & 0 deletions external/quarkus_openshift/test.properties
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
github_url="https://github.com/quarkus-qe/quarkus-openshift-test-suite.git"
script="test.sh"
test_results="testResults"
tag_version="1.3.2.Final"
environment_variable="MODE=\"java\""
debian_packages="git wget"
debianslim_packages="${debian_packages}"
ubuntu_packages="${debian_packages}"
alpine_packages="bash git wget"
centos_packages="git wget"
clefos_packages="${centos_packages}"
ubi_packages="git wget"
ubi_minimal_packages="${ubi_packages}"