Kaydet (Commit) 66548ae2 authored tarafından mertcelen's avatar mertcelen

Module support improved

Last .env config files moved under liman configuration file.
üst 8429017a
......@@ -6,38 +6,11 @@ APP_URL=https://liman.dev
APP_NOTIFICATION_EMAIL=mert@liman.dev
APP_VERSION=Development
LOG_CHANNEL=single
LOG_LEVEL=debug
LOG_PATH=/liman/logs/liman.log
LOG_ERROR_PATH=/liman/logs/error.log
DB_CONNECTION=sqlite
DB_PATH=/liman/database/liman.sqlite
BROADCAST_DRIVER=pusher
CACHE_DRIVER=array
SESSION_DRIVER=file
SESSION_LIFETIME=120
QUEUE_DRIVER=database
SERVER_CONNECTION_TIMEOUT=5000
USER_WIDGET_COUNT=10
EXTENSION_DEVELOPER_MODE=true
NAV_EXTENSION_HIDE_COUNT=10
WIDGET_REFRESH_TIME=30000
SERVER_PATH=/liman/server/
SANDBOX_PATH=/liman/sandbox/
EXTENSIONS_PATH=/liman/extensions/
KEYS_PATH=/liman/keys/
BRAND_NAME=Havelsan
LIMAN_CONNECTOR_SERVER=http://127.0.0.1:5000
PUSHER_APP_ID=liman
PUSHER_APP_KEY=liman-key
PUSHER_APP_SECRET=liman-secret
PUSHER_APP_CLUSTER=eu
LIMAN_RESTRICTED=false
LIMAN_RESTRICTED_SERVER=
LIMAN_RESTRICTED_EXTENSION=
\ No newline at end of file
QUEUE_DRIVER=database
\ No newline at end of file
......@@ -56,7 +56,6 @@ jobs:
sed -i "s/APP_VERSION=Development/APP_VERSION=$GITHUB_RUN_ID/g" package/liman/server/.env
sed -i "s/APP_DEBUG=true/APP_DEBUG=false/g" package/liman/server/.env
sed -i "s/APP_ENV=local/APP_ENV=production/g" package/liman/server/.env
sed -i "s/EXTENSION_DEVELOPER_MODE=true/EXTENSION_DEVELOPER_MODE=false/g" package/liman/server/.env
mv package/liman/server/build_tools/DEBIAN package/
rm -rf package/liman/server/build_tools
cd package
......
......@@ -167,7 +167,7 @@ class SSHConnector implements Connector
)->first()->token;
$res = $client->request(
'POST',
env("LIMAN_CONNECTOR_SERVER") . '/' . $url,
'http://127.0.0.1:5000/' . $url,
["form_params" => $params]
);
} catch (BadResponseException $e) {
......@@ -203,7 +203,7 @@ class SSHConnector implements Connector
try {
$res = $client->request(
'POST',
env('LIMAN_CONNECTOR_SERVER') . '/new',
'http://127.0.0.1:5000/new',
[
'form_params' => [
"username" => $username,
......
......@@ -58,7 +58,7 @@ class SSHTunnelConnector
try {
$res = $client->request(
'POST',
env("LIMAN_CONNECTOR_SERVER") . '/' . $url,
'http://127.0.0.1:5000/' . $url,
["form_params" => $params]
);
} catch (BadResponseException $e) {
......
......@@ -87,7 +87,7 @@ class WinRMConnector implements Connector
)->first()->token;
$res = $client->request(
'POST',
env("LIMAN_CONNECTOR_SERVER") . '/' . $url,
'http://127.0.0.1:5000/' . $url,
[
"form_params" => $params,
'timeout' => 5,
......@@ -174,7 +174,7 @@ class WinRMConnector implements Connector
try {
$res = $client->request(
'POST',
env('LIMAN_CONNECTOR_SERVER') . '/new',
'http://127.0.0.1:5000/new',
[
'form_params' => [
"username" => $username,
......
......@@ -144,7 +144,7 @@ class PHPSandbox implements Sandbox
'aes-256-cfb8',
shell_exec(
'cat ' .
env('KEYS_PATH') .
'/liman/keys' .
DIRECTORY_SEPARATOR .
extension()->id
),
......@@ -152,7 +152,7 @@ class PHPSandbox implements Sandbox
Str::random()
);
$keyPath = env('KEYS_PATH') . DIRECTORY_SEPARATOR . extension()->id;
$keyPath = '/liman/keys' . DIRECTORY_SEPARATOR . extension()->id;
return "sudo runuser " .
cleanDash(extension()->id) .
......
......@@ -130,14 +130,7 @@ class PythonSandbox implements Sandbox
$isAjax,
];
// $encrypted = openssl_encrypt(
// Str::random() . base64_encode(json_encode($array)),
// 'aes-256-cfb8',
// shell_exec('cat ' . env('KEYS_PATH') . DIRECTORY_SEPARATOR . extension()->id),
// 0,
// Str::random()
// );
$keyPath = env('KEYS_PATH') . DIRECTORY_SEPARATOR . extension()->id;
$keyPath = '/liman/keys' . DIRECTORY_SEPARATOR . extension()->id;
$combinerFile =
"/liman/extensions/" .
strtolower(extension()->name) .
......
......@@ -205,7 +205,7 @@ class MainController extends Controller
}
$extension_folder = "/liman/extensions/" . strtolower($json["name"]);
$passPath = env('KEYS_PATH') . DIRECTORY_SEPARATOR . $new->id;
$passPath = '/liman/keys' . DIRECTORY_SEPARATOR . $new->id;
file_put_contents($passPath, Str::random(32));
shell_exec(
......@@ -321,7 +321,7 @@ class MainController extends Controller
shell_exec('sudo useradd -r -s /bin/sh ' . cleanDash($ext->id));
}
$passPath = env('KEYS_PATH') . DIRECTORY_SEPARATOR . $ext->id;
$passPath = '/liman/keys' . DIRECTORY_SEPARATOR . $ext->id;
file_put_contents($passPath, Str::random(32));
shell_exec(
"
......
......@@ -227,6 +227,13 @@ class OneController extends Controller
$similar[$item["variable"]] = base64_decode($stringToDecode);
}
}
if(config('liman.liman_restricted') == true && !user()->isAdmin()){
return response()->view('extension_pages.setup_restricted', [
'extension' => $extension,
'similar' => $similar,
]);
}
return response()->view('extension_pages.setup', [
'extension' => $extension,
......@@ -256,7 +263,7 @@ class OneController extends Controller
cleanDash(extension()->id) .
";
rm " .
env('KEYS_PATH') .
'/liman/keys/' .
DIRECTORY_SEPARATOR .
extension()->id .
";
......
......@@ -105,7 +105,7 @@ if (!function_exists('settingsModuleButtons')) {
$foo = substr($file, 15);
$name = substr($foo, 0, strpos($foo, "/"));
$str .= "<li class=\"nav-item\">
<a class=\"nav-link\" data-toggle=\"tab\" href=\"#$name\">$name</a>
<a id\"" . $name . "tab\" class=\"nav-link\" data-toggle=\"tab\" href=\"#$name\">$name</a>
</li>";
}
return $str;
......@@ -141,7 +141,7 @@ if (!function_exists('serverModuleButtons')) {
$foo = substr($file, 15);
$name = substr($foo, 0, strpos($foo, "/"));
$str .= "<li class=\"nav-item\">
<a class=\"nav-link\" data-toggle=\"tab\" href=\"#$name\">$name</a>
<a id=\"" . $name . "tab\"class=\"nav-link\" data-toggle=\"tab\" href=\"#$name\">$name</a>
</li>";
}
return $str;
......
......@@ -22,7 +22,7 @@ class PermissionManager
auth()
->user()
->isAdmin() ||
env('LIMAN_RESTRICTED') == true
config('liman.liman_restricted') == true
) {
$this->initializeObjects();
return $next($request);
......
......@@ -25,19 +25,19 @@ class RestrictedMode
"password_change",
"password_change_save",
];
if (env('LIMAN_RESTRICTED') == true && user() && !user()->isAdmin()) {
if (config('liman.liman_restricted') == true && user() && !user()->isAdmin()) {
$request->request->add([
'server_id' => env("LIMAN_RESTRICTED_SERVER"),
'extension_id' => env("LIMAN_RESTRICTED_EXTENSION"),
"server" => \App\Server::find(env("LIMAN_RESTRICTED_SERVER")),
'server_id' => config('liman.liman_restricted_server'),
'extension_id' => config('liman.liman_restricted_extension'),
"server" => \App\Server::find(config('liman.liman_restricted_server')),
"extension" => \App\Extension::find(
env("LIMAN_RESTRICTED_EXTENSION")
config('liman.liman_restricted_extension')
),
]);
if (!in_array(\Request::route()->getName(), $safeRoutes)) {
return redirect()->route("extension_server", [
"extension_id" => env("LIMAN_RESTRICTED_EXTENSION"),
"server_id" => env("LIMAN_RESTRICTED_SERVER"),
"extension_id" => config('liman.liman_restricted_extension'),
"server_id" => config('liman.liman_restricted_server'),
"city" => server()->city,
]);
}
......
......@@ -218,12 +218,12 @@ class ExtensionJob implements ShouldQueue
Str::random() . base64_encode(json_encode($array)),
'aes-256-cfb8',
shell_exec(
'cat ' . env('KEYS_PATH') . DIRECTORY_SEPARATOR . $extension_id
'cat ' . '/liman/keys' . DIRECTORY_SEPARATOR . $extension_id
),
0,
Str::random()
);
$keyPath = env('KEYS_PATH') . DIRECTORY_SEPARATOR . $extension_id;
$keyPath = '/liman/keys' . DIRECTORY_SEPARATOR . $extension_id;
$command =
"sudo runuser " .
......
......@@ -30,11 +30,11 @@ return [
'connections' => [
'pusher' => [
'driver' => 'pusher',
'key' => env('PUSHER_APP_KEY'),
'key' => 'liman-key',
'secret' => env('APP_KEY'),
'app_id' => env('PUSHER_APP_ID'),
'app_id' => 'liman',
'options' => [
'cluster' => env('PUSHER_APP_CLUSTER'),
'cluster' => 'eu',
'encrypted' => true,
'host' => '127.0.0.1',
'port' => 6001,
......
......@@ -8,4 +8,7 @@ return [
"nav_extension_hide_count" => 10,
"widget_refresh_time" => 30000, //ms
"liman_restricted" => false,
"liman_restricted_server" => null,
"liman_restricted_extension" => null,
"brand" => "Havelsan © 2020"
];
......@@ -15,7 +15,7 @@ return [
|
*/
'default' => env('LOG_CHANNEL', 'stack'),
'default' => env('LOG_CHANNEL', 'single'),
/*
|--------------------------------------------------------------------------
......
......@@ -22,9 +22,9 @@ return [
*/
'apps' => [
[
'id' => env('PUSHER_APP_ID'),
'id' => 'liman',
'name' => env('APP_NAME'),
'key' => env('PUSHER_APP_KEY'),
'key' => 'liman',
'secret' => env('APP_KEY'),
'path' => env('PUSHER_APP_PATH'),
'capacity' => null,
......
......@@ -17,7 +17,7 @@ class UpdateExtensionSettings extends Migration
// Create Encryption Keys for existing Extensions.
$extensions = Extension::all();
foreach ($extensions as $extension) {
$passPath = env('KEYS_PATH') . DIRECTORY_SEPARATOR . $extension->id;
$passPath = '/liman/keys/' . DIRECTORY_SEPARATOR . $extension->id;
file_put_contents($passPath, Str::random(32));
shell_exec(
"sudo chown liman:" .
......
......@@ -18,6 +18,6 @@
<h1>{{__("Bakım Zamanı")}}</h1>
<div>
<p>{{__("Liman Merkezi Yönetim Sistemi şu an bakımda. Lütfen daha sonra tekrar deneyin.")}}</p>
<p>&mdash; {{env("BRAND_NAME")}}</p>
<p>&mdash; {{config('liman.brand')}}</p>
</div>
</article>
\ No newline at end of file
@if(env('LIMAN_RESTRICTED') == true && !user()->isAdmin())
@if(config('liman.liman_restricted') == true && !user()->isAdmin())
@include('extension_pages.setup_restricted');
@php(die())
@endif
......
......@@ -4,7 +4,7 @@
<li class="nav-item">
<a class="nav-link" data-widget="pushmenu" href="#" onclick="request('{{route('set_collapse')}}',new FormData(),null)"><i class="fas fa-bars"></i></a>
</li>
@if(env('LIMAN_RESTRICTED') == true && !user()->isAdmin())
@if(config('liman.liman_restricted') == true && !user()->isAdmin())
<li class="nav-item d-none d-sm-inline-block">
<a href="/" class="nav-link">{{__("Ana Sayfa")}}</a>
</li>
......
......@@ -55,7 +55,7 @@
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span></button>
</div>
<ul class="nav nav-tabs" role="tablist">
<ul class="nav nav-tabs" role="tablist" style="padding:20px;">
<li class="nav-item">
<a class="nav-link active" data-toggle="pill" id="networkTab" href="#network" role="tab" aria-controls="network" aria-selected="true">{{__("Bağlantı Bilgileri")}}</a>
</li>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment