mirror of
https://git.ethanthesleepy.one/ethanaobrien/ew.git
synced 2025-05-13 11:37:33 -05:00
Add ability to supply custom asset hash
This commit is contained in:
parent
8bc07a6419
commit
643af93e6d
4 changed files with 54 additions and 14 deletions
|
@ -17,4 +17,12 @@ imports=$([ "$DISABLE_IMPORTS" = "true" ] && echo "--disable-imports" || echo ""
|
|||
|
||||
exports=$([ "$DISABLE_EXPORTS" = "true" ] && echo "--disable-exports" || echo "")
|
||||
|
||||
/root/ew/ew --path $directory --port $port --npps4 $npps4 $exports $imports $purge $hidden $https --global-android "$ANDROID_GLOBAL" --japan-android "$ANDROID_JAPAN" --global-ios "$IOS_GLOBAL" --japan-ios "$IOS_JAPAN" --assets-url "$ASSET_URL" --max-time $maxTime
|
||||
asset_android_jp=$([ "$JP_ANDROID_ASSET_HASH" != "" ] && echo "--jp-android-asset-hash $JP_ANDROID_ASSET_HASH" || echo "")
|
||||
|
||||
asset_ios_jp=$([ "$JP_IOS_ASSET_HASH" != "" ] && echo "--jp-ios-asset-hash $JP_IOS_ASSET_HASH" || echo "")
|
||||
|
||||
asset_android_en=$([ "$EN_ANDROID_ASSET_HASH" != "" ] && echo "--en-android-asset-hash $EN_ANDROID_ASSET_HASH" || echo "")
|
||||
|
||||
asset_ios_en=$([ "$EN_IOS_ASSET_HASH" != "" ] && echo "--en-ios-asset-hash $EN_IOS_ASSET_HASH" || echo "")
|
||||
|
||||
/root/ew/ew --path $directory --port $port --npps4 $npps4 $asset_android_jp $asset_ios_jp $asset_android_en $asset_ios_en $exports $imports $purge $hidden $https --global-android "$ANDROID_GLOBAL" --japan-android "$ANDROID_JAPAN" --global-ios "$IOS_GLOBAL" --japan-ios "$IOS_JAPAN" --assets-url "$ASSET_URL" --max-time $maxTime
|
||||
|
|
14
src/main.rs
14
src/main.rs
|
@ -77,7 +77,19 @@ pub struct Args {
|
|||
disable_imports: bool,
|
||||
|
||||
#[arg(long, default_value_t = false, help = "Disable user account exports")]
|
||||
disable_exports: bool
|
||||
disable_exports: bool,
|
||||
|
||||
#[arg(long, default_value = "", help = "Asset hash for English iOS client.")]
|
||||
en_ios_asset_hash: String,
|
||||
|
||||
#[arg(long, default_value = "", help = "Asset hash for JP iOS client.")]
|
||||
jp_ios_asset_hash: String,
|
||||
|
||||
#[arg(long, default_value = "", help = "Asset hash for English Android client.")]
|
||||
en_android_asset_hash: String,
|
||||
|
||||
#[arg(long, default_value = "", help = "Asset hash for JP Android client.")]
|
||||
jp_android_asset_hash: String
|
||||
}
|
||||
|
||||
#[actix_web::main]
|
||||
|
|
|
@ -18,6 +18,37 @@ pub const ASSET_VERSION_JP: &str = "4c921d2443335e574a82e04ec9ea243c";
|
|||
pub const ASSET_HASH_ANDROID_JP: &str = "67f8f261c16b3cca63e520a25aad6c1c";
|
||||
pub const ASSET_HASH_IOS_JP: &str = "b8975be8300013a168d061d3fdcd4a16";
|
||||
|
||||
pub fn get_asset_hash(asset_version: String, android: bool) -> String {
|
||||
let args = crate::get_args();
|
||||
if asset_version == ASSET_VERSION_JP {
|
||||
if android {
|
||||
if args.jp_android_asset_hash != String::new() {
|
||||
args.jp_android_asset_hash
|
||||
} else {
|
||||
ASSET_HASH_ANDROID_JP.to_string()
|
||||
}
|
||||
} else {
|
||||
if args.jp_ios_asset_hash != String::new() {
|
||||
args.jp_ios_asset_hash
|
||||
} else {
|
||||
ASSET_HASH_IOS_JP.to_string()
|
||||
}
|
||||
}
|
||||
} else if android {
|
||||
if args.en_android_asset_hash != String::new() {
|
||||
args.en_android_asset_hash
|
||||
} else {
|
||||
ASSET_HASH_ANDROID.to_string()
|
||||
}
|
||||
} else {
|
||||
if args.en_ios_asset_hash != String::new() {
|
||||
args.en_ios_asset_hash
|
||||
} else {
|
||||
ASSET_HASH_IOS.to_string()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
pub fn create_token() -> String {
|
||||
format!("{}", Uuid::now_v7())
|
||||
}
|
||||
|
|
|
@ -13,18 +13,7 @@ fn get_asset_hash(req: &HttpRequest, body: &JsonValue) -> String {
|
|||
let platform = req.headers().get("aoharu-platform").unwrap_or(&blank_header).to_str().unwrap_or("");
|
||||
let android = !platform.to_lowercase().contains("iphone");
|
||||
|
||||
let hash = if body["asset_version"] == global::ASSET_VERSION_JP {
|
||||
if android {
|
||||
global::ASSET_HASH_ANDROID_JP
|
||||
} else {
|
||||
global::ASSET_HASH_IOS_JP
|
||||
}
|
||||
} else if android {
|
||||
global::ASSET_HASH_ANDROID
|
||||
} else {
|
||||
global::ASSET_HASH_IOS
|
||||
};
|
||||
hash.to_string()
|
||||
global::get_asset_hash(body["asset_version"].to_string(), android)
|
||||
}
|
||||
|
||||
pub fn asset_hash(req: HttpRequest, body: String) -> Option<JsonValue> {
|
||||
|
|
Loading…
Add table
Reference in a new issue