Update to 11.4.0

This commit is contained in:
AsmodeusRex 2022-12-20 16:29:15 -08:00
parent a1a0021af8
commit 461c96f6dd
6 changed files with 33 additions and 292 deletions

3
LATEST_CHANGELOG Normal file
View file

@ -0,0 +1,3 @@
* Added deploy script
* Fixed LoadFolders for Revia and Moyo
* Added changelogs to release page

View file

@ -1,3 +1,8 @@
11.4.0
-Added deploy script
-Fixed LoadFolders for Revia and Moyo
-Added changelogs to release page
11.3.3
-Added support for DLC races
@ -358,4 +363,6 @@ Bovine Penis multi surgery bow require bovine penis and the label is fixed
-tweak breeders delight
-added length and width to custom parts
-mist men now get parts and gender
-Kijin hot Spring grants 10% fertility
-Kijin hot Spring grants 10% fertility

22
deploy.ps1 Normal file
View file

@ -0,0 +1,22 @@
$l = ".\LATEST_CHANGELOG"
$c = ".\changelog.txt"
$m = "Update to " + $args[0]
Write-Output ("Deploying version " + $args[0])
$a = Get-Content $l
$b = $a | ForEach-Object { "* " + $_ }
$b | Set-Content $l
Write-Output $b
$(
($args[0])
($a | ForEach-Object { "-" + $_ })
("")
(Get-Content $c -Raw)
) | Set-Content $c
git add $l $c
git commit -q --amend --no-edit
git tag $args[0]

213
deploy/Cargo.lock generated
View file

@ -1,213 +0,0 @@
# This file is automatically @generated by Cargo.
# It is not intended for manual editing.
version = 3
[[package]]
name = "autocfg"
version = "1.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
[[package]]
name = "bitflags"
version = "1.3.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
[[package]]
name = "cc"
version = "1.0.78"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a20104e2335ce8a659d6dd92a51a767a0c062599c73b343fd152cb401e828c3d"
dependencies = [
"jobserver",
]
[[package]]
name = "cfg-if"
version = "1.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
[[package]]
name = "deploy"
version = "0.1.0"
dependencies = [
"git2",
]
[[package]]
name = "form_urlencoded"
version = "1.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a9c384f161156f5260c24a097c56119f9be8c798586aecc13afbcbe7b7e26bf8"
dependencies = [
"percent-encoding",
]
[[package]]
name = "git2"
version = "0.15.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2994bee4a3a6a51eb90c218523be382fd7ea09b16380b9312e9dbe955ff7c7d1"
dependencies = [
"bitflags",
"libc",
"libgit2-sys",
"log",
"openssl-probe",
"openssl-sys",
"url",
]
[[package]]
name = "idna"
version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e14ddfc70884202db2244c223200c204c2bda1bc6e0998d11b5e024d657209e6"
dependencies = [
"unicode-bidi",
"unicode-normalization",
]
[[package]]
name = "jobserver"
version = "0.1.25"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "068b1ee6743e4d11fb9c6a1e6064b3693a1b600e7f5f5988047d98b3dc9fb90b"
dependencies = [
"libc",
]
[[package]]
name = "libc"
version = "0.2.138"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "db6d7e329c562c5dfab7a46a2afabc8b987ab9a4834c9d1ca04dc54c1546cef8"
[[package]]
name = "libgit2-sys"
version = "0.14.0+1.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "47a00859c70c8a4f7218e6d1cc32875c4b55f6799445b842b0d8ed5e4c3d959b"
dependencies = [
"cc",
"libc",
"libssh2-sys",
"libz-sys",
"openssl-sys",
"pkg-config",
]
[[package]]
name = "libssh2-sys"
version = "0.2.23"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b094a36eb4b8b8c8a7b4b8ae43b2944502be3e59cd87687595cf6b0a71b3f4ca"
dependencies = [
"cc",
"libc",
"libz-sys",
"openssl-sys",
"pkg-config",
"vcpkg",
]
[[package]]
name = "libz-sys"
version = "1.1.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9702761c3935f8cc2f101793272e202c72b99da8f4224a19ddcf1279a6450bbf"
dependencies = [
"cc",
"libc",
"pkg-config",
"vcpkg",
]
[[package]]
name = "log"
version = "0.4.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "abb12e687cfb44aa40f41fc3978ef76448f9b6038cad6aef4259d3c095a2382e"
dependencies = [
"cfg-if",
]
[[package]]
name = "openssl-probe"
version = "0.1.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf"
[[package]]
name = "openssl-sys"
version = "0.9.79"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5454462c0eced1e97f2ec09036abc8da362e66802f66fd20f86854d9d8cbcbc4"
dependencies = [
"autocfg",
"cc",
"libc",
"pkg-config",
"vcpkg",
]
[[package]]
name = "percent-encoding"
version = "2.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "478c572c3d73181ff3c2539045f6eb99e5491218eae919370993b890cdbdd98e"
[[package]]
name = "pkg-config"
version = "0.3.26"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6ac9a59f73473f1b8d852421e59e64809f025994837ef743615c6d0c5b305160"
[[package]]
name = "tinyvec"
version = "1.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50"
dependencies = [
"tinyvec_macros",
]
[[package]]
name = "tinyvec_macros"
version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c"
[[package]]
name = "unicode-bidi"
version = "0.3.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "099b7128301d285f79ddd55b9a83d5e6b9e97c92e0ea0daebee7263e932de992"
[[package]]
name = "unicode-normalization"
version = "0.1.22"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921"
dependencies = [
"tinyvec",
]
[[package]]
name = "url"
version = "2.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0d68c799ae75762b8c3fe375feb6600ef5602c883c5d21eb51c09f22b83c4643"
dependencies = [
"form_urlencoded",
"idna",
"percent-encoding",
]
[[package]]
name = "vcpkg"
version = "0.2.15"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"

