auto-sync: 2026-05-09 21:40:01

This commit is contained in:
Stream
2026-05-09 21:40:02 +03:00
parent 16302e1be3
commit 21fccb3cec
2 changed files with 95 additions and 0 deletions

View File

@@ -0,0 +1,57 @@
#!/bin/bash
# Download all SRTM tiles for Central Federal District + Chuvashia
# Using curl with HTTP code check and retry
SRTM_DIR="/home/slin/enduro-trails/data/srtm"
mkdir -p "$SRTM_DIR"
cd "$SRTM_DIR"
BASE_URL="https://s3.amazonaws.com/elevation-tiles-prod/skadi"
TILES=(
N55E037 N55E038 N55E039 N55E040
N54E037 N54E038 N54E039 N54E040
N53E038 N53E039 N53E040 N53E041
N52E038 N52E039 N52E040 N52E041
N56E037 N56E038 N56E039 N56E040
N57E037 N57E038 N57E039 N57E040
N58E037 N58E038 N58E039 N58E040
N59E038 N59E039 N59E040 N59E041
N60E040 N60E041 N60E042
N54E042 N54E043 N54E044 N54E045
N53E042 N53E043 N53E044 N53E045
N52E042 N52E043 N52E044 N52E045
N51E038 N51E039 N51E040 N51E041
N50E038 N50E039 N50E040 N50E041
N55E047 N55E048 N55E049 N55E050
N54E047 N54E048 N54E049 N54E050
N56E047 N56E048 N56E049 N56E050
)
for tile in "${TILES[@]}"; do
lat="${tile:1:2}"
url="${BASE_URL}/${lat}/${tile}.hgt.gz"
if [ -f "${tile}.hgt" ]; then
echo "SKIP ${tile}"
continue
fi
echo "DL ${tile}"
HTTP_CODE=$(curl -s -o "${tile}.hgt.gz" -w "%{http_code}" --max-time 60 "$url")
if [ "$HTTP_CODE" = "200" ] && [ -s "${tile}.hgt.gz" ]; then
# Verify it's actually gzip
if file "${tile}.hgt.gz" | grep -q "gzip"; then
gunzip -f "${tile}.hgt.gz"
echo "OK ${tile}"
else
echo "FAIL ${tile} (not gzip, HTTP ${HTTP_CODE})"
rm -f "${tile}.hgt.gz"
fi
else
echo "FAIL ${tile} (HTTP ${HTTP_CODE})"
rm -f "${tile}.hgt.gz"
fi
done
echo ""
echo "Total .hgt files: $(ls *.hgt 2>/dev/null | wc -l)"

View File

@@ -0,0 +1,38 @@
const fs = require('fs');
const { Client } = require('ssh2');
const scriptContent = fs.readFileSync('/home/node/.openclaw/workspace/tasks/enduro-trails/prototype/scripts/download_srtm_all6.sh', 'utf8');
const conn = new Client();
conn.on('ready', () => {
console.log('SSH connected. Uploading script...');
conn.sftp((err, sftp) => {
if (err) { console.error('SFTP error:', err); conn.end(); return; }
const stream = sftp.createWriteStream('/home/slin/enduro-trails/data/download_srtm6.sh');
stream.end(scriptContent);
stream.on('close', () => {
console.log('Script uploaded. Starting background download...');
conn.exec('chmod +x /home/slin/enduro-trails/data/download_srtm6.sh && nohup bash /home/slin/enduro-trails/data/download_srtm6.sh > /home/slin/enduro-trails/data/srtm_download6.log 2>&1 & echo "PID=$!"', (err, stream) => {
if (err) { console.error('Exec error:', err); conn.end(); return; }
let out = '';
stream.on('data', d => out += d);
stream.on('close', () => {
console.log('Started:', out.trim());
conn.end();
});
});
});
});
});
conn.on('error', (err) => {
console.error('SSH error:', err.message);
process.exit(1);
});
conn.connect({
host: '82.22.50.71',
username: 'slin',
password: 'motoZ@yaz2010',
readyTimeout: 30000
});