Travis-Datei in einem GitHub-Repository entschlüsseln

Aktualisiert 12. Juli 2020

Travis ist ein sehr beliebter CI-Dienst und bietet eine Funktion zur Dateiverschlüsselung, um Geheimnisse sicher aufzubewahren. Derzeit ist es nicht ganz einfach, Dateien zu entschlüsseln, daher stelle ich in diesem Beitrag einen Workaround vor.

Workaround: Datei per FTP/SFTP senden

Bei dieser Methode aktualisieren wir die .travis.yml in einem neuen Branch. Es gibt eine Datei namens setup.tar.gz.enc, die wir entschlüsseln und per FTP senden möchten.

env:
  global:
  - 'SFTP_USER=[user]'
  - 'SFTP_PASSWORD=[password]'
  - 'SFTP_HOST=[base64-encoded-rsa-key]'
before_install:
- openssl aes-256-cbc -K $encrypted_b0276278eb46_key -iv $encrypted_b0276278eb46_iv
  -in setup.tar.gz.enc -out setup.tar.gz -d
- curl --ftp-create-dirs -T setup.tar.gz ${SFTP_HOST} --user ${SFTP_USER}:${SFTP_PASSWORD}

Committe die obige Änderung in einen experimentellen Branch und starte einen Travis-CI-Build.