393 lines
14 KiB
Text
393 lines
14 KiB
Text
|
<!DOCTYPE html>
|
||
|
<head>
|
||
|
<title>Drupal VM</title>
|
||
|
<meta charset="utf-8">
|
||
|
<link rel="shortcut icon" href="//cdn.rawgit.com/geerlingguy/drupalvm.github.io/master/favicon.ico" type="image/vnd.microsoft.icon" />
|
||
|
<style>
|
||
|
.section-host {
|
||
|
font-family: monospace;
|
||
|
list-style-type: none;
|
||
|
padding: 0;
|
||
|
margin: 0;
|
||
|
}
|
||
|
/* minor fallback styling for when loaded without an internet connection */
|
||
|
.panel, .jumbotron, .well {
|
||
|
margin-bottom: 20px;
|
||
|
}
|
||
|
td, th {
|
||
|
padding: 8px;
|
||
|
}
|
||
|
</style>
|
||
|
</head>
|
||
|
<body>
|
||
|
{# Sets vagrant IP if equals 0.0.0.0 #}
|
||
|
{%- if vagrant_ip == '0.0.0.0' -%}
|
||
|
{%- set vagrant_ip = ansible_all_ipv4_addresses[1] -%}
|
||
|
{%- endif -%}
|
||
|
{# Returns the hosts server name based on the document root #}
|
||
|
{%- macro getServernameFromDocroot(path) -%}
|
||
|
{%- if drupalvm_webserver == 'apache' -%}
|
||
|
{%- for host in apache_vhosts -%}
|
||
|
{%- if host.documentroot == path -%}
|
||
|
{{ host.servername }}
|
||
|
{%- endif -%}
|
||
|
{%- endfor -%}
|
||
|
{%- elif drupalvm_webserver == 'nginx' -%}
|
||
|
{%- for host in nginx_vhosts -%}
|
||
|
{%- if host.root == path -%}
|
||
|
{{ host.server_name }}
|
||
|
{%- endif -%}
|
||
|
{%- endfor -%}
|
||
|
{%- endif -%}
|
||
|
{%- endmacro -%}
|
||
|
|
||
|
{%- macro printSite(servername, docroot) -%}
|
||
|
{%- if docroot not in _devtool_docroots -%}
|
||
|
<tr>
|
||
|
<td><a href="http://{{ servername }}">{{ servername }}</a></td>
|
||
|
<td><code>{{ docroot }}</code></td>
|
||
|
{% if configure_drush_aliases %}
|
||
|
<td><code>drush @{{ vagrant_machine_name }}.{{ servername }}</code></td>
|
||
|
{% endif %}
|
||
|
</tr>
|
||
|
{% endif %}
|
||
|
{%- endmacro %}
|
||
|
|
||
|
{%- macro printHostsEntry(ip, servername) -%}
|
||
|
{%- if servername != ip -%}
|
||
|
<li>{{ ip }} {{ servername }}</li>
|
||
|
{%- endif -%}
|
||
|
{%- endmacro %}
|
||
|
|
||
|
{%- macro sectionHost() -%}
|
||
|
<ul class="section-host">
|
||
|
{% if drupalvm_webserver == 'apache' -%}
|
||
|
{%- for host in apache_vhosts -%}
|
||
|
|
||
|
{{ printHostsEntry(vagrant_ip, host.servername) }}
|
||
|
{% if host.serveralias is defined -%}
|
||
|
{%- for alias in host.serveralias.split() -%}
|
||
|
{{ printHostsEntry(vagrant_ip, alias) }}
|
||
|
{%- endfor -%}
|
||
|
{%- endif %}
|
||
|
|
||
|
{%- endfor -%}
|
||
|
{%- elif drupalvm_webserver == 'nginx' -%}
|
||
|
{%- for host in nginx_vhosts -%}
|
||
|
|
||
|
{% for server_name in host.server_name.split(' ') -%}
|
||
|
{{ printHostsEntry(vagrant_ip, server_name) }}
|
||
|
{%- endfor %}
|
||
|
{% if host.server_name_redirect is defined -%}
|
||
|
{%- for server_name in host.server_name_redirect.split(' ') -%}
|
||
|
{{ printHostsEntry(vagrant_ip, server_name) }}
|
||
|
{%- endfor -%}
|
||
|
{%- endif %}
|
||
|
|
||
|
{%- endfor -%}
|
||
|
{%- endif %}
|
||
|
</ul>
|
||
|
{%- endmacro -%}
|
||
|
|
||
|
{%- macro sectionSiteList() -%}
|
||
|
<div class="table-responsive">
|
||
|
<table class="table table-striped table-hover">
|
||
|
<thead>
|
||
|
<tr>
|
||
|
<th>Hostname</th>
|
||
|
<th>Document Root</th>
|
||
|
{% if configure_drush_aliases -%}
|
||
|
<th>Drush alias*</th>
|
||
|
{%- endif %}
|
||
|
</tr>
|
||
|
</thead>
|
||
|
<tbody>
|
||
|
{% if drupalvm_webserver == 'apache' -%}
|
||
|
{%- for host in apache_vhosts -%}
|
||
|
{%- if host.documentroot is defined -%}
|
||
|
{{ printSite(host.servername, host.documentroot) }}
|
||
|
{%- endif -%}
|
||
|
{%- endfor -%}
|
||
|
{%- elif drupalvm_webserver == 'nginx' -%}
|
||
|
{%- for host in nginx_vhosts -%}
|
||
|
{%- if host.root is defined -%}
|
||
|
{%- for hostname in host.server_name.split() -%}
|
||
|
{{ printSite(hostname, host.root) }}
|
||
|
{%- endfor -%}
|
||
|
{%- endif -%}
|
||
|
{%- endfor -%}
|
||
|
{%- endif %}
|
||
|
<tr><td colspan=3><small>*Note: If Ansible isn't installed on your host, Drush aliases are only created inside the VM.</small></td></tr>
|
||
|
</tbody>
|
||
|
</table>
|
||
|
</div>
|
||
|
{%- endmacro -%}
|
||
|
|
||
|
{%- macro sectionDevelopmentTools() -%}
|
||
|
<div class="table-responsive">
|
||
|
<table class="table">
|
||
|
{% if not installed_extras -%}
|
||
|
<tr>
|
||
|
<td>There are no development tools installed inside the VM.</td>
|
||
|
</tr>
|
||
|
{%- endif -%}
|
||
|
{% if 'adminer' in installed_extras -%}
|
||
|
{% macro servername() %}{{ getServernameFromDocroot(adminer_install_dir) }}/{{ adminer_install_filename }}{% endmacro %}
|
||
|
{%- if servername() != "/{{ adminer_install_filename }}" -%}
|
||
|
<tr>
|
||
|
<th>Adminer</th>
|
||
|
<td><a href="http://{{ servername() }}">{{ servername() }}</a>
|
||
|
</br>
|
||
|
<a href="http://{{ servername() }}" class="btn btn-success btn-xs" role="button">Open</a>
|
||
|
<a href="http://docs.drupalvm.com/en/latest/extras/mysql/#connect-using-adminer" target="_blank" class="btn btn-info btn-xs" role="button">Documentation</a>
|
||
|
</td>
|
||
|
</tr>
|
||
|
{%- endif -%}
|
||
|
{%- endif %}
|
||
|
{% if 'mailhog' in installed_extras -%}
|
||
|
{% macro servername() %}{{ vagrant_hostname }}:8025{% endmacro %}
|
||
|
{%- if servername() != ":8025" -%}
|
||
|
<tr>
|
||
|
<th>MailHog</th>
|
||
|
<td><a href="http://{{ servername() }}">{{ servername() }}</a>
|
||
|
</br>
|
||
|
<a href="http://{{ servername() }}" class="btn btn-success btn-xs" role="button">Open</a>
|
||
|
<a href="http://docs.drupalvm.com/en/latest/extras/mailhog/" target="_blank" class="btn btn-info btn-xs" role="button">Documentation</a>
|
||
|
</td>
|
||
|
</tr>
|
||
|
{%- endif -%}
|
||
|
{%- endif %}
|
||
|
{% if 'pimpmylog' in installed_extras -%}
|
||
|
{% macro servername() %}{{ getServernameFromDocroot(pimpmylog_install_dir) }}{% endmacro %}
|
||
|
{%- if servername() -%}
|
||
|
<tr>
|
||
|
<th>PimpMyLog</th>
|
||
|
<td><a href="http://{{ servername() }}">{{ servername() }}</a>
|
||
|
</br>
|
||
|
<a href="http://{{ servername() }}" class="btn btn-success btn-xs" role="button">Open</a>
|
||
|
<a href="http://docs.drupalvm.com/en/latest/extras/pimpmylog/" target="_blank" class="btn btn-info btn-xs" role="button">Documentation</a>
|
||
|
</td>
|
||
|
</tr>
|
||
|
{%- endif -%}
|
||
|
{%- endif %}
|
||
|
{% if 'solr' in installed_extras -%}
|
||
|
{% macro servername() %}{{ vagrant_hostname }}:{{ solr_port }}/solr/{% endmacro %}
|
||
|
<tr>
|
||
|
<th>Solr</th>
|
||
|
<td><a href="http://{{ servername() }}">{{ servername() }}</a>
|
||
|
</br>
|
||
|
<a href="http://{{ servername() }}" class="btn btn-success btn-xs" role="button">Open</a>
|
||
|
<a href="http://docs.drupalvm.com/en/latest/extras/solr/" target="_blank" class="btn btn-info btn-xs" role="button">Documentation</a>
|
||
|
</td>
|
||
|
</tr>
|
||
|
{%- endif %}
|
||
|
{% if 'xhprof' in installed_extras -%}
|
||
|
{% macro servername() %}{{ getServernameFromDocroot(php_xhprof_html_dir) }}{% endmacro %}
|
||
|
{%- if servername() -%}
|
||
|
<tr>
|
||
|
<th>XHProf</th>
|
||
|
<td><a href="http://{{ servername() }}">{{ servername() }}</a>
|
||
|
</br>
|
||
|
<a href="http://{{ servername() }}" class="btn btn-success btn-xs" role="button">Open</a>
|
||
|
<a href="http://docs.drupalvm.com/en/latest/extras/xhprof/" target="_blank" class="btn btn-info btn-xs" role="button">Documentation</a>
|
||
|
</td>
|
||
|
</tr>
|
||
|
{%- endif -%}
|
||
|
{%- endif %}
|
||
|
</table>
|
||
|
</div>
|
||
|
{%- endmacro -%}
|
||
|
|
||
|
{%- macro sectionPhpInformation() -%}
|
||
|
<div class="table-responsive">
|
||
|
<table class="table">
|
||
|
<tr>
|
||
|
<th>PHP Version</th>
|
||
|
<td><code>{{ php_version }}</code></td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<th>Webserver</th>
|
||
|
<td><code>{{ drupalvm_webserver|capitalize }}</code></td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<th>Memory limit</th>
|
||
|
<td><code>{{ php_memory_limit }}</code></td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<th>PHP-FPM enabled</th>
|
||
|
<td><code>{{ 'yes' if php_enable_php_fpm else 'no' }}</code></td>
|
||
|
</tr>
|
||
|
<tr><td colspan=2><small><a href="/server-info.php">View more details in the server's phpinfo() report</a>.</small></td></tr>
|
||
|
</table>
|
||
|
</div>
|
||
|
{%- endmacro -%}
|
||
|
|
||
|
{%- macro sectionDatabaseConnection() -%}
|
||
|
<div class="table-responsive">
|
||
|
<table class="table">
|
||
|
<tr>
|
||
|
<th>MySQL Hostname</th>
|
||
|
<td><code>127.0.0.1</code></td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<th>MySQL Port</th>
|
||
|
<td><code>{{ mysql_port }}</code></td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<th>MySQL Username</th>
|
||
|
<td><code>{{ mysql_root_username }}</code></td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<th>MySQL Password</th>
|
||
|
<td><code>{{ mysql_root_password }}</code></td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<th>SSH Hostname</th>
|
||
|
<td><code>{{ vagrant_ip }}</code></td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<th>SSH Username</th>
|
||
|
<td><code>{{ vagrant_user }}</code></td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<th>SSH Private Key</th>
|
||
|
<td><code>~/.vagrant.d/insecure_private_key</code></td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
</div>
|
||
|
{%- endmacro -%}
|
||
|
|
||
|
{%- macro sectionDatabaseList() -%}
|
||
|
<div class="table-responsive">
|
||
|
<table class="table table-striped table-hover">
|
||
|
<tbody>
|
||
|
{% for database in mysql_databases -%}
|
||
|
{% if 'adminer' in installed_extras -%}
|
||
|
<tr>
|
||
|
<td>
|
||
|
<a href="http://{{ getServernameFromDocroot(adminer_install_dir) }}/{{ adminer_install_filename }}?username={{ mysql_root_username }}&db={{ database.name }}" class="btn btn-success btn-xs" role="button">{{ database.name }}</a>
|
||
|
</td>
|
||
|
</tr>
|
||
|
{% else -%}
|
||
|
<tr>
|
||
|
<td>{{ database.name }}</td>
|
||
|
</tr>
|
||
|
{%- endif %}
|
||
|
{%- endfor %}
|
||
|
</tbody>
|
||
|
</table>
|
||
|
</div>
|
||
|
{%- endmacro -%}
|
||
|
|
||
|
{%- macro SectionDatabaseListLabel() -%}
|
||
|
{% if 'adminer' in installed_extras -%}
|
||
|
Databases using Adminer
|
||
|
{% else -%}
|
||
|
Databases
|
||
|
{%- endif %}
|
||
|
{%- endmacro -%}
|
||
|
|
||
|
|
||
|
{%- macro sectionDatabaseUserList() -%}
|
||
|
<div class="table-responsive">
|
||
|
<table class="table table-striped table-hover">
|
||
|
<thead>
|
||
|
<tr>
|
||
|
<th>Username</th>
|
||
|
<th>Password</th>
|
||
|
</tr>
|
||
|
</thead>
|
||
|
<tbody>
|
||
|
{% for user in mysql_users -%}
|
||
|
<tr>
|
||
|
<td><code>{{ user.name }}</code></td>
|
||
|
<td><code>{{ user.password }}</code></td>
|
||
|
</tr>
|
||
|
{%- endfor %}
|
||
|
</tbody>
|
||
|
</table>
|
||
|
</div>
|
||
|
{%- endmacro -%}
|
||
|
|
||
|
<div class="container">
|
||
|
|
||
|
<div class="row">
|
||
|
<div class="col-md-12">
|
||
|
<section class="jumbotron text-center">
|
||
|
<a href="https://www.drupalvm.com/"><img src="http://docs.drupalvm.com/en/latest/images/drupal-vm-logo.png" alt="Drupal VM" title="Welcome to Drupal VM" class="img-responsive center-block"></a>
|
||
|
<p><a href="https://github.com/geerlingguy/drupal-vm">Drupal VM</a> is a VM for local Drupal development, built with Vagrant + Ansible.</p>
|
||
|
<p><a class="btn btn-primary btn-lg" href="http://docs.drupalvm.com/en/latest/" role="button">Read the documentation</a></p>
|
||
|
</section>
|
||
|
</div>
|
||
|
</div>
|
||
|
|
||
|
<div class="row">
|
||
|
<div class="col-md-9">
|
||
|
<section class="panel panel-default">
|
||
|
<div class="panel-heading">Your sites</div>
|
||
|
<div class="panel-body">
|
||
|
{{ sectionSiteList() }}
|
||
|
</div>
|
||
|
</section>
|
||
|
</div>
|
||
|
|
||
|
<div class="col-md-3">
|
||
|
<section class="panel panel-default">
|
||
|
<div class="panel-heading"> {{ SectionDatabaseListLabel() }}</div>
|
||
|
<div class="panel-body">
|
||
|
{{ sectionDatabaseList() }}
|
||
|
|
||
|
{{ sectionDatabaseUserList() }}
|
||
|
</div>
|
||
|
</section>
|
||
|
</div>
|
||
|
</div>
|
||
|
|
||
|
<div class="row">
|
||
|
<div class="col-md-3">
|
||
|
<section class="panel panel-default">
|
||
|
<div class="panel-heading">PHP information</div>
|
||
|
<div class="panel-body">
|
||
|
{{ sectionPhpInformation() }}
|
||
|
</div>
|
||
|
</section>
|
||
|
</div>
|
||
|
|
||
|
<div class="col-md-6">
|
||
|
<section class="panel panel-default">
|
||
|
<div class="panel-heading">MySQL connection information</div>
|
||
|
<div class="panel-body">
|
||
|
{{ sectionDatabaseConnection() }}
|
||
|
</div>
|
||
|
</section>
|
||
|
</div>
|
||
|
|
||
|
<div class="col-md-3">
|
||
|
<section class="panel panel-default">
|
||
|
<div class="panel-heading">Development tools</div>
|
||
|
<div class="panel-body">
|
||
|
{{ sectionDevelopmentTools() }}
|
||
|
</div>
|
||
|
</section>
|
||
|
</div>
|
||
|
</div>
|
||
|
|
||
|
<div class="row">
|
||
|
<div class="col-md-12">
|
||
|
<section class="panel panel-default">
|
||
|
<div class="panel-heading">/etc/hosts</div>
|
||
|
<div class="panel-body">
|
||
|
<section class="well small">
|
||
|
{{ sectionHost() }}
|
||
|
</section>
|
||
|
<small>Unless you're using the <a href="https://github.com/cogitatio/vagrant-hostsupdater" target="_blank">vagrant-hostsupdater</a> or <a href="https://github.com/smdahlen/vagrant-hostmanager" target="_blank">vagrant-hostmanager</a> plugin, add the lines above to your host machine's hosts file.</small>
|
||
|
</div>
|
||
|
</section>
|
||
|
</div>
|
||
|
</div>
|
||
|
</div>
|
||
|
|
||
|
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
|
||
|
</body>
|
||
|
</html>
|