From 3646ea5aec282481806d80cfae46ac94aa810c26 Mon Sep 17 00:00:00 2001 From: Victor Lacasse-Beaudoin Date: Mon, 16 Sep 2024 14:49:56 -0400 Subject: [PATCH 1/3] =?UTF-8?q?format(db):=20a=C3=A9rer=20et=20standardise?= =?UTF-8?q?r=20requ=C3=AAtes=20SQL=20dans=20DataClient?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- data/dataclient.go | 39 +++++++++++++++++++++++++++++++++++---- 1 file changed, 35 insertions(+), 4 deletions(-) diff --git a/data/dataclient.go b/data/dataclient.go index df6fe32..c4be53e 100644 --- a/data/dataclient.go +++ b/data/dataclient.go @@ -90,7 +90,24 @@ func (d *DataClient) InsertTransactions(transactions []models.Transaction) ([]mo return rowsInserted, errors.New("Impossible d'insérer une transaction sans membre_id") } - rows, err := tx.NamedQuery("INSERT INTO transactions (membre_id, given_at, is_perpetual) VALUES (:membre_id, current_timestamp, :is_perpetual) RETURNING id, membre_id, is_perpetual;", &transaction) + rows, err := tx.NamedQuery(` +INSERT INTO + transactions ( + membre_id, + given_at, + is_perpetual + ) +VALUES + ( + :membre_id, + current_timestamp, + :is_perpetual + ) +RETURNING + id, + membre_id, + is_perpetual; +`, &transaction) if err != nil { return rowsInserted, err } @@ -117,8 +134,16 @@ func (d *DataClient) InsertTransactions(transactions []models.Transaction) ([]mo func (d *DataClient) GetTransaction(membreID string, is_perpetual bool) (models.Transaction, error) { var transaction models.Transaction - //err := d.DB.NamedQuery("SELECT * FROM transactions WHERE membre_id=:membre_id AND is_perpetual=:is_perpetual LIMIT 1;" - err := d.DB.Get(&transaction, "SELECT * FROM transactions WHERE membre_id = $1 AND is_perpetual = $2 LIMIT 1;", membreID, is_perpetual) + err := d.DB.Get(&transaction, ` +SELECT + * +FROM + transactions +WHERE + membre_id = $1 AND + is_perpetual = $2 +LIMIT 1; +`, membreID, is_perpetual) if err != nil { return transaction, err } @@ -132,7 +157,13 @@ func (d *DataClient) GetTransaction(membreID string, is_perpetual bool) (models. func (d *DataClient) ListTransactions() ([]models.Transaction, error) { var transactions []models.Transaction - if err := d.DB.Select(&transactions, "SELECT * FROM transactions LIMIT 20000;"); err != nil { + if err := d.DB.Select(&transactions, ` +SELECT + * +FROM + transactions +LIMIT 20000; +`); err != nil { return transactions, err } From 70b0f4152a2cc62dbecf28f98ea364b8ef66129d Mon Sep 17 00:00:00 2001 From: Victor Lacasse-Beaudoin Date: Mon, 16 Sep 2024 15:01:32 -0400 Subject: [PATCH 2/3] fix: noms de flags pour infos DB et inject .env dans containers --- README.md | 6 +++--- docker-compose.yaml | 8 +++++--- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 9df143d..657eca4 100644 --- a/README.md +++ b/README.md @@ -10,9 +10,9 @@ Nécessite une installation fonctionnelle et accessible de [agecem/bottin](https Remplir .env avec données d'environnement: ``` -BOTTINAGENDA_POSTGRES_DATABASE=bottin-agenda -BOTTINAGENDA_POSTGRES_PASSWORD=bottin-agenda -BOTTINAGENDA_POSTGRES_USER=bottin-agenda +BOTTINAGENDA_DB_DATABASE=bottin-agenda +BOTTINAGENDA_DB_PASSWORD=bottin-agenda +BOTTINAGENDA_DB_USER=bottin-agenda ``` Déployer avec docker-compose: diff --git a/docker-compose.yaml b/docker-compose.yaml index f1f7c4f..ad4380e 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -3,9 +3,9 @@ services: db: image: 'docker.io/library/postgres:16.1' environment: - POSTGRES_DATABASE: "${BOTTINAGENDA_POSTGRES_DATABASE}" - POSTGRES_PASSWORD: "${BOTTINAGENDA_POSTGRES_PASSWORD}" - POSTGRES_USER: "${BOTTINAGENDA_POSTGRES_USER}" + POSTGRES_DATABASE: "${BOTTINAGENDA_DB_DATABASE:?}" + POSTGRES_PASSWORD: "${BOTTINAGENDA_DB_PASSWORD:?}" + POSTGRES_USER: "${BOTTINAGENDA_DB_USER:?}" volumes: - 'db-data:/var/lib/postgresql/data' restart: 'unless-stopped' @@ -14,6 +14,7 @@ services: depends_on: - db build: . + env_file: '.env' image: 'git.agecem.com/agecem/bottin-agenda:latest' ports: - '1313:1313' @@ -26,6 +27,7 @@ services: depends_on: - api build: . + env_file: '.env' image: 'git.agecem.com/agecem/bottin-agenda:latest' ports: - '2313:2313' From fcd2d39ddec6b6a70a6e55b04f189b594cb42e73 Mon Sep 17 00:00:00 2001 From: Victor Lacasse-Beaudoin Date: Mon, 16 Sep 2024 15:23:55 -0400 Subject: [PATCH 3/3] chores(Dockerfile): bump go -> 1.23.1 --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 6090d72..a44e239 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM golang:1.21.4 as build +FROM golang:1.23.1 as build LABEL author="vlbeaudoin"