/install

Cross-platform set of script to install MetaCall infrastructure.

Primary LanguageShellApache License 2.0Apache-2.0

METACALL

MetaCall Polyglot Runtime

Abstract

Cross-platform set of scripts to install MetaCall Core infrastructure. For advanced install information, check the documentation.

Install

The following scripts are provided in order to install MetaCall:

In order to install MetaCall in one line, curl or wget or powershell can be used:

  • curl:
    curl -sL https://raw.githubusercontent.com/metacall/install/master/install.sh | sh
  • wget:
    wget -O - https://raw.githubusercontent.com/metacall/install/master/install.sh | sh
  • powershell:
    powershell -NoProfile -ExecutionPolicy unrestricted -Command "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; &([scriptblock]::Create((Invoke-WebRequest -UseBasicParsing 'https://raw.githubusercontent.com/metacall/install/master/install.ps1')))"

Install Linux or MacOS

Additional parameters for the install script:

  • --update: Updates automatically MetaCall if it is already installed without asking to the user.
  • --uninstall: Uninstalls MetaCall if it is already installed without asking to the user. Overwrites the update command.
  • --docker-install: Runs Docker installation overwriting Docker fallback option over binary installation.
  • --no-check-certificate: When running binary installation (the default one), disables checking certificates when downloading the tarball. Useful for environments where there is not certificates, but insecure.
  • --no-docker-fallback: When running binary installation (the default one), disables Docker installation as fallback if the binary installation fails.
  • --from-path <path>: Installs MetaCall from specific path, the <path> points to a previously download tarball located in your file system.

Example usage:

  • Install with curl without checking certificates and without docker fallback:

    curl --insecure -sL https://raw.githubusercontent.com/metacall/install/master/install.sh | sh -s -- --no-check-certificate --no-docker-fallback
  • Install with wget using Docker installer:

    wget -O - https://raw.githubusercontent.com/metacall/install/master/install.sh | sh -s -- --docker-install
  • Install with wget from a existing tarball located at /root/downloads/metacall-tarball-linux-amd64.tar.gz:

    wget -O - https://raw.githubusercontent.com/metacall/install/master/install.sh | sh -s -- --from-path /root/downloads/metacall-tarball-linux-amd64.tar.gz
  • Install metacall in a BusyBox without certificates:

    wget --no-check-certificate -O - https://raw.githubusercontent.com/metacall/install/master/install.sh | sh -s -- --no-check-certificate

Install Windows

Additional parameters for the install script:

  • -InstallDir <directory>: Defines a custom folder in order to install MetaCall in, otherwise it uses %LocalAppData%\MetaCall by default.
  • -Version <version>: Version of the tarball to be downloaded. Versions are available here. Uses latest version by default.
  • -FromPath <path>: Install MetaCall from an existing distributable tarball, path must point to a tarball downloaded from releases.

Example usage:

  • Install tarball version v0.1.0 into D:\metacall:
    powershell -NoProfile -ExecutionPolicy unrestricted -Command "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; &([scriptblock]::Create((Invoke-WebRequest -UseBasicParsing 'https://raw.githubusercontent.com/metacall/install/master/install.ps1'))) -InstallDir 'D:\metacall' -Version '0.1.0'"

Testing

./test.sh

Troubleshooting

Sometimes the domain raw.githubusercontent.com maybe blocked by your ISP. Due to this, you may not be able to install metacall directly from previous commands. In that case, you may clone this repo and directly run install.sh for Linux and run install.ps1 for Windows.