diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml new file mode 100644 index 0000000..fa1b439 --- /dev/null +++ b/.github/workflows/ci.yaml @@ -0,0 +1,21 @@ +name: Ci Test +on: push +jobs: + test: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: Init db + run: | + ./run.sh startdb + sleep 6 + ./run.sh initdb products_db + + - name: Running tests + run: | + go test ./app/ + + - name: Cleaning + run: | + ./run.sh stopdb + ./run.sh cleanup diff --git a/app/app.go b/app/app.go index 28b0c36..a772de3 100644 --- a/app/app.go +++ b/app/app.go @@ -31,6 +31,7 @@ func (app *RESTApp) Initialize(user, password, dbname string) { if err != nil { log.Fatal(err) } + app.CreateTableIfNotExists() app.Router = mux.NewRouter() app.initializeRoutes() diff --git a/run.sh b/run.sh index 5ad6380..c5e2b53 100755 --- a/run.sh +++ b/run.sh @@ -2,7 +2,7 @@ startdb() { echo "Starting postgres database" - docker-compose up -d + docker compose up -d echo "Started." } @@ -20,7 +20,7 @@ dblogs() { initdb() { if [[ -n "$1" ]]; then echo "Initializing database with name: $1" - docker exec -it go_postgres psql -U postgres -c "create database $1" # db-name + docker exec -i go_postgres psql -U postgres -c "create database $1" # db-name else echo "No database name provided, use initdb " fi