Fork me on GitHub

Command Line

Command line is treated the same way a controller is. Which means all controller actions can be executed from command line.

The syntax for running a command line is:

        
            cd HATHOORA_ROOT/docroot
            
            php index.php -e ENVIRONMENT -r http://DOMAIN/PATH
        
    

However one disadvantage of this approach is that all of commands are now accessible from the web. In order to make a controller action strictly accessible from command line one could do something like this:

        
            class cliController extends \hathoora\controller\controller
            {
                
                public function job()
                {
                    $request = $this->getRequest();
                    if ($request->isCLI())
                    {   
                        // code for job goes here..
                    }
                }
            }
        
    
Page Took:         5.90 msec
Page Memory:   504.16k
docs / viewController / view (200)
Request UUID: 5e2e85cc439728.21915701
Get
Post
Cookies
Files
Session
Server
Response
No data.
No data.
No data.
No data.
No data.
REDIRECT_HATHOORA_ENV
prod
REDIRECT_STATUS
200
HATHOORA_ENV
prod
HTTP_HOST
hathoora.org
HTTP_X_FORWARDED_FOR
35.168.111.191
HTTP_X_REAL_IP
35.168.111.191
HTTP_CONNECTION
close
HTTP_USER_AGENT
CCBot/2.0 (https://commoncrawl.org/faq/)
HTTP_ACCEPT
text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
HTTP_ACCEPT_LANGUAGE
en-US,en;q=0.5
HTTP_IF_MODIFIED_SINCE
Thu, 12 Dec 2019 16:39:07 GMT
HTTP_ACCEPT_ENCODING
br,gzip
PATH
/sbin:/usr/sbin:/bin:/usr/bin
SERVER_SIGNATURE
Apache/2.2.15 (CentOS) Server at hathoora.org Port 80
SERVER_SOFTWARE
Apache/2.2.15 (CentOS)
SERVER_NAME
hathoora.org
SERVER_ADDR
192.168.1.11
SERVER_PORT
80
REMOTE_ADDR
207.126.164.119
DOCUMENT_ROOT
/var/websites/hathoora.org/docroot
SERVER_ADMIN
webmaster@hathoora.org
SCRIPT_FILENAME
/var/websites/hathoora.org/docroot/index.php
REMOTE_PORT
60900
REDIRECT_URL
/docs/v1/cli
GATEWAY_INTERFACE
CGI/1.1
SERVER_PROTOCOL
HTTP/1.0
REQUEST_METHOD
GET
QUERY_STRING
REQUEST_URI
/docs/v1/cli
SCRIPT_NAME
/index.php
PHP_SELF
/index.php
REQUEST_TIME_FLOAT
1580107212.276
REQUEST_TIME
1580107212
Status: 200
Headers:
Content-Type
text/html; charset=UTF-8
Configutation
Key Value
app.admin
Array
(
    [pattern] => /admin(|/)
    [directory] => hathoora
    [namespace] => hathoora\admin
)
app.docs
Array
(
    [pattern] => /docs(|/)
    [directory] => hathoora
    [dispatcher] => Array
        (
            [class] => customDispatcher
            [method] => dispatch
        )

)
app.site
Array
(
    [default] => 1
)
hathoora.logger
Array
(
    [profiling] => Array
        (
            [enabled] => 1
        )

    [logging] => Array
        (
            [enabled] => 1
            [level] => DEBUG
        )

    [webprofiler] => Array
        (
            [enabled] => 1
            [system] => 
            [show_redirects] => 
        )

)
hathoora.template
Array
(
    [engine] => Array
        (
            [name] => Stuob
        )

)
hathoora.database
Array
(
    [default] => mysql://dbuser:dbpassword@dbhost:3306/dbname
)
services.container
Array
(
    [class] => \hathoora\container
    [method] => getContainer
)
Logging (14)
hathoora.logger.logging.enabled: 1
# Time (msec) Level Memory (KB) Message
1 2.372 DEBUG 310.28 Configuration loaded:
Array
(
    [0] => app_prod.yml
    [1] => config_prod.yml
)
2 2.663 DEBUG 323.89 Listener "kernel.terminate[webprofiler]" has been added because of hathoora.logger.webprofiler.enabled
3 2.846 DEBUG 327.28 Event kernel.ready has been registered.
4 3.054 DEBUG 335.64 Calling App dispatcher (Array ( [class] => customDispatcher [method] => dispatch ) )...
5 3.219 DEBUG 350.43 Event kernel.route has been registered.
6 3.478 DEBUG 379.80 Event kernel.controller has been registered.
7 3.529 DEBUG 380.74 Calling controller (\docs\controller\viewController::view) with following params
Array
(
    [0] => v1
    [1] => cli
)
8 4.173 INFO 468.07 Template (docs/v1/cli.tpl.php) loaded
9 4.352 INFO 465.38 Template (/var/websites/hathoora.org/app/hathoora/docs//resources/templates/components/htmlMeta.tpl.php) loaded
10 4.449 INFO 466.63 Template (/var/websites/hathoora.org/app/hathoora/docs//resources/templates/components/flashMessages.tpl.php) loaded
11 5.483 INFO 435.38 Template (docs.tpl.php) fetched.
12 5.546 DEBUG 434.98 Event kernel.response has been registered.
13 5.587 DEBUG 436.16 Event kernel.terminate has been registered.
14 5.708 DEBUG 439.38 Event kernel.terminate->webprofiler has been notified.
Profiling
template
# Time (msec) Name Cached Took (msec)
1 3.634 docs.tpl.php 0 1.733