Skip to main content

A simple tool to deploy the jre binary releases mirror.

Project description

PyPI version License

About

A distribution tool of a selection of temurin17-binaries, as the GWF behavior is weird while downloading jre etc., with Python scripts.

How To

    JRE-Mirror requires Python 3.9 and above.

The sub-folders in temurin17-binaries can be deployed as a website root path. In the sub-folders, run the Python module, jre-mirror to download the selected binary distributions, with proxy configured in proxy.json.

Download the JRE-Mirror-jdk17.zip from the release section. Configure the list.json, which is the download tasks configuration, where

    mirroring: a list of target binaries to bo downloaded from temurin17
    resources: a list of target binaries completed, and is locally available

Start the jre-mirror Python module to download the mirrors.

    # (Tested on Ubuntu 24.0.4)
    cd JRE-Mirror/temurin17-binaries/jdk-17.0.17+10
    python3 -m venv .env
    source .env/bin/activate
    pip install jre-mirror
    python3 -m jre_mirror

Now configure the resources a Nginx static site or, If you need more fine control, use the Html-service as the web service, with which a simple Windows service can be setup as a static web site.

A sample configuration of html-service's configuration can be:

    { "type": "io.oz.srv.WebConfig",
      "port": 1984,
      "paths": [
        {"path": "/jre-17/*", "resource": "$HOME/JRE-Mirror/temurin17-binaries/jdk-17.0.17+10"}],
      "welcomepages": [],
      "startHandler": []
    }

Restart the service, if you followed the steps in the README of html-service.

    sudo systemctl restart html-service.service

Try

    http://127.0.0.1:1984/jre-17/list.json

The binaries and the json file can be available online now.

About Proxy

To configure the proxy, in list.json, specify the configuration file path:

    # list.json
    { ...
      "proxy": "proxy.json"
      ...
    }

And in proxy.json, configure the proxy string following the general proxy string format of Python:

   { "type": "io.oz.edge.Proxy",
     "http": "http://user:passwd@127.0.0.1:port",,
     "https":"http://user:passwd@127.0.0.1:port"
   }

Note: all the type fields in json files are neccessary.

Credits:

temurin17-binaries

The home for releases and nightlies for all Temurin17 variants and platforms

OpenJDK Mirror Scripts

These scripts are run at https://ci.adoptopenjdk.net/view/git-mirrors/ and are responsible for updating the Eclipse Adoptium clones of the various OpenJDK Skara github repositories that we are interested in building.

jyksnw/install-jdk

Python package that simplifies the process of installing OpenJDK on Windows, macOS, Linux and other supported operating systems, saving time and effort.

So no equivolent?

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jre_mirror-0.0.7.tar.gz (11.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

jre_mirror-0.0.7-py3-none-any.whl (8.6 kB view details)

Uploaded Python 3

File details

Details for the file jre_mirror-0.0.7.tar.gz.

File metadata

  • Download URL: jre_mirror-0.0.7.tar.gz
  • Upload date:
  • Size: 11.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.1

File hashes

Hashes for jre_mirror-0.0.7.tar.gz
Algorithm Hash digest
SHA256 b0dfcd67ca4cec721cfcbe16af7375798cda88795f5178bb6e22804a2639225f
MD5 5c8e0e7b2e33f2610b861a5218e7360e
BLAKE2b-256 b108c25159d795a567ae66af3378c541a83a1dec0c5d87b729ce5714fcf9b7ab

See more details on using hashes here.

File details

Details for the file jre_mirror-0.0.7-py3-none-any.whl.

File metadata

  • Download URL: jre_mirror-0.0.7-py3-none-any.whl
  • Upload date:
  • Size: 8.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.1

File hashes

Hashes for jre_mirror-0.0.7-py3-none-any.whl
Algorithm Hash digest
SHA256 1655c31e6f5e190f8481274dc780b0659432f031c691b1eb082560e9ddaedb7c
MD5 96837c57edce00761f6a64f2f40c54fa
BLAKE2b-256 1f6633c6826cdc686388af9fc11e66e0792f3f94d2926b293180052fbf24b89b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page