 9bdcbe0447
			
		
	
	9bdcbe0447
	
	
	
		
			
			Major integrations and fixes: - Added BACKBEAT SDK integration for P2P operation timing - Implemented beat-aware status tracking for distributed operations - Added Docker secrets support for secure license management - Resolved KACHING license validation via HTTPS/TLS - Updated docker-compose configuration for clean stack deployment - Disabled rollback policies to prevent deployment failures - Added license credential storage (CHORUS-DEV-MULTI-001) Technical improvements: - BACKBEAT P2P operation tracking with phase management - Enhanced configuration system with file-based secrets - Improved error handling for license validation - Clean separation of KACHING and CHORUS deployment stacks 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
		
			
				
	
	
		
			68 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			68 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
| // Copied from https://github.com/etcd-io/etcd/blob/main/client/pkg/verify/verify.go
 | |
| package common
 | |
| 
 | |
| import (
 | |
| 	"fmt"
 | |
| 	"os"
 | |
| 	"strings"
 | |
| )
 | |
| 
 | |
| const ENV_VERIFY = "BBOLT_VERIFY"
 | |
| 
 | |
| type VerificationType string
 | |
| 
 | |
| const (
 | |
| 	ENV_VERIFY_VALUE_ALL    VerificationType = "all"
 | |
| 	ENV_VERIFY_VALUE_ASSERT VerificationType = "assert"
 | |
| )
 | |
| 
 | |
| func getEnvVerify() string {
 | |
| 	return strings.ToLower(os.Getenv(ENV_VERIFY))
 | |
| }
 | |
| 
 | |
| func IsVerificationEnabled(verification VerificationType) bool {
 | |
| 	env := getEnvVerify()
 | |
| 	return env == string(ENV_VERIFY_VALUE_ALL) || env == strings.ToLower(string(verification))
 | |
| }
 | |
| 
 | |
| // EnableVerifications sets `ENV_VERIFY` and returns a function that
 | |
| // can be used to bring the original settings.
 | |
| func EnableVerifications(verification VerificationType) func() {
 | |
| 	previousEnv := getEnvVerify()
 | |
| 	os.Setenv(ENV_VERIFY, string(verification))
 | |
| 	return func() {
 | |
| 		os.Setenv(ENV_VERIFY, previousEnv)
 | |
| 	}
 | |
| }
 | |
| 
 | |
| // EnableAllVerifications enables verification and returns a function
 | |
| // that can be used to bring the original settings.
 | |
| func EnableAllVerifications() func() {
 | |
| 	return EnableVerifications(ENV_VERIFY_VALUE_ALL)
 | |
| }
 | |
| 
 | |
| // DisableVerifications unsets `ENV_VERIFY` and returns a function that
 | |
| // can be used to bring the original settings.
 | |
| func DisableVerifications() func() {
 | |
| 	previousEnv := getEnvVerify()
 | |
| 	os.Unsetenv(ENV_VERIFY)
 | |
| 	return func() {
 | |
| 		os.Setenv(ENV_VERIFY, previousEnv)
 | |
| 	}
 | |
| }
 | |
| 
 | |
| // Verify performs verification if the assertions are enabled.
 | |
| // In the default setup running in tests and skipped in the production code.
 | |
| func Verify(f func()) {
 | |
| 	if IsVerificationEnabled(ENV_VERIFY_VALUE_ASSERT) {
 | |
| 		f()
 | |
| 	}
 | |
| }
 | |
| 
 | |
| // Assert will panic with a given formatted message if the given condition is false.
 | |
| func Assert(condition bool, msg string, v ...any) {
 | |
| 	if !condition {
 | |
| 		panic(fmt.Sprintf("assertion failed: "+msg, v...))
 | |
| 	}
 | |
| }
 |