Files
hatchet/pkg/random/random.go
Luca Steeb 1490d88954 feat: webhook workers (#542)
Adds serverless support via the concept of webhook workers. Allows any webhook to be registered as a serverless endpoint for executing a step.
2024-06-25 17:06:43 -04:00

27 lines
513 B
Go

package random
import (
"crypto/rand"
"math/big"
)
const letters = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
// Generate generates a random string of n bytes.
func Generate(n int) (string, error) {
b := make([]byte, n)
for i := 0; i < n; i++ {
num, err := rand.Int(rand.Reader, big.NewInt(int64(len(letters))))
if err != nil {
return "", err
}
b[i] = letters[num.Int64()]
}
return string(b), nil
}
func GenerateWebhookSecret() (string, error) {
return Generate(32)
}