|
@@ -666,8 +666,14 @@ func HeadBlobHandler(c *gin.Context) {
|
|
|
}
|
|
|
|
|
|
func CreateBlobHandler(c *gin.Context) {
|
|
|
+ targetPath, err := GetBlobsPath(c.Param("digest"))
|
|
|
+ if err != nil {
|
|
|
+ c.AbortWithStatusJSON(http.StatusInternalServerError, gin.H{"error": err.Error()})
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
hash := sha256.New()
|
|
|
- temp, err := os.CreateTemp("", c.Param("digest"))
|
|
|
+ temp, err := os.CreateTemp(filepath.Dir(targetPath), c.Param("digest"))
|
|
|
if err != nil {
|
|
|
c.AbortWithStatusJSON(http.StatusInternalServerError, gin.H{"error": err.Error()})
|
|
|
return
|
|
@@ -690,12 +696,6 @@ func CreateBlobHandler(c *gin.Context) {
|
|
|
return
|
|
|
}
|
|
|
|
|
|
- targetPath, err := GetBlobsPath(c.Param("digest"))
|
|
|
- if err != nil {
|
|
|
- c.AbortWithStatusJSON(http.StatusInternalServerError, gin.H{"error": err.Error()})
|
|
|
- return
|
|
|
- }
|
|
|
-
|
|
|
if err := os.Rename(temp.Name(), targetPath); err != nil {
|
|
|
c.AbortWithStatusJSON(http.StatusInternalServerError, gin.H{"error": err.Error()})
|
|
|
return
|