728x90
반응형
계기
- Go 로 사이드 프로젝트 개발을 하다, 동적 쿼리가 필요한 경우도 많았고 동일한 유틸/함수들을 다양한 프로젝트에서 동일하게 사용해야 하는 경우가 너무나 많았다.
- 문득 내가 모든 프로젝트들에 사용하는, 내가 만든 함수들을 패키지화 시키고 간편하게 사용하면 어떨까 생각하게 되었다.
- 그렇게 '동적 쿼리 유틸'과 'DB 연결 및 쿼리' 유틸들을 오픈소스 패키지화 하기로 결정하였다.
버전 릴리즈
- 우선 깃허브에 퍼블릭 레포를 파고 패키지 소스코드를 푸시 하였다.
- 패키지를 임포트 해 사용할 것이기 때문에, 메인 함수의 패키지명은 사용할 패키지 명으로 설정해야 한다.
package gqbd
// ... 코드
테스트 코드들로 각 함수및 유틸들이 원하는 리턴값을 가져오는지 검증을 진행하였다.
- 여담이지만 <>_test.go 파일들을 테스트 코드로 인식한다.
- t *testing.T 타입을 인자로 넘겨주면 테스트 진행할 함수로 인식된다.
완료된 후 버전을 릴리즈했다. 최초 베타 테스트이므로 v0.1.0 으로 잡았다.
git tag v0.1.0
git push origin v0.1.0
- 위처럼 레포에 v0.1.0으로 푸시를 했다면, 이제 Go 쪽에 해당 패키지와 버전을 알려주면 배포가 완료된다.
GOPROXY=proxy.golang.org go list -m github.com/<repo_owner>/<repo_name>@<version>
- 이렇게 하면 GoDoc에서 내가 배포한 레포를 확인할 수 있다.
- 다만 배포했다고 GoDoc이 빠르게 반영되는건 아니라는 함정.
- 그리고 레포의 README.md 파일은 GODOC의 메인 설명 페이지로 나온다는 것.
결과
728x90
반응형
'백엔드 Backend > Golang' 카테고리의 다른 글
[AUTH] Cookie를 이용한 검증 (0) | 2025.01.21 |
---|---|
[CORS] CORS 설정 - 라이브러리 이용 (0) | 2025.01.20 |
[Golang] DB 쿼리 nullable 데이터 처리 (0) | 2025.01.10 |
[gRPC] Go 언어로 gRPC 사용해보기 (2) | 2024.12.24 |
[Neo4J] 데이터 핸들링하기 (1) | 2024.12.09 |