func ListArtifacts(ctx context.Context, r render.Render, req *http.Request, db database.Database, bucket *model.Bucket) { if bucket == nil { LogAndRespondWithErrorf(ctx, r, http.StatusBadRequest, "No bucket specified") return } artifacts, err := db.ListArtifactsInBucket(bucket.Id) if err != nil { LogAndRespondWithError(ctx, r, http.StatusInternalServerError, err) return } r.JSON(http.StatusOK, artifacts) }
func ListArtifacts(r render.Render, req *http.Request, db database.Database, params martini.Params, bucket *model.Bucket) { if bucket == nil { JsonErrorf(r, http.StatusBadRequest, "Error: no bucket specified") return } artifacts, err := db.ListArtifactsInBucket(bucket.Id) if err != nil { JsonErrorf(r, http.StatusInternalServerError, "Error while listing artifacts: %s", err.Error()) return } r.JSON(http.StatusOK, artifacts) }
func CloseBucket(bucket *model.Bucket, db database.Database, s3Bucket *s3.Bucket, clk common.Clock) error { if bucket.State != model.OPEN { return fmt.Errorf("Bucket is already closed") } bucket.State = model.CLOSED bucket.DateClosed = clk.Now() if err := db.UpdateBucket(bucket); err != nil { return err } if artifacts, err := db.ListArtifactsInBucket(bucket.Id); err != nil { return err } else { for _, artifact := range artifacts { if err := CloseArtifact(&artifact, db, s3Bucket, false); err != nil { return err } } } return nil }