added base process code
This commit is contained in:
66
process/p2prc-process.sh
Normal file
66
process/p2prc-process.sh
Normal file
@@ -0,0 +1,66 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Simulate NodeInfo as separate variables
|
||||
NodeInfo_IPV4="192.168.1.20"
|
||||
NodeInfo_ServerPort="9000"
|
||||
|
||||
# UUID fallback
|
||||
generate_uuid() {
|
||||
echo "uuid-$(date +%s%N)"
|
||||
}
|
||||
|
||||
P2PRCMapPort() {
|
||||
local port="$1"
|
||||
local domain="$2"
|
||||
local server="$3"
|
||||
echo "${domain}:${port}"
|
||||
}
|
||||
|
||||
AddProcessToMemory() {
|
||||
local id="$1"
|
||||
echo "Added to memory: $id"
|
||||
}
|
||||
|
||||
SaveProcess() {
|
||||
echo "Saved to disk (simulated)"
|
||||
}
|
||||
|
||||
SpinProcess() {
|
||||
# Parameters are passed as positional args
|
||||
local InternalPortNo="$1"
|
||||
local CommandToRunScript="$2"
|
||||
local DomainName="$3"
|
||||
|
||||
# Run script (locally)
|
||||
bash "$CommandToRunScript"
|
||||
|
||||
# Server address
|
||||
local ServerAddress="${NodeInfo_IPV4}:${NodeInfo_ServerPort}"
|
||||
|
||||
# Map port
|
||||
local ExternalAddress
|
||||
ExternalAddress=$(P2PRCMapPort "$InternalPortNo" "$DomainName" "$ServerAddress")
|
||||
|
||||
# Generate UUID and set status
|
||||
local ID
|
||||
ID=$(generate_uuid)
|
||||
local Status="true"
|
||||
|
||||
# Output simulated "process object"
|
||||
echo "Process Started:"
|
||||
echo "ID: $ID"
|
||||
echo "InternalPortNo: $InternalPortNo"
|
||||
echo "ExternalAddress: $ExternalAddress"
|
||||
echo "DomainName: $DomainName"
|
||||
echo "Status: $Status"
|
||||
|
||||
AddProcessToMemory "$ID"
|
||||
SaveProcess
|
||||
}
|
||||
|
||||
# Example usage
|
||||
InternalPortNo="8080"
|
||||
CommandToRunScript="test.sh"
|
||||
DomainName="example.com"
|
||||
|
||||
SpinProcess "$InternalPortNo" "$CommandToRunScript" "$DomainName"
|
||||
Reference in New Issue
Block a user