Skip to content

Commit

Permalink
Add aarch32 testing and doc update (#721)
Browse files Browse the repository at this point in the history
* Add aarch32
* Add doc/diagrams dir
* Use TD diagram
* Individual diagrams for nested test dirs
* Remove overviewDiagram.md doc used to generate diagrams (with mermaid live editor)
Signed-off-by: smlambert <[email protected]>
  • Loading branch information
Shelley Lambert authored Dec 4, 2018
1 parent 6b8ab55 commit b0a16b9
Show file tree
Hide file tree
Showing 13 changed files with 1,104 additions and 394 deletions.
41 changes: 31 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,26 +17,47 @@ See the License for the specific language governing permissions and

For nightly and release builds, there are test jobs running as part of the AdoptOpenJDK continuous delivery pipelines. There is a [blog post and brief presentation](https://blog.adoptopenjdk.net/2017/12/testing-java-help-count-ways) that explains what testing we run and how they fit into the overall delivery pipeline. As the world of testing at AdoptOpenJDK is evolving and improving quickly, some documentation may fall behind the march of progress. Please let us know and help us keep it up-to-date, and ask questions at the [AdoptOpenJDK testing Slack channel](https://adoptopenjdk.slack.com/messages/C5219G28G)!

![CI pipeline view](doc/ciPipeline.jpg)
![CI pipeline view](doc/diagrams/ciPipeline.jpg)

See the different test jobs here:
#### Test 'Inventory'

- [openjdk](https://ci.adoptopenjdk.net/view/Test_openjdk/) - OpenJDK regression tests (from OpenJDK)
The directory structure in this openjdk-tests repository is meant to reflect the different types of test we run (and pull from lots of other locations). The diagrams below show the test make target for each of the types, along with in-plan, upcoming additions (denoted by dotted line grey boxes). The provided links jump to test jobs in Jenkins (ci.adoptopenjdk.net).

- [system](https://ci.adoptopenjdk.net/view/Test_system/) - System and load tests (from the AdoptOpenJDK/openjdk-systemtest repo)
![overview of tests](doc/diagrams/overviewOfAdoptTests.svg)

- [external](https://ci.adoptopenjdk.net/view/Test_external/) - 3rd party application tests run in Docker containers (from different application projects such as scala, tomcat, etc)
---

- [perf](https://ci.adoptopenjdk.net/view/Test_perf/) - Open-source benchmark suites (from different open-source projects such as Acme-Air)
##### [openjdk](https://ci.adoptopenjdk.net/view/Test_openjdk/) tests - OpenJDK regression tests
Tests from OpenJDK

- [jck](https://ci.adoptopenjdk.net/view/Test_jck/) - TCK tests (under the OpenJDK Community TCK License Agreement), in compliance with the license agreement, are run on a private Jenkins server (jobs linked here are merely remote triggers to the private server)
---

##### [system](https://ci.adoptopenjdk.net/view/Test_system/) tests - System and load tests
Tests from the AdoptOpenJDK/openjdk-systemtest repo

#### Test 'Inventory'
---

##### [external](https://ci.adoptopenjdk.net/view/Test_external/) tests - 3rd party application tests
Test suites from a variety of applications, along with microprofile TCKs, run in Docker containers
![external tests](doc/diagrams/externaltests.svg)

---

##### [perf](https://ci.adoptopenjdk.net/view/Test_perf/) tests - Performance benchmark suites
Performance benchmark tests (both full suites and microbenches) from different open-source projects such as Acme-Air and AdoptOpenJDK/bumblebench
![perf tests](doc/diagrams/perftests.svg)

---

##### [functional](https://ci.adoptopenjdk.net/view/Test_functional/) tests - Unit and functional tests
Functional tests not originating from the openjdk regression suite, that include locale/language tests and a subset of implementation agnostic tests from the openj9 project.

---

The directory structure in this openjdk-tests repository is meant to reflect the different types of test we run (and pull from lots of other locations). The diagram below shows the test make target for each of the types, along with in-plan, upcoming additions (denoted by dotted line grey boxes).
##### jck tests - Compliance tests
TCK tests (under the OpenJDK Community TCK License Agreement), in compliance with the license agreement, are run on a private Jenkins server

![Overview of Tests](doc/overviewOfAdoptTests.svg)
---

#### Guide to Running the Tests Yourself
For more details on how to run the same tests that we run at AdoptOpenJDK on your laptop or in your build farm, please consult our [User Guide](doc/userGuide.md) (work in progress).
Expand Down
20 changes: 20 additions & 0 deletions buildenv/jenkins/openjdk_aarch32_linux
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
#!groovy
LABEL='sw.os.linux&&hw.arch.aarch32'

node ("master") {
checkout scm
def jenkinsfile = load "${WORKSPACE}/openjdk-tests/buildenv/jenkins/JenkinsfileBase"
jenkinsfile.setLabelParam()
cleanWs()
}

stage('Queue') {
node("$LABEL") {
PLATFORM = 'aarch32_linux'
SDK_RESOURCE = 'upstream'
SPEC='linux_arm'
checkout scm
def jenkinsfile = load "${WORKSPACE}/openjdk-tests/buildenv/jenkins/JenkinsfileBase"
jenkinsfile.testBuild()
}
}
File renamed without changes
File renamed without changes
Loading

0 comments on commit b0a16b9

Please sign in to comment.