如何通过GitHub工作流在Linux中交换用户?

41ik7eoe  于 2023-10-16  发布在  Linux
关注(0)|答案(1)|浏览(124)

我在Github上运行一个python文件。在运行python文件之前,我想交换用户,这样就不需要sudo来执行python文件。
我试着用 'su',但它说su必须从命令行运行*。如何通过Github工作流实现这一点。谢谢你
.yaml.雅姆

name: CI

on:
  push:
     branches: [ main ]

  workflow_dispatch:

jobs:
  build:
    runs-on: self-hosted
    strategy:
      matrix:
        python: [3.8.1]
        
    steps:
    - uses: actions/checkout@v2
    - name: Set up Python 
      uses: actions/setup-python@v2
      with:
        python-version: ${{ matrix.python }}
    - name: run multiple commands
      run: |
        echo $PWD
        whoami 
        su - user
        python helloworld.py
hyrbngr7

hyrbngr71#

您可以创建一个secret,它具有您想要切换到的用户的ssh密钥。使用该脚本,您可以使用ssh到目标用户的localhost,以目标用户的身份执行命令。

ssh -i <key-path> <user>@<remote-machine> -t '<command>'

相关问题