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.5.4/crowdin-cli.zip"
|
|
sha256 "2876f283b35d9de8c4172d3e35ef4ec7c7f5d79a06c021fba04649ecec6472d5"
|
|
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
|