|
| 1 | +# Uploading New Java Version to CIPD |
| 2 | + |
| 3 | +We store the Java Version package on CIPD for use on CI. For more information read the internal |
| 4 | +docs [here](http://go/luci-cipd). |
| 5 | + |
| 6 | +Some links in the instructions below are Google-internal. |
| 7 | + |
| 8 | +## Steps |
| 9 | + |
| 10 | +### Request Access to CIPD |
| 11 | + |
| 12 | +1. Request temporary write access to upload packages to CIPD |
| 13 | + via http://go/flutter-luci-cipd#requesting-write-read-access-to-cipd-packages. |
| 14 | + |
| 15 | +2. Wait about 5-30 minutes for access rights to sync. To check if your rights have synced, see if |
| 16 | + you are a member of this |
| 17 | + group [here ](https://chrome-infra-auth.appspot.com/auth/groups/google%[email protected]). |
| 18 | + |
| 19 | +### Download the New Java Version and Set Up for CIPD Upload |
| 20 | + |
| 21 | +3. Download the new Java version via OpenJDK (not Oracle's Java for licensing/legal |
| 22 | + reasons) [here](https://openjdk.org/projects/jdk/) for the following platforms: |
| 23 | + linux-amd64(aka x64), mac-arm64, mac-amd64, and windows-amd64. |
| 24 | + |
| 25 | +4. Download the latest Java version from |
| 26 | + CIPD [here](https://chrome-infra-packages.appspot.com/p/flutter/java/openjdk) for the following |
| 27 | + platforms: linux-amd64(aka x64), mac-arm64, mac-amd64, and windows-amd64. |
| 28 | + |
| 29 | +5. Unzip the new Java version and the latest version. |
| 30 | + |
| 31 | +6. Add a file titled `openjdk.cipd.yaml` at the top-level directory. Copy the contents below into |
| 32 | + the file and replace contents in <> for your new Java version package: |
| 33 | + ```sh |
| 34 | + package: flutter/java/openjdk/<platform-architecture> |
| 35 | + description: OpenJDK <java_version> for <platform> |
| 36 | + install_mode: copy |
| 37 | + data: |
| 38 | + # This directory contains Java <platform-architecture> to be used in automated tests. |
| 39 | + - dir: . |
| 40 | + ``` |
| 41 | + |
| 42 | + Note: `linux-amd64` is an example of `<platform-architecture>` |
| 43 | + |
| 44 | +7. Ensure the file/directory structure of the new Java version package to be uploaded is the same as |
| 45 | + the structure at the top-level of the latest from CIPD. |
| 46 | + This involves potentially deleting contents of the top-level directory. |
| 47 | + |
| 48 | +### Upload to CIPD |
| 49 | + |
| 50 | +8. To run CIPD commands, please run this command: |
| 51 | + |
| 52 | + ```sh |
| 53 | + cipd auth-login |
| 54 | + ``` |
| 55 | + |
| 56 | +9. To upload the new Java version to CIPD, please run this command: |
| 57 | + |
| 58 | + ```sh |
| 59 | + cipd create -in <path_to_new_java_version_package> -name flutter/java/openjdk/<platform-architecture> -tag version:<java_version> |
| 60 | + ``` |
| 61 | + |
| 62 | + Note: Please check you have the correct name, tags, package structure before uploading to CIPD |
| 63 | + because deleting the package on CIPD is difficult. |
| 64 | + |
| 65 | +10. Check to see if your new Java version has successfully uploaded to CIPD by clicking on the |
| 66 | + relevant platform [here](https://chrome-infra-packages.appspot.com/p/flutter/java/openjdk). |
| 67 | + |
| 68 | +### Troubleshooting CIPD (Optional) |
| 69 | + |
| 70 | +If you accidentally uploaded the incorrect package to CIPD, you can delete the tag using these |
| 71 | +instructions [here](go/flutter-luci-playbook#remove-duplicated-cipd-tags). |
| 72 | +Then, re-upload the correct Java version pacakge to CIPD. |
0 commit comments