46 lines
1.2 KiB
Ruby
46 lines
1.2 KiB
Ruby
class Crowdin < Formula
|
|
desc "Command-line tool that allows to manage your resources with crowdin.com"
|
|
homepage "https://support.crowdin.com/cli-tool/"
|
|
url "https://github.com/crowdin/crowdin-cli/releases/download/3.2.2/crowdin-cli.zip"
|
|
sha256 "1973ba0fef1bfb499deb2606298fd1289e8f046692bcc0ae5561446fb8c5931f"
|
|
license "MIT"
|
|
|
|
livecheck do
|
|
url "https://github.com/crowdin/crowdin-cli.git"
|
|
regex(/^v?(\d+(?:\.\d+)+)$/i)
|
|
end
|
|
|
|
bottle :unneeded
|
|
|
|
depends_on "openjdk"
|
|
|
|
def install
|
|
libexec.install "crowdin-cli.jar"
|
|
bin.write_jar_script libexec/"crowdin-cli.jar", "crowdin"
|
|
end
|
|
|
|
test do
|
|
(testpath/"crowdin.yml").write <<~EOS
|
|
"project_id": "12"
|
|
"api_token": "54e01--your-personal-token--2724a"
|
|
"base_path": "."
|
|
"base_url": "https://api.crowdin.com" # https://{organization-name}.crowdin.com
|
|
|
|
"preserve_hierarchy": true
|
|
|
|
"files": [
|
|
{
|
|
"source" : "/t1/**/*",
|
|
"translation" : "/%two_letters_code%/%original_file_name%"
|
|
}
|
|
]
|
|
EOS
|
|
|
|
assert "Your configuration file looks good",
|
|
shell_output("#{bin}/crowdin lint")
|
|
|
|
assert "Failed to authorize in Crowdin",
|
|
shell_output("#{bin}/crowdin upload sources --config #{testpath}/crowdin.yml", 1)
|
|
end
|
|
end
|