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.6.tar.gz (10.9 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.6-py3-none-any.whl (8.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: jre_mirror-0.0.6.tar.gz
  • Upload date:
  • Size: 10.9 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.6.tar.gz
Algorithm Hash digest
SHA256 7bfb54c55eb644c2c84d1136a13a9b431583feaca2599f0fb4c08372b6a97078
MD5 cd90b455408ce2682e41617f56bd2119
BLAKE2b-256 0d2f7fc72190cd52c865c0abe34191d5f1769cc981e8a76480a98c0716512027

See more details on using hashes here.

File details

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

File metadata

  • Download URL: jre_mirror-0.0.6-py3-none-any.whl
  • Upload date:
  • Size: 8.4 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.6-py3-none-any.whl
Algorithm Hash digest
SHA256 34d08b20878cbdcce2f4933a87ea1e88df836eb62d244010d4ff4cae6ca09a51
MD5 f7366cc4de191fb508e8a79029fe2d02
BLAKE2b-256 cb70df93db69739b1b5bf52042c6be92e935040b1121f317b08438880c2e9846

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