class MStrap::Runtimes::Php

Overview

PHP runtime management implmentation. It contains methods for interacting with PHP via the chosen runtime manager and bootstrapping a PHP project based on conventions.

Defined in:

mstrap/runtimes/php.cr

Instance Method Summary

Instance methods inherited from class MStrap::Runtime

bootstrap bootstrap, current_version current_version, has_runtime_plugin? has_runtime_plugin?, has_version?(version) has_version?, has_versions? has_versions?, install_packages(packages : Array(Defs::PkgDef), runtime_version : String | Nil = nil) : Bool install_packages, installed_versions installed_versions, language_name : String language_name, latest_version latest_version, matches? : Bool matches?, runtime_exec(command : String, args : Array(String) | Nil = nil, runtime_version : String | Nil = nil) runtime_exec, runtime_manager : MStrap::RuntimeManager runtime_manager, setup setup, with_dir_version(dir, &) with_dir_version

Constructor methods inherited from class MStrap::Runtime

new(runtime_manager : RuntimeManager) new

Instance methods inherited from module MStrap::DSL::System

cmd(env : Hash | Nil, command : String, args : Array(String) | Nil, **kwargs) cmd, has_command?(command_name : String, **kwargs) : Bool has_command?

Instance methods inherited from module MStrap::DSL::Logging

log(msg) log, logc(msg) logc, logd(msg) logd, logn(msg) logn, logw(msg) logw, success(msg) success

Instance Method Detail

def bootstrap #
Description copied from class MStrap::Runtime

Bootstrap the current directory for the runtime


[View source]
def install_packages(packages : Array(Defs::PkgDef), runtime_version : String | Nil = nil) : Bool #
Description copied from class MStrap::Runtime

Installs global packages for the runtime with an optional version specification, and optional runtime version.

NOTE The version specification is dependent upon the underlying package manager and is passed verbatim.


[View source]
def matches? : Bool #
Description copied from class MStrap::Runtime

Returns whether the project uses the runtime


[View source]