View file

@ -1,9 +0,0 @@
[package]
name = "deploy"
version = "0.1.0"
edition = "2021"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
git2 = "*"

View file

@ -1,69 +0,0 @@
use std::io::{self, BufRead};
use std::fs::{self, File};
use std::env;
use std::path::Path;
use git2::{Repository, Signature, ObjectType, Direction, RemoteCallbacks};
fn main() {
let args: Vec<String> = env::args().collect();
let version = args.into_iter().nth(1).unwrap();
let latest_changelog_path = Path::new("../LATEST_CHANGELOG");
let full_changelog_path = Path::new("../changelog.txt");
println!("Deploying version {}", version);
let changelog = io::BufReader::new(File::open(latest_changelog_path).unwrap()).lines();
let mut deploy_changelog = String::new();
let mut latest_changelog = String::from(version.clone() + "\n");
for line in changelog {
let line = line.unwrap();
deploy_changelog.push_str(&format!("* {}\n", line));
latest_changelog.push_str(&format!("-{}\n", line));
}
latest_changelog.push('\n');
println!("{}", deploy_changelog);
fs::write(latest_changelog_path, deploy_changelog).unwrap();
let old_changelog = fs::read_to_string(full_changelog_path).unwrap();
latest_changelog.push_str(&old_changelog);
fs::write(full_changelog_path, latest_changelog).unwrap();
let asmr_sig = Signature::now("AsmodeusRex", "dark.song2667@fastmail.com").unwrap();
let bot_sig = Signature::now("ASMR_Deploy_Bot", "dark.song2667@fastmail.com").unwrap();
let repo = Repository::open("..").unwrap();
let mut index = repo.index().unwrap();
index.add_path(Path::new("LATEST_CHANGELOG")).unwrap();
index.add_path(Path::new("changelog.txt")).unwrap();
let oid = index.write_tree().unwrap();
let obj = repo.head().unwrap().resolve().unwrap().peel(ObjectType::Commit).unwrap();
let parent_commit = obj.into_commit().unwrap();
let tree = repo.find_tree(oid).unwrap();
let oid = repo.commit(Some("HEAD"),
&asmr_sig, &bot_sig,
&format!("Update to {version}"),
&tree, &[&parent_commit]
).unwrap();
let target = repo.find_object(oid, Some(ObjectType::Commit)).unwrap();
repo.tag(&version, &target, &bot_sig, "", false).unwrap();
let mut callback = RemoteCallbacks::new();
callback.credentials(|_, uname, _| {
git2::Cred::ssh_key(
uname.unwrap(),
None,
Path::new(&format!("{}/.ssh/id_rsa", env::var("HOME").unwrap())),
None,
)
});
let mut rem = repo.find_remote("origin").unwrap();
let mut conn = rem.connect_auth(Direction::Push, Some(callback), None).unwrap();
let remote = conn.remote();
remote.push(&["refs/heads/master:refs/heads/master"], None).unwrap();
}