Codemagic에서 리포지토리에 없는 파일 추가 및 빌드

1456 단어 codemagicFlutter
Codemagic을 사용하면 Flutter 앱을 쉽게 빌드하고 전송할 수 있지만 google-services.json과 같은 리포지토리에 등록되지 않은 기밀 파일을 빌드에 포함하는 것이 조금 번거롭기 때문에 설명합니다.

사고방식



아래 링크처에 기재된 대로입니다만, 파일을 캐릭터 라인으로 변환해 환경 변수로서 가지고 둡니다.
htps : // bg. 코데마기 c. 이오/호 w---아---------------------------------"
  • 추가할 파일을 Base64로 인코딩합니다.
  • 환경 변수로 인코딩된 문자열을 설정합니다.
  • pre-build 스크립트에서 환경 변수에서 Base64 디코딩하여 파일을 출력합니다.

  • 실제로 해보자



    리포지토리에 커밋되지 않은 민감한 파일을 Base64로 인코딩합니다.
    Windows에서는 certutil을 사용할 수 있습니다. 표준으로 들어 있습니다.
    certutil -encode messages.json messages.txt
    

    인코딩된 문자열을 환경 변수로 설정합니다.



    pre-build 스크립트를 설정합니다.
    pre-build 스크립트의 입력란은, Build의 한쪽 위의 「+」버튼을 누르면 나옵니다.
    여기에 환경 변수를 파일로 변환하는 스크립트가 나와 있습니다.
    #!/bin/sh
    echo $MESSAGES | base64 --decode > $FCI_BUILD_DIR/assets/data/messages.json
    



    이상으로 설정은 끝입니다.
    실제로 빌드하고 동작을 확인합니다.

    끝.

    좋은 웹페이지 즐겨찾기