Merge pull request #207020 from Homebrew/bump-qpdf-11.10.0
[Homebrew/homebrew-core.git] / Formula / t / tomcat@10.rb
blobd28767c8dfe3212eb806edd74a0d6f0d897f80b2
1 class TomcatAT10 < Formula
2   desc "Implementation of Java Servlet and JavaServer Pages"
3   homepage "https://tomcat.apache.org/"
4   url "https://www.apache.org/dyn/closer.lua?path=tomcat/tomcat-10/v10.1.34/bin/apache-tomcat-10.1.34.tar.gz"
5   mirror "https://archive.apache.org/dist/tomcat/tomcat-10/v10.1.34/bin/apache-tomcat-10.1.34.tar.gz"
6   sha256 "f799541380bfff2b674cefd86c5376d2d7d566b3a2e7c4579d2b491de8ec6c36"
7   license "Apache-2.0"
9   livecheck do
10     url :stable
11   end
13   bottle do
14     sha256 cellar: :any_skip_relocation, all: "6c8fc0955ba8d245c8d66c1e8192ef2f08ad9bd12e6a3e511b1034e5b9f089e8"
15   end
17   keg_only :versioned_formula
19   depends_on "openjdk"
21   def install
22     # Remove Windows scripts
23     rm_r(Dir["bin/*.bat"])
25     # Install files
26     prefix.install %w[NOTICE LICENSE RELEASE-NOTES RUNNING.txt]
28     pkgetc.install Dir["conf/*"]
29     (buildpath/"conf").rmdir
30     libexec.install_symlink pkgetc => "conf"
32     libexec.install Dir["*"]
33     (bin/"catalina").write_env_script "#{libexec}/bin/catalina.sh", JAVA_HOME: Formula["openjdk"].opt_prefix
34   end
36   def caveats
37     <<~EOS
38       Configuration files: #{pkgetc}
39     EOS
40   end
42   service do
43     run [opt_bin/"catalina", "run"]
44     keep_alive true
45   end
47   test do
48     ENV["CATALINA_BASE"] = testpath
49     cp_r Dir["#{libexec}/*"], testpath
50     rm Dir["#{libexec}/logs/*"]
52     pid = fork do
53       exec bin/"catalina", "start"
54     end
55     sleep 3
56     begin
57       system bin/"catalina", "stop"
58     ensure
59       Process.wait pid
60     end
61     assert_predicate testpath/"logs/catalina.out", :exist?
62   end
63 end