S3 객체들을 이관하는 상황을 마주했다.
aws 계정 분리가 되며 기존에 이용하던 s3 버킷의 객체들을 이관해야했다.
단순히 통째로 옮기는 것이라면 조금 더 간단했겠지만, 어떠한 규칙에 의해 키값이 바뀌어야했다.
따라서 이관 이전에 어떤 스크립트를 사용해야했다.
간단한 해결을 위해 아래와 같은 플로우를 생각했다.
밑에 내려보면 option args 로 줄 수 있는것들을 확인할 수 있는데, 필요한 기능들과 유용해보이는 기능들이 많다.
이따가 스크립트를 돌리기 전에 의도대로 잘 작동할지 --dryrun 으로 테스트해보면 좋다.
** 실제로 다른 것에 작용을 하지는 않고, 동작하는 것 처럼 보이도록 실행하기
(단위 테스트 시 함수 mocking 할때 이런 네이밍을 본 적 있다)
node main 으로 배열 한두개 잘라보면서 쉘스크립트가 올바르게 뽑히는지 확인해보고 --dryrun 도 해본 뒤 이관을 시작한다.
node main && sh output.sh 로 쉘스크립트를 뽑고 작동시킨다
간편하게 이관이 진행되는 모습
끝!