trstringer / manual-approval

Pause your GitHub Actions workflow and request manual approval from set approvers before continuing
MIT License
386 stars 93 forks source link

Argument list too long #85

Open sanderlegit opened 1 year ago

sanderlegit commented 1 year ago

Hi, I'm trying to use this to open an issue with pulumi changes from pulumi preview before a pulumi up command.

Not sure how to go about fixing this error.

Error:

Run trstringer/manual-approval@v1
/usr/bin/docker run --name ghcriotrstringermanualapproval190_df3334 --label 49859c --workdir /github/workspace --rm -e "CLOUDSDK_AUTH_CREDENTIAL_FILE_OVERRIDE" -e "GOOGLE_APPLICATION_CREDENTIALS" -e "GOOGLE_GHA_CREDS_PATH" -e "CLOUDSDK_CORE_PROJECT" -e "CLOUDSDK_PROJECT" -e "GCLOUD_PROJECT" -e "GCP_PROJECT" -e "GOOGLE_CLOUD_PROJECT" -e "PULUMI_DIFF" -e "PULUMI_PLAN" -e "INPUT_SECRET" -e "INPUT_APPROVERS" -e "INPUT_MINIMUM-APPROVALS" -e "INPUT_ISSUE-TITLE" -e "INPUT_ISSUE-BODY" -e "INPUT_EXCLUDE-WORKFLOW-INITIATOR-AS-APPROVER" -e "INPUT_ADDITIONAL-APPROVED-WORDS" -e "INPUT_ADDITIONAL-DENIED-WORDS" -e "HOME" -e "GITHUB_JOB" -e "GITHUB_REF" -e "GITHUB_SHA" -e "GITHUB_REPOSITORY" -e "GITHUB_REPOSITORY_OWNER" -e "GITHUB_REPOSITORY_OWNER_ID" -e "GITHUB_RUN_ID" -e "GITHUB_RUN_NUMBER" -e "GITHUB_RETENTION_DAYS" -e "GITHUB_RUN_ATTEMPT" -e "GITHUB_REPOSITORY_ID" -e "GITHUB_ACTOR_ID" -e "GITHUB_ACTOR" -e "GITHUB_TRIGGERING_ACTOR" -e "GITHUB_WORKFLOW" -e "GITHUB_HEAD_REF" -e "GITHUB_BASE_REF" -e "GITHUB_EVENT_NAME" -e "GITHUB_SERVER_URL" -e "GITHUB_API_URL" -e "GITHUB_GRAPHQL_URL" -e "GITHUB_REF_NAME" -e "GITHUB_REF_PROTECTED" -e "GITHUB_REF_TYPE" -e "GITHUB_WORKFLOW_REF" -e "GITHUB_WORKFLOW_SHA" -e "GITHUB_WORKSPACE" -e "GITHUB_ACTION" -e "GITHUB_EVENT_PATH" -e "GITHUB_ACTION_REPOSITORY" -e "GITHUB_ACTION_REF" -e "GITHUB_PATH" -e "GITHUB_ENV" -e "GITHUB_STEP_SUMMARY" -e "GITHUB_STATE" -e "GITHUB_OUTPUT" -e "RUNNER_OS" -e "RUNNER_ARCH" -e "RUNNER_NAME" -e "RUNNER_TOOL_CACHE" -e "RUNNER_TEMP" -e "RUNNER_WORKSPACE" -e "ACTIONS_RUNTIME_URL" -e "ACTIONS_RUNTIME_TOKEN" -e "ACTIONS_CACHE_URL" -e GITHUB_ACTIONS=true -e CI=true -v "/var/run/docker.sock":"/var/run/docker.sock" -v "/home/runner/work/_temp/_github_home":"/github/home" -v "/home/runner/work/_temp/_github_workflow":"/github/workflow" -v "/home/runner/work/_temp/_runner_file_commands":"/github/file_commands" -v "/home/runner/work/GCP/GCP":"/github/workspace" ghcr.io/trstringer/manual-approval:1.9.0
Error: An error occurred trying to start process '/usr/bin/docker' with working directory '/home/runner/work/GCP/GCP'. Argument list too long

Action:

name: Pulumi
on:
  workflow_dispatch:
jobs:
  up:
    name: Update
    runs-on: ubuntu-latest
    steps:
      - name: Checkout 🛎️
        uses: actions/checkout@v3

      - name: Authenticate with Google 🔑
        uses: 'google-github-actions/auth@v1'
        with:
          credentials_json: '${{ secrets.KEY}}'      

      - name: Setup Go ✨
        uses: actions/setup-go@v3
        with:
          go-version: '1.20'

      - name: Downloading dependencies 📦
        run: |
          cd ./pulumi
          go mod download

      - name: Install pulumi
        uses: pulumi/setup-pulumi@v2
        with:
          pulumi-version: latest

      - name: Check pulumi is working
        run: |
          pulumi version
          pulumi login gs://state-of-deployment

      - name: Pulumi preview
        run: |
          cd pulumi
          echo ${{ secrets.PULUMI_CONFIG_PASSPHRASE }} > ./passfile
          export PULUMI_CONFIG_PASSPHRASE_FILE=./passfile

          OUTPUT_DIFF=$(pulumi preview --refresh --stack STACK --diff --save-plan plan.json)

          echo "PULUMI_DIFF<<EOF" >> $GITHUB_ENV
          echo "${OUTPUT_DIFF}" >> $GITHUB_ENV
          echo "EOF" >> $GITHUB_ENV

          echo "PULUMI_PLAN<<EOF" >> $GITHUB_ENV
          cat plan.json >> $GITHUB_ENV
          echo "EOF" >> $GITHUB_ENV

      - name: "Wait for approval"
        uses: trstringer/manual-approval@v1
        with:
          secret: ${{ github.TOKEN }}
          approvers: devsecops
          minimum-approvals: 1
          issue-title: "Deploying pulumi, check action"
          issue-body: "Approval of the pulumi-deploy action\n ${env.PULUMI_DIFF}"
          exclude-workflow-initiator-as-approver: false
          additional-approved-words: ''
          additional-denied-words: ''      

      - name: Pulumi up
        run: |
          cd pulumi
          echo ${{ secrets.PULUMI_CONFIG_PASSPHRASE }} > ./passfile
          export PULUMI_CONFIG_PASSPHRASE_FILE=./passfile

          ls
          echo "${env.PULUMI_PLAN}" > plan.json
          cat plan.json
          echo "SUCCESS"
      #    pulumi up --refresh -y --skip-preview --stack STACK --plan plan.json
trstringer commented 1 year ago

Could you share the full log output (please remove sensitive information from the logs prior to that)? It seems like this could be related.