GitHub 작업에서 나중에 조건으로 사용할 값을 반환 할 수 있나요?

마이클 스텀

내 프로젝트 중 하나에 대한 CI로 GitHub Actions를 설정 하고 있으며 전체 빌드 프로세스는 기본적으로 환경 변수에 의해 구동되는 PowerShell 스크립트입니다.

이는 공급 업체 종속을 최소화하고 거의 동일한 프로세스로 로컬에서 빌드를 실행할 수 있도록하기위한 것입니다.

이제 내 빌드 스크립트는 몇 가지 항목을 결정하고 환경 변수에 넣습니다. 특히 MH_IS_PROD_BUILDTrue 또는 False 인 변수가 있으며 어떤 nuget 패키지 저장소로 푸시할지 결정합니다.

그러나 쉘을 실행하는 단계가 완료되면 새로운 환경에서 추가 단계가 실행되기 때문에 환경 변수가 더 이상 존재하지 않습니다.

내가 하고 싶은 것은 다음과 같은 것입니다 (축약).

  steps:
    - name: Run build script
      id: pwshbuild
      shell: pwsh
      run: |
        cd scripts
        ./build.ps1
        # The above sets $Env:MH_IS_PROD_BUILD to either True or False
    - name: Push Publish to GPR (Dev Package)
      if: steps.pwshbuild.outputs.MH_IS_PROD_BUILD == 'False'
      shell: pwsh
      run: |
        # omitted: determine $nupkgPath
        nuget push $nupkgPath -Source "GPR" -SkipDuplicate
    - name: Push Publish to Nuget.org (Release Package)
      if: steps.pwshbuild.outputs.MH_IS_PROD_BUILD == 'True' 
      shell: pwsh
      run: |
        # omitted: determine $nupkgPath
        nuget push $nupkgPath -Source "NugetOrg" -SkipDuplicate

것으로 보인다 출력은 내가 필요로했던 것과이지만, 그 사용자 지정 작업의 생성을 요구하는 것?

물론 위의 내용은 작동하지 않습니다 (따라서 질문). 그래서 나는 가장 좋은 방법이 무엇인지 궁금합니다.

  • PowerShell에서 단계의 출력을 설정할 수 있습니까? (선호)
  • 출력을 통해 항목을 반환 할 수 있도록 build.ps1에 대한 호출을 캡슐화하는 사용자 지정 작업을 만들어야합니까?
Peterevans

Powershell의 출력을 콘솔에 에코하여 설정할 수 있다고 생각합니다. Powershell에는에 대한 별칭 매핑 에코가 Write-Output있습니다.

jobs:
  windows-test:
    runs-on: windows-latest
    steps:
      - uses: actions/checkout@v1
      - name: Set outputs
        id: vars
        shell: pwsh
        run: echo "::set-output name=production::true"
      - name: Check outputs
        shell: pwsh
        run: echo ${{ steps.vars.outputs.production }}

참조 : https://help.github.com/en/github/automating-your-workflow-with-github-actions/development-tools-for-github-actions#set-an-output-parameter-set-output

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

요리사 lwrp가 나중에 레시피에서 사용하기 위해 변수 (거짓 또는 참)로 답변을 반환 할 수 있습니까?

분류에서Dev

나중에 사용할 수 있도록 문자열 경로 반환

분류에서Dev

Google Cloud Run에 대한 Stackdriver 로깅을 사용 중지 할 수 있나요?

분류에서Dev

mongodb-java-api를 사용하면 한 번의 작업으로 objectID를 "선택"하고 Mongodb.find 작업에서 값을 반환 할 수 있습니까?

분류에서Dev

Blazor WebAssembly 앱을 프로덕션에 사용할 수 있나요?

분류에서Dev

UrlFetchApp을 Apps Script에서 promise로 변환 할 수 있나요?

분류에서Dev

firebase admin json 파일을 github에서 공개 할 수 있나요?

분류에서Dev

dplyr : 하나의 함수를 사용하여 요약에서 두 개의 열을 반환 할 수 있습니까?

분류에서Dev

NextJS-조건부에서 API의 반환을 사용할 수 있습니까?

분류에서Dev

Azure Machine Learning에 대한 설문 조사를 기반으로 데이터 가격을 예측할 수 있나요?

분류에서Dev

레이크 작업에서 다른 작업으로 객체 나 값을 전달할 수 있습니까?

분류에서Dev

Xamarin에서 작업 블록없이 작업을 선언 할 수 있나요?

분류에서Dev

ASP.Net Core 3.1 용 ChangePasswordAsync를 GitHub에서 사용할 수 있나요?

분류에서Dev

Stackdriver Monitoring 알림 : 조건 임계 값에 상수 대신 함수를 사용할 수 있나요?

분류에서Dev

Postgres의 CTE 문에서 반환 값을 여러 보조로 사용할 수 있습니까?

분류에서Dev

SQLite 쿼리에서 반환 된 열 값을 테이블 이름으로 사용할 수 있습니까?

