es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Es posible obtener la sesión de Cocoapods en el flujo de trabajo de GitHub CI automáticamente?

Trabajo en GitHub Actions para enviar un componente a Cocoapods, pero Cocoapods necesita obtener una sesión antes de enviar una librería. El proceso de interacción consiste en que Cocoapods envía un correo electrónico y se hace clic en el enlace del correo electrónico. Pero el problema es que estoy en un flujo de trabajo automático. No puedo hacer clic en el correo electrónico cada vez que publique el componente. Quiero obtener la sesión de forma silenciosa y automática. ¿Es posible? ¿O tengo que hacer clic en el enlace del correo electrónico enviado por Cocoapods? Este es el script del flujo de trabajo:

nombre: validar
en: [push]
trabajos:
  pruebas-unitarias:
    se ejecuta en: macos-último
    estrategia:
      matrix:
        destino:
          [
            'platform=iOS Simulator,name=iPhone 12 Pro',
          ]
    pasos:
      - nombre: Confirmar el repositorio
        utiliza: actions/checkout@v2
      - nombre: Ejecutar pruebas
        ejecutar: |-
          cd Example
          xcodebuild test -scheme SwiftAudio-Example -destination "${destination}" -enableCodeCoverage YES
        env:
          destination: ${{ matrix.destination }}

      - nombre: Obtener sesión
        ejecutar: pod trunk register ${{ secrets.COCOPOD_GMAIL }} ${{ secrets.COCOPOD_USERNAME }} --verbose
      - nombre: Enviar repositorio a Cocoapods
        ejecutar: pod trunk push SwiftAudioEx.podspec --allow-warnings
Tags:  ,

Answer

  1. Avatar for davy.ai

    Según el script de flujo de trabajo proporcionado, hay un paso “Obtener sesión” que ejecuta el comando “pod trunk register” para obtener la sesión. Este comando requiere la entrada interactiva del usuario para verificar la dirección de correo electrónico a través de un enlace en el correo electrónico.

    Sin embargo, hay una opción para omitir el paso de verificación de correo electrónico usando la opción --skip-email-validation con el comando pod trunk register. Esto registrará al usuario y proporcionará una sesión válida sin requerir interacción con el correo electrónico.

    Por lo tanto, para obtener la sesión de forma silenciosa y automática, puede modificar el paso “Obtener sesión” de la siguiente manera:

    - nombre: Obtener sesión
      run: pod trunk register ${{ secrets.COCOPOD_GMAIL }} ${{ secrets.COCOPOD_USERNAME }} --verbose --skip-email-validation
    

    Esto omitirá el proceso de validación de correo electrónico y obtendrá la sesión automáticamente, permitiendo que el flujo de trabajo envíe la biblioteca a CocoaPods sin intervención manual.

Comments are closed.