mirror of
https://github.com/sonr-io/sonr.git
synced 2026-08-02 17:31:39 +00:00
style(proto): ignore tmp-swagger-gen/**/*.swagger.json
This commit is contained in:
+39
-1
@@ -25,6 +25,36 @@ set_toml_value() {
|
||||
|
||||
ensure_file "$file"
|
||||
|
||||
# Check if we're using Docker and the file is owned by root
|
||||
if [[ "${USE_DOCKER:-false}" == "true" ]] && [[ "$(stat -c %u "$file" 2>/dev/null || echo 0)" == "0" ]]; then
|
||||
# Use Docker to modify the file to avoid permission issues
|
||||
# Escape special characters for sed
|
||||
local escaped_value
|
||||
escaped_value=$(printf '%s\n' "$value" | sed 's/[[\.*^$()+?{|]/\\&/g')
|
||||
|
||||
# Check if value is a JSON array/object (starts with [ or {) - don't quote it
|
||||
local sed_replacement
|
||||
if [[ "$value" =~ ^\[.*\]$ ]] || [[ "$value" =~ ^\{.*\}$ ]]; then
|
||||
sed_replacement="$key = $escaped_value"
|
||||
else
|
||||
sed_replacement="$key = \"$escaped_value\""
|
||||
fi
|
||||
|
||||
docker run --rm -i \
|
||||
-v "$(dirname "$file"):$(dirname "$file")" \
|
||||
--entrypoint sh \
|
||||
onsonr/snrd:latest \
|
||||
-c "sed -i 's|^\s*$key\s*=.*|$sed_replacement|g' '$file'"
|
||||
|
||||
if [ $? -eq 0 ]; then
|
||||
log_success "Set $key = $value in $file (Docker sed)"
|
||||
return 0
|
||||
else
|
||||
log_error "Failed to set $section.$key in $file"
|
||||
return 1
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ "$CRUDINI_AVAILABLE" == "true" ]]; then
|
||||
if crudini --set "$file" "$section" "$key" "$value" 2>/dev/null; then
|
||||
log_success "Set $section.$key = $value in $file"
|
||||
@@ -39,8 +69,16 @@ set_toml_value() {
|
||||
local escaped_value
|
||||
escaped_value=$(printf '%s\n' "$value" | sed 's/[[\.*^$()+?{|]/\\&/g')
|
||||
|
||||
# Check if value is a JSON array/object (starts with [ or {) - don't quote it
|
||||
local sed_replacement
|
||||
if [[ "$value" =~ ^\[.*\]$ ]] || [[ "$value" =~ ^\{.*\}$ ]]; then
|
||||
sed_replacement="$key = $escaped_value"
|
||||
else
|
||||
sed_replacement="$key = \"$escaped_value\""
|
||||
fi
|
||||
|
||||
# Try to find and replace the line
|
||||
if sed -i "s|^\s*$key\s*=.*|$key = \"$escaped_value\"|g" "$file"; then
|
||||
if sed -i "s|^\s*$key\s*=.*|$sed_replacement|g" "$file"; then
|
||||
log_success "Set $key = $value in $file (using sed)"
|
||||
return 0
|
||||
fi
|
||||
|
||||
+7
-1
@@ -120,8 +120,14 @@ retry() {
|
||||
|
||||
# Initialize environment
|
||||
init_env() {
|
||||
local skip_binary_check="${1:-false}"
|
||||
|
||||
require_cmd jq
|
||||
ensure_binary
|
||||
|
||||
# Only check for binary if not skipping (allows Docker mode to be decided later)
|
||||
if [[ "$skip_binary_check" != "true" ]]; then
|
||||
ensure_binary
|
||||
fi
|
||||
|
||||
# Set up cleanup trap
|
||||
trap cleanup EXIT
|
||||
|
||||
+43
-10
@@ -51,21 +51,53 @@ generate_vrf_key() {
|
||||
local vrf_key_path="$chain_dir/vrf_secret.key"
|
||||
|
||||
# Ensure directory exists
|
||||
mkdir -p "$chain_dir"
|
||||
mkdir -p "$chain_dir" 2>/dev/null || true
|
||||
|
||||
# Convert hex to binary and write to file
|
||||
echo -n "$vrf_key_hex" | xxd -r -p > "$vrf_key_path"
|
||||
# Check if we're using Docker and the directory is owned by root
|
||||
if [[ "${USE_DOCKER:-false}" == "true" ]] && [[ "$(stat -c %u "$chain_dir" 2>/dev/null || echo 0)" == "0" ]]; then
|
||||
# Use Docker to create the VRF key file
|
||||
docker run --rm -i \
|
||||
-v "$chain_dir:$chain_dir" \
|
||||
--entrypoint sh \
|
||||
onsonr/snrd:latest \
|
||||
-c "echo -n '$vrf_key_hex' | xxd -r -p > '$vrf_key_path' && chmod 0600 '$vrf_key_path'"
|
||||
|
||||
# Set restrictive permissions (owner read/write only)
|
||||
chmod 0600 "$vrf_key_path"
|
||||
if [ $? -ne 0 ]; then
|
||||
log_error "Failed to create VRF key using Docker"
|
||||
return 1
|
||||
fi
|
||||
else
|
||||
# Convert hex to binary and write to file
|
||||
echo -n "$vrf_key_hex" | xxd -r -p > "$vrf_key_path"
|
||||
|
||||
# Set restrictive permissions (owner read/write only)
|
||||
chmod 0600 "$vrf_key_path"
|
||||
fi
|
||||
|
||||
# Validate file was created with correct size (64 bytes)
|
||||
local file_size
|
||||
file_size=$(wc -c < "$vrf_key_path")
|
||||
if [[ "${USE_DOCKER:-false}" == "true" ]]; then
|
||||
# Use Docker to check file size for root-owned files
|
||||
file_size=$(docker run --rm -i \
|
||||
-v "$chain_dir:$chain_dir" \
|
||||
--entrypoint sh \
|
||||
onsonr/snrd:latest \
|
||||
-c "wc -c < '$vrf_key_path' 2>/dev/null || echo 0")
|
||||
else
|
||||
file_size=$(wc -c < "$vrf_key_path" 2>/dev/null || echo 0)
|
||||
fi
|
||||
|
||||
if [[ $file_size -ne 64 ]]; then
|
||||
log_error "VRF key file has incorrect size: ${file_size} bytes"
|
||||
rm -f "$vrf_key_path"
|
||||
if [[ "${USE_DOCKER:-false}" == "true" ]]; then
|
||||
docker run --rm -i \
|
||||
-v "$chain_dir:$chain_dir" \
|
||||
--entrypoint sh \
|
||||
onsonr/snrd:latest \
|
||||
-c "rm -f '$vrf_key_path'"
|
||||
else
|
||||
rm -f "$vrf_key_path"
|
||||
fi
|
||||
return 1
|
||||
fi
|
||||
|
||||
@@ -110,9 +142,10 @@ update_genesis_params() {
|
||||
set_json_string "$genesis_file" 'app_state.gov.params.max_deposit_period' "30s"
|
||||
set_json_string "$genesis_file" 'app_state.gov.params.min_deposit[0].amount' "10"
|
||||
set_json_string "$genesis_file" 'app_state.gov.params.voting_period' "30s"
|
||||
set_json_string "$genesis_file" 'app_state.gov.params.quorum' "0.000000000000000000"
|
||||
set_json_string "$genesis_file" 'app_state.gov.params.threshold' "0.000000000000000000"
|
||||
set_json_string "$genesis_file" 'app_state.gov.params.veto_threshold' "0.000000000000000000"
|
||||
set_json_string "$genesis_file" 'app_state.gov.params.expedited_voting_period' "15s"
|
||||
set_json_string "$genesis_file" 'app_state.gov.params.quorum' "0.334000000000000000"
|
||||
set_json_string "$genesis_file" 'app_state.gov.params.threshold' "0.500000000000000000"
|
||||
set_json_string "$genesis_file" 'app_state.gov.params.veto_threshold' "0.334000000000000000"
|
||||
fi
|
||||
|
||||
# Update EVM parameters if present
|
||||
|
||||
@@ -18,6 +18,24 @@ patch_json() {
|
||||
|
||||
log_info "Patching $file with: $jq_expr"
|
||||
|
||||
# Check if we're using Docker and the file is owned by root
|
||||
if [[ "${USE_DOCKER:-false}" == "true" ]] && [[ "$(stat -c %u "$file" 2>/dev/null || echo 0)" == "0" ]]; then
|
||||
# Use Docker to patch the file to avoid permission issues
|
||||
docker run --rm -i \
|
||||
-v "$(dirname "$file"):$(dirname "$file")" \
|
||||
--entrypoint sh \
|
||||
onsonr/snrd:latest \
|
||||
-c "jq -r '$jq_expr' '$file' > '${file}.tmp' && mv '${file}.tmp' '$file'"
|
||||
|
||||
if [ $? -eq 0 ]; then
|
||||
log_success "Successfully patched $file"
|
||||
return 0
|
||||
else
|
||||
log_error "Failed to patch JSON file: $file"
|
||||
return 1
|
||||
fi
|
||||
fi
|
||||
|
||||
# Create temp file in same directory to avoid cross-filesystem issues
|
||||
local temp_file
|
||||
temp_file="$(dirname "$file")/.tmp.$(basename "$file").$$"
|
||||
|
||||
+10
-2
@@ -22,13 +22,21 @@ import_mnemonic() {
|
||||
return 1
|
||||
fi
|
||||
|
||||
# Use Docker wrapper if needed
|
||||
if is_docker; then
|
||||
# Use run_binary wrapper if available (for Docker mode), otherwise use CHAIN_BIN directly
|
||||
if [ "$(type -t run_binary)" = "function" ]; then
|
||||
# run_binary is available, use it (handles Docker automatically, including --home)
|
||||
echo "$mnemonic" | run_binary keys add "$key_name" \
|
||||
--keyring-backend "$KEYRING_BACKEND" \
|
||||
--algo "$algo" \
|
||||
--recover
|
||||
elif is_docker; then
|
||||
# We're inside Docker container
|
||||
echo "$mnemonic" | $CHAIN_BIN keys add "$key_name" \
|
||||
--keyring-backend "$KEYRING_BACKEND" \
|
||||
--algo "$algo" \
|
||||
--recover
|
||||
else
|
||||
# Local execution
|
||||
echo "$mnemonic" | $CHAIN_BIN keys add "$key_name" \
|
||||
--keyring-backend "$KEYRING_BACKEND" \
|
||||
--algo "$algo" \
|
||||
|
||||
Reference in New Issue
Block a user