Some checks failed
Build Push and Restart Compose / deploy (push) Failing after 1m47s
- `github.com/lib/pq` PostgreSQL 드라이버 vendor 디렉토리에 추가. - PostgreSQL 관련 내부 패키지(`pqsql`, `proto`, `pqtime`, `pgpass`, `pgservice`, `pqutil`) 구현: - SQL 어휘 처리, 프로토콜 상수 및 구조 정의, 시간 파서/포맷터(`Parse`, `Format`). - `.pgpass` 파일 및 `pg_service.conf` 관리 기능 추가. - 파일/사용자 권한 검증 및 플랫폼별 사용자 정보 조회 기능 포함. - 데이터베이스 초기화 로직 추가 (`services/db.go`): - PostgreSQL 연결 설정 및 초기 스키마 생성. - 자동매매 관련 DB 레포지토리(`services/autotrade_repo.go`) 구현: - 자동매매 규칙 및 포지션 관리 로직 추가 (`dbInsertRule`, `dbLoadRules` 등).
29 lines
799 B
Go
29 lines
799 B
Go
//go:build windows && !appengine
|
|
|
|
package pqutil
|
|
|
|
import (
|
|
"path/filepath"
|
|
"syscall"
|
|
)
|
|
|
|
func User() (string, error) {
|
|
// Perform Windows user name lookup identically to libpq.
|
|
//
|
|
// The PostgreSQL code makes use of the legacy Win32 function GetUserName,
|
|
// and that function has not been imported into stock Go. GetUserNameEx is
|
|
// available though, the difference being that a wider range of names are
|
|
// available. To get the output to be the same as GetUserName, only the
|
|
// base (or last) component of the result is returned.
|
|
var (
|
|
name = make([]uint16, 128)
|
|
pwnameSz = uint32(len(name)) - 1
|
|
)
|
|
err := syscall.GetUserNameEx(syscall.NameSamCompatible, &name[0], &pwnameSz)
|
|
if err != nil {
|
|
return "", err
|
|
}
|
|
s := syscall.UTF16ToString(name)
|
|
return filepath.Base(s), nil
|
|
}
|