분류에서Dev

서버에서 반환 된 gRPC 메타다는 C # 클라이언트가 비동기 호출을 사용할 때만 사용할 수 있나요?

분류에서Dev

Kotlin에서 isInitialized 대신 is null을 사용할 수 있나요?

분류에서Dev

Azure App Services에서 TLS 1.3을 사용할 수 있나요?

분류에서Dev

Kotlin에서 AndroidAnnotation의 @Bean을 사용할 수 있나요?

분류에서Dev

Google Cloud Bigtable에서 Azkaban을 사용할 수 있나요?

분류에서Dev

작업 공간을 기반으로 다른 모드에서 xrandr을 사용할 수 있습니까?

분류에서Dev

함수에서 관계 나 조건을 변수로 사용할 수 있습니까?

분류에서Dev

나는 모든 사용자가 작업 같은 수를 가질 수 있도록 사용자에게 자동으로 작업을 할당 할 수있는 방법

분류에서Dev

조건부 정규식을 사용하여 나중에 일치하는 것을 선호 할 수 있습니까?

분류에서Dev

Visual Studio Code에서 PowerShell 대신 cmd를 사용하여 az 로그인을 시작할 수 있나요?

분류에서Dev

내 앱에 iAd와 AdMob을 모두 사용할 수 있나요?

분류에서Dev

Dialogflow에 데이터를 반환 할 수 있나요?

분류에서Dev

Firebase에서 부분적으로 비공개 키 / 값 쌍을 기반으로 동적 값을 제공 할 수 있나요?

Related 관련 기사

  1. 1

    요리사 lwrp가 나중에 레시피에서 사용하기 위해 변수 (거짓 또는 참)로 답변을 반환 할 수 있습니까?

  2. 2

    나중에 사용할 수 있도록 문자열 경로 반환

  3. 3

    Google Cloud Run에 대한 Stackdriver 로깅을 사용 중지 할 수 있나요?

  4. 4

    mongodb-java-api를 사용하면 한 번의 작업으로 objectID를 "선택"하고 Mongodb.find 작업에서 값을 반환 할 수 있습니까?

  5. 5

    Blazor WebAssembly 앱을 프로덕션에 사용할 수 있나요?

  6. 6

    UrlFetchApp을 Apps Script에서 promise로 변환 할 수 있나요?

  7. 7

    firebase admin json 파일을 github에서 공개 할 수 있나요?

  8. 8

    dplyr : 하나의 함수를 사용하여 요약에서 두 개의 열을 반환 할 수 있습니까?

  9. 9

    NextJS-조건부에서 API의 반환을 사용할 수 있습니까?

  10. 10

    Azure Machine Learning에 대한 설문 조사를 기반으로 데이터 가격을 예측할 수 있나요?

  11. 11

    레이크 작업에서 다른 작업으로 객체 나 값을 전달할 수 있습니까?

  12. 12

    Xamarin에서 작업 블록없이 작업을 선언 할 수 있나요?

  13. 13

    ASP.Net Core 3.1 용 ChangePasswordAsync를 GitHub에서 사용할 수 있나요?

  14. 14

    Stackdriver Monitoring 알림 : 조건 임계 값에 상수 대신 함수를 사용할 수 있나요?

  15. 15

    Postgres의 CTE 문에서 반환 값을 여러 보조로 사용할 수 있습니까?

  16. 16

    SQLite 쿼리에서 반환 된 열 값을 테이블 이름으로 사용할 수 있습니까?

  17. 17

    서버에서 반환 된 gRPC 메타다는 C # 클라이언트가 비동기 호출을 사용할 때만 사용할 수 있나요?

  18. 18

    Kotlin에서 isInitialized 대신 is null을 사용할 수 있나요?

  19. 19

    Azure App Services에서 TLS 1.3을 사용할 수 있나요?

  20. 20

    Kotlin에서 AndroidAnnotation의 @Bean을 사용할 수 있나요?

  21. 21

    Google Cloud Bigtable에서 Azkaban을 사용할 수 있나요?

  22. 22

    작업 공간을 기반으로 다른 모드에서 xrandr을 사용할 수 있습니까?

  23. 23

    함수에서 관계 나 조건을 변수로 사용할 수 있습니까?

  24. 24

    나는 모든 사용자가 작업 같은 수를 가질 수 있도록 사용자에게 자동으로 작업을 할당 할 수있는 방법

  25. 25

    조건부 정규식을 사용하여 나중에 일치하는 것을 선호 할 수 있습니까?

  26. 26

    Visual Studio Code에서 PowerShell 대신 cmd를 사용하여 az 로그인을 시작할 수 있나요?

  27. 27

    내 앱에 iAd와 AdMob을 모두 사용할 수 있나요?

  28. 28

    Dialogflow에 데이터를 반환 할 수 있나요?

  29. 29

    Firebase에서 부분적으로 비공개 키 / 값 쌍을 기반으로 동적 값을 제공 할 수 있나요?

뜨겁다태그

보관