¿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
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 comandopod 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:
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.