簡體   English   中英

.NET GitHub 操作變量中的用戶機密

[英].NET User Secrets in GitHub Actions variables

我在測試階段失敗的 GitHub 操作上遇到 .NET 構建管道的問題。 問題是我在本地使用使用結構化 JSON 配置的用戶機密。因此我需要使用存在於操作生命周期 scope 中的機密在 GitHub 操作中提供替換。

在 Bitbucket 中,我可以使用__解析為正確的命名空間來模擬 JSON 嵌套的結構; 但是,此選項似乎不適用於 GitHub 操作。

示例 JSON:


{
  "IntegrationTest": {
    "B2CPolicy": "https://example.com",
    "ClientId": "some_client_id"
  }
}

我假設變量INTEGRATIONTEST__B2CPOLICY應該放入 GitHub 操作機密中。

do.net.yaml:

# This workflow will build a .NET project
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-net

name: .NET

on:
  push:
    branches: [ "develop" ]
  pull_request:
    branches: [ "develop" ]

jobs:
  build:
  
    env:
      SLN_FILE: "./src/be/proj.sln" 
      REPORTS_PATH: "./test-reports/build_$GITHUB_RUN_ATTEMPT"
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v3
    - name: Setup .NET
      uses: actions/setup-dotnet@v3
      with:
        dotnet-version: 6.0.x
    - name: Restore dependencies
      run: dotnet restore $SLN_FILE
    - name: Generate client for test project
      run: pwsh -File "./src/be/scripts/nswag/generate_data_for_test_project.ps1"
    - name: Build
      run: dotnet build --no-restore --configuration Release $SLN_FILE
    - name: Test
      run: dotnet test --no-build --verbosity normal --configuration Release --test-adapter-path:. --logger:"junit;LogFilePath=$REPORTS_PATH/junit.xml;MethodFormat=Class;FailureBodyFormat=Verbose" $SLN_FILE

任何線索可能的問題在哪里?

會不會是使用加密密文引起的?

感謝您的任何想法。

秘密不會在您的所有操作中作為環境變量自動可用,您需要添加它們。 應該這樣做。

    - name: Test
      env:
        INTEGRATIONTEST__B2CPOLICY: ${{ secrets.INTEGRATIONTEST__B2CPOLICY }}
      run: dotnet test --no-build --verbosity normal --configuration Release --test-adapter-path:. --logger:"junit;LogFilePath=$REPORTS_PATH/junit.xml;MethodFormat=Class;FailureBodyFormat=Verbose" $SLN_FILE

更多信息: https://docs.github.com/en/actions/security-guides/encrypted-secrets#using-encrypted-secrets-in-a-workflow

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM