feat: add custom jwt secret
Docker Build and Push / Build and Push Docker Image (push) Successful in 17m11s
Docker Build and Push / Build and Push Docker Image (push) Successful in 17m11s
This commit is contained in:
@@ -44,9 +44,10 @@ Contoh:
|
|||||||
```env
|
```env
|
||||||
DATABASE_URL=postgresql://postgres:password@localhost:5432/ristek?sslmode=disable
|
DATABASE_URL=postgresql://postgres:password@localhost:5432/ristek?sslmode=disable
|
||||||
PORT=8080
|
PORT=8080
|
||||||
|
JWT_SECRET=your_secret_key
|
||||||
```
|
```
|
||||||
|
|
||||||
> **Catatan:** Variabel `ADDRESS` bersifat opsional (default: `0.0.0.0`).
|
> **Catatan:** Variabel `ADDRESS` dan `JWT_SECRET` bersifat opsional.
|
||||||
|
|
||||||
### 4. Install Dependencies
|
### 4. Install Dependencies
|
||||||
|
|
||||||
@@ -79,7 +80,8 @@ http://localhost:8080/swagger/index.html
|
|||||||
## Environment Variables
|
## Environment Variables
|
||||||
|
|
||||||
| Variable | Wajib | Default | Keterangan |
|
| Variable | Wajib | Default | Keterangan |
|
||||||
|----------------|-------|-------------|---------------------------------------|
|
|----------------|-------|-----------|---------------------------------------|
|
||||||
| `DATABASE_URL` | ✅ | — | PostgreSQL connection string |
|
| `DATABASE_URL` | ✅ | — | PostgreSQL connection string |
|
||||||
| `PORT` | ❌ | `8080` | Port HTTP server |
|
| `PORT` | ❌ | `8080` | Port HTTP server |
|
||||||
| `ADDRESS` | ❌ | `0.0.0.0` | Bind address HTTP server |
|
| `ADDRESS` | ❌ | `0.0.0.0` | Bind address HTTP server |
|
||||||
|
| `JWT_SECRET` | ❌ | `yomama` | Secret key untuk signing JWT token |
|
||||||
|
|||||||
@@ -11,11 +11,13 @@ type Config interface {
|
|||||||
Addr() string
|
Addr() string
|
||||||
Port() string
|
Port() string
|
||||||
DatabaseURL() string
|
DatabaseURL() string
|
||||||
|
JwtSecret() string
|
||||||
}
|
}
|
||||||
type config struct {
|
type config struct {
|
||||||
addr string
|
addr string
|
||||||
port string
|
port string
|
||||||
databaseURL string
|
databaseURL string
|
||||||
|
jwtSecret string
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *config) Addr() string {
|
func (c *config) Addr() string {
|
||||||
@@ -30,10 +32,13 @@ func (c *config) DatabaseURL() string {
|
|||||||
return c.databaseURL
|
return c.databaseURL
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (c *config) JwtSecret() string { return c.jwtSecret }
|
||||||
|
|
||||||
func parse() (*config, error) {
|
func parse() (*config, error) {
|
||||||
domain := getenv("ADDRESS", "0.0.0.0")
|
domain := getenv("ADDRESS", "0.0.0.0")
|
||||||
sshPort := getenv("PORT", "8080")
|
sshPort := getenv("PORT", "8080")
|
||||||
databaseURL := getenv("DATABASE_URL", "")
|
databaseURL := getenv("DATABASE_URL", "")
|
||||||
|
jwtSecret := getenv("JWT_SECRET", "yomama")
|
||||||
|
|
||||||
if databaseURL == "" {
|
if databaseURL == "" {
|
||||||
return nil, fmt.Errorf("DATABASE_URL environment variable not set")
|
return nil, fmt.Errorf("DATABASE_URL environment variable not set")
|
||||||
@@ -43,6 +48,7 @@ func parse() (*config, error) {
|
|||||||
addr: domain,
|
addr: domain,
|
||||||
port: sshPort,
|
port: sshPort,
|
||||||
databaseURL: databaseURL,
|
databaseURL: databaseURL,
|
||||||
|
jwtSecret: jwtSecret,
|
||||||
}, nil
|
}, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user