mirror of
https://github.com/saltstack/salt.git
synced 2025-04-17 10:10:20 +00:00
Fix paths to scripts
This commit is contained in:
parent
3add99aa12
commit
d6d9484a0c
2 changed files with 65 additions and 13 deletions
56
.github/actions/ssh-tunnel/action.yml
vendored
56
.github/actions/ssh-tunnel/action.yml
vendored
|
@ -4,10 +4,16 @@ description: SSH Reverse Tunnel
|
|||
inputs:
|
||||
public_key:
|
||||
required: true
|
||||
type: string
|
||||
description: Public key to accept for reverse tunnel. Warning, this should not be the public key for the 'private_key' input.
|
||||
offer:
|
||||
required: true
|
||||
type: string
|
||||
description: RTC offer
|
||||
debug:
|
||||
required: false
|
||||
type: bool
|
||||
default: true
|
||||
|
||||
runs:
|
||||
using: composite
|
||||
|
@ -23,34 +29,37 @@ runs:
|
|||
shell: powershell
|
||||
run: |
|
||||
python3.exe -m pip install requests
|
||||
python3.exe installssh.py
|
||||
python3.exe .github/actions/ssh-tunnel/installssh.py
|
||||
|
||||
- name: Start SSH
|
||||
if: ${{ runner.os == 'Windows' }}
|
||||
shell: powershell
|
||||
shell: bash
|
||||
run: |
|
||||
Start-Service sshd
|
||||
if [ "$RUNNER_OS" = "Windows" ]; then
|
||||
powershell.exe -command "Start-Service sshd"
|
||||
else
|
||||
sudo systemctl start ssh
|
||||
fi
|
||||
|
||||
- name: Show sshd configuration
|
||||
shell: bash
|
||||
run: |
|
||||
if [ "$RUNNER_OS" == "Linux" ]; then
|
||||
if [ "$RUNNER_OS" = "Linux" ]; then
|
||||
cat /etc/ssh/sshd_config
|
||||
elif [ "$RUNNER_OS" == "macOS" ]; then
|
||||
elif [ "$RUNNER_OS" = "macOS" ]; then
|
||||
cat /private/etc/ssh/sshd_config
|
||||
else
|
||||
cat "C:\ProgramData\ssh\sshd_config"
|
||||
fi
|
||||
|
||||
- name: Add ssh public key
|
||||
shell: sh
|
||||
shell: bash
|
||||
run: |
|
||||
if [ "$RUNNER_OS" == "Linux" ]; then
|
||||
if [ "$RUNNER_OS" = "Linux" ]; then
|
||||
mkdir -p /home/runner/.ssh
|
||||
chmod 700 /home/runner/.ssh
|
||||
touch /home/runner/.ssh/authorized_keys
|
||||
echo "${{ inputs.public_key }}" | tee -a /home/runner/.ssh/authorized_keys
|
||||
elif [ "$RUNNER_OS" == "macOS" ]; then
|
||||
elif [ "$RUNNER_OS" = "macOS" ]; then
|
||||
mkdir -p /Users/runner/.ssh
|
||||
chmod 700 /Users/runner/.ssh
|
||||
touch /Users/runner/.ssh/authorized_keys
|
||||
|
@ -59,8 +68,33 @@ runs:
|
|||
echo "${{ inputs.public_key }}" | tee -a "C:\ProgramData\ssh\administrators_authorized_keys"
|
||||
fi
|
||||
|
||||
- name: Stop SSHD
|
||||
if: ${{ inputs.debug }}
|
||||
shell: bash
|
||||
run: |
|
||||
if [ "${{ inputs.debug }}" = "true" ]; then
|
||||
if [ "$RUNNER_OS" = "Windows" ]; then
|
||||
powershell.exe -command "Stop-Service sshd"
|
||||
else
|
||||
sudo systemctl stop ssh
|
||||
fi
|
||||
fi
|
||||
|
||||
- name: Create rtc tunnel
|
||||
shell: bash
|
||||
run: |
|
||||
python3 -m pip install aiortc
|
||||
echo '${{ inputs.offer }}' | python -m rtcforward --port 22 answer
|
||||
if [ "${{ inputs.debug }}" = "true" ]; then
|
||||
if [ "$RUNNER_OS" = "Windows" ]; then
|
||||
./OpenSSH-Win64/sshd.exe -d &
|
||||
else
|
||||
sudo mkdir -p /run/sshd
|
||||
sudo chmod 755 /run/sshd
|
||||
sudo /usr/sbin/sshd -d &
|
||||
fi
|
||||
fi
|
||||
if [ "$RUNNER_OS" = "Windows" ]; then
|
||||
python3 -m pip install aiortc
|
||||
else
|
||||
python3 -m pip install aiortc uvloop
|
||||
fi
|
||||
echo '${{ inputs.offer }}' | python .github/actions/ssh-tunnel/rtcforward.py --port 22 answer
|
||||
|
|
22
.github/actions/ssh-tunnel/rtcforward.py
vendored
22
.github/actions/ssh-tunnel/rtcforward.py
vendored
|
@ -10,13 +10,31 @@ import sys
|
|||
import textwrap
|
||||
import time
|
||||
|
||||
aiortc = None
|
||||
try:
|
||||
import aiortc.exceptions
|
||||
from aiortc import RTCIceCandidate, RTCPeerConnection, RTCSessionDescription
|
||||
from aiortc.contrib.signaling import BYE, add_signaling_arguments, create_signaling
|
||||
except ImportError:
|
||||
print("Please `pip install aiortc` before running.")
|
||||
sys.exit(1)
|
||||
pass
|
||||
|
||||
uvloop = None
|
||||
try:
|
||||
import uvloop
|
||||
except ImportError:
|
||||
pass
|
||||
|
||||
if sys.platform == "win32":
|
||||
if not aiortc:
|
||||
print("Please run 'pip install aiortc' and try again.")
|
||||
sys.exit(1)
|
||||
asyncio.set_event_loop_policy(asyncio.WindowsSelectorEventLoopPolicy())
|
||||
else:
|
||||
if not aiortc or not uvloop:
|
||||
print("Please run 'pip install aiortc uvloop' and try again.")
|
||||
sys.exit(1)
|
||||
asyncio.set_event_loop_policy(uvloop.EventLoopPolicy())
|
||||
|
||||
|
||||
log = logging.getLogger(__name__)
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue