osmosis-labs / osmosis

The AMM Laboratory
https://app.osmosis.zone
Apache License 2.0
885 stars 580 forks source link

Installer outdated & slow binary downloads from Asia. #8334

Open daniel-farina opened 3 months ago

daniel-farina commented 3 months ago

Is the installer (get.osmosis.zone ) deprecated? It's still listed on the docs as the place to go to but it seems it's installing an older version. It also takes 4 hours to download the binary from FRA location in DO.

telegram-cloud-document-1-5103070009832244206

I guess the simplest fastest way to get up and running would be :

sudo curl -L https://github.com/osmosis-labs/osmosis/releases/download/v25.0.2/osmosisd-25.0.2-linux-arm64 -o /usr/local/bin/osmosisd

sudo chmod +x /usr/local/bin/osmosisd
Cordtus commented 3 months ago

I would have the installer reference the version from some running node for either network that way you never really need to worry about it.

import requests

def fetch_version(network):
    """
    Fetches the version number from the Osmosis blockchain based on the network type.

    Parameters:
    network (str): The network type, either 'testnet' or 'mainnet'.

    Returns:
    str: The version number if successful, None otherwise.
    """
    if network == "testnet":
        url = "https://rpc.testnet.osmosis.zone/abci_info"
    elif network == "mainnet":
        url = "https://rpc.osmosis.zone/abci_info"
    else:
        raise ValueError("Invalid network type. Use 'testnet' or 'mainnet'.")

    response = requests.get(url)

    if response.status_code == 200:
        json_response = response.json()
        version = json_response.get("result", {}).get("response", {}).get("version", None)
        return version
    else:
        return None

# Example usage:
network_type = "testnet"  # or "mainnet"
version = fetch_version(network_type)
if version:
    print(f"Build Tag Version for {network_type}: {version}")
else:
    print("Failed to fetch version information.")

(for the "local network" just have it use latest or whatever)