创建使用powershell脚本的GitHub操作

创建使用powershell脚本的GitHub操作,powershell,github-actions,Powershell,Github Actions,我想创建一个GitHub操作,在Windows中设置一个环境,运行几个Powershell命令。尽管这可以作为一个步骤轻松完成,但似乎没有一种方法可以为此创建完整的GitHub操作。如果我使用这个: name: 'Rakudo Star fix for windows' description: 'Updates zef for RakudoStar' author: 'JJ' runs: using: 'node12' main: 'upgrade.ps1' 除了JS脚本之外,似乎没

我想创建一个GitHub操作,在Windows中设置一个环境,运行几个Powershell命令。尽管这可以作为一个步骤轻松完成,但似乎没有一种方法可以为此创建完整的GitHub操作。如果我使用这个:

name: 'Rakudo Star fix for windows'
description: 'Updates zef for RakudoStar'
author: 'JJ'
runs:
  using: 'node12'
  main: 'upgrade.ps1'

除了JS脚本之外,似乎没有其他方法可以运行任何东西,甚至可以声明环境。我知道这将留待以后,在工作步骤中进行,但无论如何,这看起来像是一次黑客攻击。这里有什么我遗漏的吗?

您也可以使用.ps1脚本的入口点直接运行docker

FROM ubuntu:18.04

LABEL "com.github.actions.name"="test"
LABEL "com.github.actions.description"="test."

RUN apt-get update \
    && apt-get install wget -y \
    && wget -q https://packages.microsoft.com/config/ubuntu/18.04/packages-microsoft-prod.deb \
    && dpkg -i packages-microsoft-prod.deb \
    && apt-get update \
    && apt-get install -y powershell

ADD test.ps1 /test.ps1
ENTRYPOINT ["pwsh", "/test.ps1"]
更新:

using
字段是用于执行
main
中指定代码的应用程序。但是Github操作只支持使用
node12
docker
。从这里可以看出,我只是为了举例而跑


Docker不会在大多数Windows环境中运行,您必须使用Windows Server 2019作为基本环境。

我刚刚在这里发布了您问题的答案:我只是浏览了一下文档,我的理解是,
main
应该是
JavaScript
,因为您说它应该通过
节点执行,对吗?因此,为了能够使用Powershell脚本,您需要在
using
字段中这样说。因此,
using:'pshell.exe'
或类似的东西。@raiph
using
字段是用于执行
main
中指定的代码的应用程序。但是Github操作只支持使用
node12
docker
。从这张照片上可以看出,我只是为了举例而跑。谢谢你@PeterKay。因此,也许您可以编辑您的答案,以明确只有这两个选项,即运行JS或docker,后者不会在大多数Windows环境中运行,因此JJ的后续问题和您的答案是了解JJ情况的人的唯一出路。那么也许JJ会接受你下面的回答,以表明这个问题和你对JJ后续问题的另一个回答一样可以接受。(或者,你什么也不能做,因为任何阅读本文的人现在都可能了解情况。)不管怎样,谢谢你的回复。:)@raiph感谢您的大力支持!为了清楚起见,我继续更新了下面的答案。Docker环境不在Windows中运行。从技术上讲,您可以使用进程隔离。不过,这仅在Windows 10/Server 2019中才可能。但Windows Server 2019在GitHub操作中可用作基本环境吗?是的,可以使用
Windows最新版本
进行分配,您也可以在此处查看可用的软件/OS:和此处: