url-shortener: build configuration files (#72)
* url-shortener: makefile and dockerfile
* makefile: make docker configurable
* makefile: manifest destination
* makefile: empy manifest
---------
Co-authored-by: Giorgi Lekveishvili <lekva@gl-mbp-m1-max.local>
diff --git a/apps/url-shortener/main.go b/apps/url-shortener/main.go
index 71cf488..b1db1f9 100644
--- a/apps/url-shortener/main.go
+++ b/apps/url-shortener/main.go
@@ -12,7 +12,9 @@
"net/http"
"strings"
- "github.com/mattn/go-sqlite3"
+ "github.com/ncruces/go-sqlite3"
+ _ "github.com/ncruces/go-sqlite3/driver"
+ _ "github.com/ncruces/go-sqlite3/embed"
)
var port = flag.Int("port", 8080, "Port to listen on")
@@ -87,10 +89,10 @@
VALUES (?, ?, ?, ?)
`, addr.Name, addr.Address, addr.OwnerId, addr.Active)
if err != nil {
- sqliteErr, ok := err.(sqlite3.Error)
+ sqliteErr, ok := err.(*sqlite3.Error)
// sqliteErr.ExtendedCode and sqlite3.ErrConstraintUnique are not the same. probably some lib error.
// had to use actual code of unique const error
- if ok && sqliteErr.ExtendedCode == 1555 {
+ if ok && sqliteErr.ExtendedCode() == 1555 {
return NameAlreadyTaken{Name: addr.Name}
}
return err