파일에서 설치 패키지로
실행 파일만 전달하는 방식과 설치용 패키지를 만드는 방식은 다르다. Nfpm은 패키지에 넣을 내용과 설치될 경로, 이름과 버전 같은 정보를 설정으로 받아 결과를 생성한다. 프로그램 자체의 코드를 컴파일하는 과정과 설치 패키지를 구성하는 과정을 구분할 수 있다.
형식에 맞는 정보 정의
설정에는 아키텍처와 설명, 라이선스와 의존 패키지 같은 정보를 담을 수 있다. 파일과 디렉터리, 설정 파일과 심볼릭 링크 등을 패키지 내용으로 지정하는 기능도 있다. 형식마다 해석되는 정보와 조건이 달라질 수 있으므로 목표 패키지 형식에 맞춰 구성을 확인해야 한다.
명령행과 라이브러리 활용
초기화 명령으로 예제 설정을 만든 뒤 원하는 패키지 형식과 출력 위치를 선택해 생성하는 흐름이다. 별도의 프로그램에서 Go 라이브러리로 사용할 수도 있다. 패키지 생성이 끝났다는 사실과 실제 대상 환경에 설치되어 정상 실행된다는 사실은 다른 검증 단계다.
관련 문서
FPM 패키징 도구 / GoReleaser / Release Please / YAML / Git-cliff