Skip to content

Commit 1dfd072

Browse files
authored
initial temurin rewrite (#2601)
* initial temurin rewrite * martijn fixes * Update README.md
1 parent 0d358c4 commit 1dfd072

36 files changed

+177
-199
lines changed

.azure-devops/build/steps/shared/before.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ steps:
4848
- checkout: self
4949

5050
# set the FILENAME environment varialbe
51-
# based on https://github.com/AdoptOpenJDK/openjdk-build/blob/master/pipelines/build/common/openjdk_build_pipeline.groovy#L374
51+
# based on https://github.com/adoptium/temurin-build/blob/master/pipelines/build/common/openjdk_build_pipeline.groovy#L374
5252
# TODO: support more options
5353
- bash: |
5454
# convert JAVA_TO_BUILD to upper case

.azure-devops/openjdk-pipelines.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: "AdoptOpenJDK-$(JAVA_TO_BUILD)-$(Date:yyyy-MM-dd)"
1+
name: "Adoptium-$(JAVA_TO_BUILD)-$(Date:yyyy-MM-dd)"
22

33
trigger: none
44

.github/ISSUE_TEMPLATE/build-issue.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
name: 🐛 Bug Report
3-
about: For problems related to how the adoptopenjdk binaries are created or published
3+
about: For problems related to how the Temurin binaries are created or published
44

55
---
66

.github/ISSUE_TEMPLATE/documentation.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
name: 📚 Documentation update
3-
about: Request for updates to the documentation about building AdoptOpenJDK
3+
about: Request for updates to the documentation about building Temurin
44
labels: 'documentation'
55
---
66

.github/ISSUE_TEMPLATE/feature_request.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ about: Suggest a new feature for this project
44
labels: 'enhancement'
55
---
66

7-
Features that impact the whole project (e.g. Adding a new OpenJDK distribution)are made over at the [TSC](https://github.com/AdoptOpenJDK/TSC/).
7+
Features that impact the whole project (e.g. Adding a new OpenJDK distribution)are made over at the [adoptium](https://github.com/adoptium/adoptium/).
88

99
Otherwise, please describe what enhancement you would like to see in the build
1010
scripts:

.github/ISSUE_TEMPLATE/not-sure-where-to-raise-an-issue.md

+2-3
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,7 @@ about: No sure where to raise the issue?
66

77
Unsure where to raise something? Here are some of the common places:
88
- If your issue is due to the way OpenJDK is built, then this is the repository to raise it in - Describe your problem below
9-
- If your issue is related to our installers (as opposed to tgz/zip downloads) raise it in [openjdk-installer](https://github.com/AdoptOpenJDK/openjdk-installer/)
10-
- If your issue is related to and end-user visible issue with the JDK, or an underlying java bug, please raise it in [openjdk-support](https://github.com/AdoptOpenJDK/openjdk-support/issues)
11-
- Otherwise, take a look at our TSC repository directory [here](https://github.com/AdoptOpenJDK/TSC/#dependent-projects). If you're still not sure then join our [slack channel[(http://adoptopenjdk.net/slack) and ask on `#general`
9+
- If your issue is related to our installers (as opposed to tgz/zip downloads) raise it in [installer](https://github.com/adoptium/installer/)
10+
- If your issue is related to and end-user visible issue with the JDK, or an underlying java bug, please raise it in [adoptium-support](https://github.com/adoptium/adoptium-support/issues)
1211

1312
**Problem description:**

.github/workflows/build.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ jobs:
1414
matrix:
1515
os: [linux]
1616
version: [jdk8u, jdk11u, jdk16u, jdk]
17-
vm: [hotspot, openj9]
17+
vm: [hotspot]
1818
image: [adoptopenjdk/centos7_build_image]
1919
include:
2020
- os: alpine-linux

CONTRIBUTING.md

+6-6
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ Contact the Eclipse Foundation Webdev team via [email protected].
3737

3838
## Issues and Enhancements
3939

40-
Please let us know via our [issue tracker](https://github.com/AdoptOpenJDK/openjdk-build/issues) if you find a problem, even if you don't have a fix for it. The ideal issue report should be descriptive, and where possible include the steps we can take to reproduce the problem for ourselves.
40+
Please let us know via our [issue tracker](https://github.com/adoptium/temurin-build/issues) if you find a problem, even if you don't have a fix for it. The ideal issue report should be descriptive, and where possible include the steps we can take to reproduce the problem for ourselves.
4141

4242
If you have a proposed fix for an issue, or an enhancement you would like to make to the code please describe it in an issue, then send us the code as a [Github pull request](https://help.github.com/articles/about-pull-requests) as described below.
4343

@@ -47,7 +47,7 @@ We use GitHub's pull requests (PRs) as the primary way to accept contributions t
4747

4848
Consider whether the project documentation or tests also need updating as part of your change, and make that part of the same logical issue and PR. Open your PR against the master branch of the project.
4949

50-
To keep track of [the pull requests we are managing](https://github.com/AdoptOpenJDK/openjdk-build/pulls) we ask that you follow these guidelines for structuring the pull request title and comment.
50+
To keep track of [the pull requests we are managing](https://github.com/adoptium/temurin-build/pulls) we ask that you follow these guidelines for structuring the pull request title and comment.
5151

5252
### Pull request title
5353

@@ -61,7 +61,7 @@ Where your PR fixes an issue, it should include a reference to the issue's ident
6161

6262
### Licensing and Developer certificate of origin
6363

64-
When you submit any copyrighted material to the project via a pull request, issue tracker, or any other means, you agree to license the material under [the project's open source license](https://github.com/AdoptOpenJDK/openjdk-build/blob/master/LICENSE), and warrant that you have the legal authority to do so, whether or not you state this explicitly.
64+
When you submit any copyrighted material to the project via a pull request, issue tracker, or any other means, you agree to license the material under [the project's open source license](https://github.com/adoptium/temurin-build/blob/master/LICENSE), and warrant that you have the legal authority to do so, whether or not you state this explicitly.
6565

6666
We ask that you include a line similar to the following as part of your pull request comment or individual commit comments:
6767

@@ -77,17 +77,17 @@ By adding this simple comment, you are telling the community that you wrote the
7777
7878
### Source file headers
7979

80-
All the project's source files must start with a comment, as near to the top of the file as practical, that includes a reference to [the project license](https://github.com/AdoptOpenJDK/openjdk-build/blob/master/LICENSE). Take a look at some existing files to see how we do that, and if there are any questions just ask. In some cases, such as small, trivial files, or source files generated by tooling we don't reference the license again, but it still applies wherever the file contains copyrightable material.
80+
All the project's source files must start with a comment, as near to the top of the file as practical, that includes a reference to [the project license](https://github.com/adoptium/temurin-build/blob/master/LICENSE). Take a look at some existing files to see how we do that, and if there are any questions just ask. In some cases, such as small, trivial files, or source files generated by tooling we don't reference the license again, but it still applies wherever the file contains copyrightable material.
8181

82-
We don't place explicit copyright statements in the project source files. The project comprises many distinct pieces of code, spread across numerous source files, and authored by a variety of individuals. Managing copyright statements is unproductive and [can lead to confusion and contention around the edge cases](https://opensource.com/law/14/n2/copyright-statements-source-files). Rather we utilize [the NOTICE file](https://github.com/AdoptOpenJDK/openjdk-build/blob/master/NOTICE) mechanism as a way to acknowledge copyright broadly where there is a valid reason to do so.
82+
We don't place explicit copyright statements in the project source files. The project comprises many distinct pieces of code, spread across numerous source files, and authored by a variety of individuals. Managing copyright statements is unproductive and [can lead to confusion and contention around the edge cases](https://opensource.com/law/14/n2/copyright-statements-source-files). Rather we utilize [the NOTICE file](https://github.com/adoptium/temurin-build/blob/master/NOTICE) mechanism as a way to acknowledge copyright broadly where there is a valid reason to do so.
8383

8484
Finally, for similar reasons to avoiding individual copyright statements, we don't maintain `@author` tags in source files. There are good arguments to suggest that [author tags discourage open contribution](https://producingoss.com/en/managing-volunteers.html#territoriality), and we depend upon Git to maintain that information for the project.
8585

8686
### Ensuring high quality
8787

8888
If you're changing a shellscript, please make sure you run [shellcheck](https://github.com/koalaman/shellcheck) before submitting your PR. This will also run in a GitHub check titled `Linter` to ensure you comply to our coding style guidelines (alongside a lot of other linters for different formats).
8989

90-
After we receive your pull request our [GitHub Checks](https://github.com/AdoptOpenJDK/openjdk-build/tree/master/.github/workflows) will test your changes.
90+
After we receive your pull request our [GitHub Checks](https://github.com/adoptium/temurin-build/tree/master/.github/workflows) will test your changes.
9191
If you're making any changes to our groovy files, you'll be more interested in our [pr-tester](https://ci.adoptopenjdk.net/view/build-tester/job/build-scripts-pr-tester/job/openjdk-build-pr-tester/) jenkins job which executes a set of test pipelines in a semi-live environment. Watch for the results posted as a comment to the PR, investigate and fix any failures.
9292
Please see the [Testing.md](Testing.md) for more information on any of this.
9393

FAQ.md

+18-27
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,16 @@
1-
# openjdk-build FAQ
1+
# temurin-build FAQ
22

33
This document covers cover how to perform various repeatable tasks in the
44
repository that might not otherwise be obvious from just looking at the
55
repository.
66

7-
## Access control in this repository
7+
## How do I find my way around Temurin's build automation scripts?
88

9-
The GitHub teams relevant to this repository are as follows (Note, you
10-
won't necessarily have access to see these links):
11-
12-
- [GetOpenJDK](https://github.com/orgs/AdoptOpenJDK/teams/getopenjdk) - `Triage` level of access which lets you assign issues to people
13-
- [build](https://github.com/orgs/AdoptOpenJDK/teams/build) - `Write` access which lets you approve and merge PRs and run and configure most Jenkins jobs
14-
- [release](https://github.com/orgs/AdoptOpenJDK/teams/build) - Allows you to run the release jobs in Jenkins
15-
16-
## How do I find my way around AdoptOpenJDK's build automation scripts?
17-
18-
I wrote this diagram partially for my own benefit in [issue 957](https://github.com/AdoptOpenJDK/openjdk-build/issues/957) that lists the shell scripts (`S`) and environment scripts (`E`). I think it would be useful to incorporate this into the documentation (potentially annotated with a bit more info) so people can find their way around the myriad of script levels that we now have.
9+
I wrote this diagram partially for my own benefit in [issue 957](https://github.com/adoptium/temurin-build/issues/957) that lists the shell scripts (`S`) and environment scripts (`E`). I think it would be useful to incorporate this into the documentation (potentially annotated with a bit more info) so people can find their way around the myriad of script levels that we now have.
1910
Note that the "end-user" scripts start at `makejdk-any-platform.sh` and a
20-
diagram of those relationships can be seen [here](https://github.com/AdoptOpenJDK/openjdk-build/blob/master/docs/images/AdoptOpenJDK_Build_Script_Relationships.png)
11+
diagram of those relationships can be seen [here](https://github.com/adoptium/temurin-build/blob/master/docs/images/AdoptOpenJDK_Build_Script_Relationships.png)
2112

22-
*See the [ci-jenkins-pipelines FAQ.md](https://github.com/AdoptOpenJDK/ci-jenkins-pipelines/blob/master/FAQ.md#how-do-i-find-my-way-around-adoptopenjdks-build-automation-scripts) for the Jenkins side of the pipeline*
13+
*See the [ci-jenkins-pipelines FAQ.md](https://github.com/adoptium/ci-jenkins-pipelines/blob/master/FAQ.md#how-do-i-find-my-way-around-adoptopenjdks-build-automation-scripts) for the Jenkins side of the pipeline*
2314

2415
```markdown
2516
G - make-adopt-build-farm.sh
@@ -42,7 +33,7 @@ There is also some documentation in [CHANGELOG.md](CHANGELOG.md)
4233
## What are the prerequisites for a system used for builds?
4334

4435
- The upstream OpenJDK build requirements are at [Supported Build Platforms](https://wiki.openjdk.java.net/display/Build/Supported+Build+Platforms)
45-
- The AdoptOpenJDK levels we build on are in [Minimum-OS-levels](https://github.com/AdoptOpenJDK/openjdk-build/wiki/%5BWIP%5D-Minimum-OS-levels) although anything with comparable equivalent or later C libraries should work ok (in particular we have built on most current Linux distros without issues)
36+
- The Temurin levels we build on are in [Minimum-OS-levels](https://github.com/adoptium/temurin-build/wiki/%5BWIP%5D-Minimum-OS-levels) although anything with comparable equivalent or later C libraries should work ok (in particular we have built on most current Linux distros without issues)
4637

4738
In terms of compilers, these are what we currently use for each release:
4839

@@ -58,30 +49,30 @@ In terms of compilers, these are what we currently use for each release:
5849
| JDK11 | macos | clang-700.1.81 |
5950
| JDK13+ | macos | clang-900.0.39.2 |
6051

61-
All machines at AdoptOpenJDK are set up using the ansible playbooks from the
52+
All machines at Temurin are set up using the ansible playbooks from the
6253
[infrastructure](https://github.com/adoptopenjdk/openjdk-infrastructure) repository.
6354

6455
## How do I change the parameters, such as configure flags, for a Jenkins build
6556

6657
Where you change them depends on the scope of the parameter or flag:
6758

6859
- *If the parameter will affect all users, regardless of environment or OS/Arch*
69-
- [build.sh](https://github.com/AdoptOpenJDK/openjdk-build/blob/master/sbin/build.sh) OR [makejdk-any-platform.sh](https://github.com/AdoptOpenJDK/openjdk-build/blob/master/makejdk-any-platform.sh) depending on how high up in the execution stack it needs to be.
70-
- [Example PR - Adding a new archival feature for OpenJ9 memory dumps](https://github.com/AdoptOpenJDK/openjdk-build/pull/2464)
60+
- [build.sh](https://github.com/adoptium/temurin-build/blob/master/sbin/build.sh) OR [makejdk-any-platform.sh](https://github.com/adoptium/temurin-build/blob/master/makejdk-any-platform.sh) depending on how high up in the execution stack it needs to be.
61+
- [Example PR - Adding a new archival feature for OpenJ9 memory dumps](https://github.com/adoptium/temurin-build/pull/2464)
7162
- *If the parameter will affect all machines of a specific OS OR related to the environment set up by [our ansible scripts](https://github.com/AdoptOpenJDK/openjdk-infrastructure) at the shell script level*
72-
- Modify the relevant environment files in [platform-specific-configurations](https://github.com/AdoptOpenJDK/openjdk-build/tree/master/build-farm/platform-specific-configurations)
73-
- [Example PR - Adding a new configure flag for OpenJ9 on all AIX machines](https://github.com/AdoptOpenJDK/openjdk-build/pull/1442/files)
63+
- Modify the relevant environment files in [platform-specific-configurations](https://github.com/adoptium/temurin-build/tree/master/build-farm/platform-specific-configurations)
64+
- [Example PR - Adding a new configure flag for OpenJ9 on all AIX machines](https://github.com/adoptium/temurin-build/pull/1442/files)
7465
- *If the parameter will affect only our jenkins environment or jenkins machine environment*
75-
- Modify the [pipeline files](https://github.com/AdoptOpenJDK/ci-jenkins-pipelines/tree/master/pipelines/build), although this is normally only done for configuration differences such as OpenJ9 Large Heap builds. See [the configuration file documentation](https://github.com/AdoptOpenJDK/ci-jenkins-pipelines#configuration-files) for more information about adding or altering custom jenkins param.
76-
- [Example PR - Adding Jenkins Support for a Cross Compiled Bisheng Binary](https://github.com/AdoptOpenJDK/ci-jenkins-pipelines/pull/68)
66+
- Modify the [pipeline files](https://github.com/adoptium/ci-jenkins-pipelines/tree/master/pipelines/build), although this is normally only done for configuration differences such as OpenJ9 Large Heap builds. See [the configuration file documentation](https://github.com/adoptium/ci-jenkins-pipelines#configuration-files) for more information about adding or altering custom jenkins param.
67+
- [Example PR - Adding Jenkins Support for a Cross Compiled Bisheng Binary](https://github.com/adoptium/ci-jenkins-pipelines/pull/68)
7768

7869
### TL;DR (Quick Reference Table)
7970

8071
| Parameter Location | Impact |
8172
| --- | --- |
82-
| [build.sh](https://github.com/AdoptOpenJDK/openjdk-build/blob/master/sbin/build.sh) OR [makejdk-any-platform.sh](https://github.com/AdoptOpenJDK/openjdk-build/blob/master/makejdk-any-platform.sh) | Anyone (including end users) who are running [makejdk-any-platform.sh](https://github.com/AdoptOpenJDK/openjdk-build/blob/master/makejdk-any-platform.sh) |
83-
| [platform-specific-configurations](https://github.com/AdoptOpenJDK/openjdk-build/tree/master/build-farm/platform-specific-configurations) scripts | Those using [build-farm/make-adopt-build-farm.sh](https://github.com/AdoptOpenJDK/openjdk-build/blob/master/build-farm/make-adopt-build-farm.sh) (inc. our pipelines) - should be stuff specific to our machines |
84-
| Jenkins resources in [ci-jenkins-pipelines](https://github.com/AdoptOpenJDK/ci-jenkins-pipelines) | Only when run through our jenkins pipelines. See the [configuration file documentation](https://github.com/AdoptOpenJDK/ci-jenkins-pipelines#configuration-files) for more information |
73+
| [build.sh](https://github.com/adoptium/temurin-build/blob/master/sbin/build.sh) OR [makejdk-any-platform.sh](https://github.com/adoptium/temurin-build/blob/master/makejdk-any-platform.sh) | Anyone (including end users) who are running [makejdk-any-platform.sh](https://github.com/adoptium/temurin-build/blob/master/makejdk-any-platform.sh) |
74+
| [platform-specific-configurations](https://github.com/adoptium/temurin-build/tree/master/build-farm/platform-specific-configurations) scripts | Those using [build-farm/make-adopt-build-farm.sh](https://github.com/adoptium/temurin-build/blob/master/build-farm/make-adopt-build-farm.sh) (inc. our pipelines) - should be stuff specific to our machines |
75+
| Jenkins resources in [ci-jenkins-pipelines](https://github.com/adoptium/ci-jenkins-pipelines) | Only when run through our jenkins pipelines. See the [configuration file documentation](https://github.com/adoptium/ci-jenkins-pipelines#configuration-files) for more information |
8576

8677
## How to do a new release build
8778

@@ -97,9 +88,9 @@ For more information, see the [PR testing documentation](Testing.md).
9788
## Which OS levels do we build on?
9889

9990
The operating systems/distributions which we build or are documented in the
100-
[openjdk-build wiki](https://github.com/AdoptOpenJDK/openjdk-build/wiki/%5BWIP%5D-Minimum-OS-levels).
91+
[temurin-build wiki](https://github.com/adoptium/temurin-build/wiki/%5BWIP%5D-Minimum-OS-levels).
10192
Runtime platforms are in our [supported platforms page](https://adoptium.net/supported_platforms.html).
10293

10394
## How to add a new build pipeline param and associated job configuration?
10495

105-
[This PR](https://github.com/AdoptOpenJDK/openjdk-build/pull/2416) demonstrates changes required to add a new build pipeline param and the associated version/platform job configurations for setting the value when needed (note, the `pipelines/` dir has since been moved to our [jenkins repository](https://github.com/AdoptOpenJDK/ci-jenkins-pipelines)).
96+
[This PR](https://github.com/adoptium/temurin-build/pull/2416) demonstrates changes required to add a new build pipeline param and the associated version/platform job configurations for setting the value when needed (note, the `pipelines/` dir has since been moved to our [jenkins repository](https://github.com/adoptium/ci-jenkins-pipelines)).

0 commit comments

Comments
 (0)