d51bdf14df
* reorg uplink cmd files for consistency * init implementation of usage limiting * Revert "reorg uplink cmd files for consistency" This reverts commit 91ced7639bf36fc8af1db237b01e233ca92f1890. * add changes per CR comments * fix custom query to use rebind * updates per convo about what to limit on * changes per comments * fix syntax and comments * add integration test, add db methods for test * update migration, add rebind to query * update testdata for psql * remove unneeded drop index statement * fix migrations, fix calculate usage limit * fix comment * add audit test back * change methods to use bucketName/projectID, fix tests * add changes per CR comments * add test for uplink upload and err ssg * changes per CR comments * check get/put limit separately
30 lines
837 B
Go
30 lines
837 B
Go
// Copyright (C) 2019 Storj Labs, Inc.
|
|
// See LICENSE for copying information.
|
|
|
|
package accounting
|
|
|
|
import (
|
|
"storj.io/storj/internal/memory"
|
|
)
|
|
|
|
const (
|
|
// AverageDaysInMonth is how many days in a month
|
|
AverageDaysInMonth = 30
|
|
)
|
|
|
|
// ExceedsAlphaUsage returns true if more than 25GB of storage is currently in use
|
|
// or if 25GB of bandwidth or has been used in the past month (30 days)
|
|
// TODO(jg): remove this code once we no longer need usage limiting for alpha release
|
|
// Ref: https://storjlabs.atlassian.net/browse/V3-1274
|
|
func ExceedsAlphaUsage(bandwidthGetTotal, inlineTotal, remoteTotal int64, maxAlphaUsageGB memory.Size) (bool, string) {
|
|
if bandwidthGetTotal >= maxAlphaUsageGB.Int64() {
|
|
return true, "bandwidth"
|
|
}
|
|
|
|
if inlineTotal+remoteTotal >= maxAlphaUsageGB.Int64() {
|
|
return true, "storage"
|
|
}
|
|
|
|
return false, ""
|
|
}
|