SQLRestore restores the dev database using a previously generated dump.
()
| 119 | |
| 120 | // SQLRestore restores the dev database using a previously generated dump. |
| 121 | func (Dev) SQLRestore() error { |
| 122 | if mg.Verbose() { |
| 123 | fmt.Println("Restoring database from dump") |
| 124 | } |
| 125 | d := filepath.Join(".env", "cache", "database.pgdump") |
| 126 | if _, err := os.Stat(d); errors.Is(err, os.ErrNotExist) { |
| 127 | return fmt.Errorf("Dumpfile does not exist: %w", d) |
| 128 | } |
| 129 | return execDockerCompose("exec", "-T", "postgres", "/bin/bash", "-c", |
| 130 | strings.Join([]string{ |
| 131 | fmt.Sprintf("dropdb --if-exists --force %s", devDatabaseName), |
| 132 | fmt.Sprintf("createdb %s", devDatabaseName), |
| 133 | fmt.Sprintf("pg_restore -d %s -Fc /var/lib/ttn-lorawan/cache/database.pgdump", devDatabaseName), |
| 134 | }, " && "), |
| 135 | ) |
| 136 | } |
| 137 | |
| 138 | // RedisFlush deletes all keys from redis except specific task queues. |
| 139 | func (Dev) RedisFlush() error { |
nothing calls this directly
no test coverage detected