jailの作成から起動・終了まで19秒。
内訳は
base.txzを展開するだけのjailの作成に11秒。
perlと Plack を入れるのに5秒。
Catalyst を入れるのに2秒。(参考までに)
テストの200確認は一瞬。
base.txzとパッケージはダウンロード済みとしています。
--> tar xzf base.txz -C /usr/home/bokutin/code/try/jail_plack/jail/1563847834 ret:0 elapsed:10.945429s (00:00:10.945429) --> mount_nullfs /var/cache/pkg /usr/home/bokutin/code/try/jail_plack/jail/1563847834/var/cache/pkg ret:0 elapsed:10.947916s (00:00:10.947916) --> jail -c name=1563847845 path=/usr/home/bokutin/code/try/jail_plack/jail/1563847834 ip4=inherit mount.devfs persist ret:0 elapsed:10.949973s (00:00:10.949973) --> cp -p /etc/pkg/MyPoudriere.conf /usr/home/bokutin/code/try/jail_plack/jail/1563847834/etc/pkg/FreeBSD.conf ret:0 elapsed:10.951066s (00:00:10.951066) --> pkg -j 1563847845 install -y p5-Plack Updating MyPoudriere repository catalogue... [] Fetching meta.txz: . done [] Fetching packagesite.txz: .......... done Processing entries: .......... done MyPoudriere repository update completed. 2851 packages processed. All repositories are up to date. Checking integrity... done (0 conflicting) The following 27 package(s) will be affected (of 0 checked): New packages to be INSTALLED: p5-Plack: 1.0047 p5-HTTP-Headers-Fast: 0.21 p5-HTTP-Date: 6.02_1 perl5: 5.28.2 p5-HTTP-Entity-Parser: 0.21 p5-WWW-Form-UrlEncoded: 0.26 p5-HTTP-MultiPartParser: 0.02 p5-Stream-Buffered: 0.03_1 p5-Hash-MultiValue: 0.16 p5-JSON-MaybeXS: 1.004000 p5-Cpanel-JSON-XS: 4.12 p5-HTTP-Body: 1.22 p5-HTTP-Message: 6.18 p5-LWP-MediaTypes: 6.04 p5-URI: 1.76 p5-IO-HTML: 1.001_1 p5-Encode-Locale: 1.05 p5-Cookie-Baker: 0.09 p5-Apache-LogFormat-Compiler: 0.35 p5-POSIX-strftime-Compiler: 0.41 p5-Try-Tiny: 0.30 p5-Path-Class: 0.37 p5-Filesys-Notify-Simple: 0.12_1 p5-File-ShareDir: 1.116 p5-Class-Inspector: 1.34 p5-Devel-StackTrace-AsHTML: 0.15 p5-Devel-StackTrace: 2.04 Number of packages to be installed: 27 The process will require 61 MiB more space. [] [1/27] Installing perl5-5.28.2... [] [1/27] Extracting perl5-5.28.2: .......... done [] [2/27] Installing p5-HTTP-Date-6.02_1... [] [2/27] Extracting p5-HTTP-Date-6.02_1: ....... done [] [3/27] Installing p5-Cpanel-JSON-XS-4.12... [] [3/27] Extracting p5-Cpanel-JSON-XS-4.12: .......... done [] [4/27] Installing p5-LWP-MediaTypes-6.04... [] [4/27] Extracting p5-LWP-MediaTypes-6.04: ........ done [] [5/27] Installing p5-URI-1.76... [] [5/27] Extracting p5-URI-1.76: .......... done [] [6/27] Installing p5-IO-HTML-1.001_1... [] [6/27] Extracting p5-IO-HTML-1.001_1: ....... done [] [7/27] Installing p5-Encode-Locale-1.05... [] [7/27] Extracting p5-Encode-Locale-1.05: ....... done [] [8/27] Installing p5-WWW-Form-UrlEncoded-0.26... [] [8/27] Extracting p5-WWW-Form-UrlEncoded-0.26: .......... done [] [9/27] Installing p5-HTTP-MultiPartParser-0.02... [] [9/27] Extracting p5-HTTP-MultiPartParser-0.02: ........ done [] [10/27] Installing p5-Stream-Buffered-0.03_1... [] [10/27] Extracting p5-Stream-Buffered-0.03_1: .......... done [] [11/27] Installing p5-Hash-MultiValue-0.16... [] [11/27] Extracting p5-Hash-MultiValue-0.16: ....... done [] [12/27] Installing p5-JSON-MaybeXS-1.004000... [] [12/27] Extracting p5-JSON-MaybeXS-1.004000: ....... done [] [13/27] Installing p5-HTTP-Message-6.18... [] [13/27] Extracting p5-HTTP-Message-6.18: .......... done [] [14/27] Installing p5-POSIX-strftime-Compiler-0.41... [] [14/27] Extracting p5-POSIX-strftime-Compiler-0.41: ....... done [] [15/27] Installing p5-Class-Inspector-1.34... [] [15/27] Extracting p5-Class-Inspector-1.34: ......... done [] [16/27] Installing p5-Devel-StackTrace-2.04... [] [16/27] Extracting p5-Devel-StackTrace-2.04: ........ done [] [17/27] Installing p5-HTTP-Headers-Fast-0.21... [] [17/27] Extracting p5-HTTP-Headers-Fast-0.21: ....... done [] [18/27] Installing p5-HTTP-Entity-Parser-0.21... [] [18/27] Extracting p5-HTTP-Entity-Parser-0.21: .......... done [] [19/27] Installing p5-HTTP-Body-1.22... [] [19/27] Extracting p5-HTTP-Body-1.22: .......... done [] [20/27] Installing p5-Cookie-Baker-0.09... [] [20/27] Extracting p5-Cookie-Baker-0.09: ....... done [] [21/27] Installing p5-Apache-LogFormat-Compiler-0.35... [] [21/27] Extracting p5-Apache-LogFormat-Compiler-0.35: ....... done [] [22/27] Installing p5-Try-Tiny-0.30... [] [22/27] Extracting p5-Try-Tiny-0.30: ...... done [] [23/27] Installing p5-Path-Class-0.37... [] [23/27] Extracting p5-Path-Class-0.37: .......... done [] [24/27] Installing p5-Filesys-Notify-Simple-0.12_1... [] [24/27] Extracting p5-Filesys-Notify-Simple-0.12_1: ....... done [] [25/27] Installing p5-File-ShareDir-1.116... [] [25/27] Extracting p5-File-ShareDir-1.116: .......... done [] [26/27] Installing p5-Devel-StackTrace-AsHTML-0.15... [] [26/27] Extracting p5-Devel-StackTrace-AsHTML-0.15: ....... done [] [27/27] Installing p5-Plack-1.0047... [] [27/27] Extracting p5-Plack-1.0047: .......... done Message from perl5-5.28.2: The /usr/bin/perl symlink has been removed starting with Perl 5.20. For shebangs, you should either use: #!/usr/local/bin/perl or #!/usr/bin/env perl The first one will only work if you have a /usr/local/bin/perl, the second will work as long as perl is in PATH. ret:0 elapsed:16.399829s (00:00:16.399829) --> pkg -j 1563847845 install -y p5-Catalyst-Runtime Updating MyPoudriere repository catalogue... MyPoudriere repository is up to date. All repositories are up to date. Checking integrity... done (0 conflicting) The following 76 package(s) will be affected (of 0 checked): New packages to be INSTALLED: p5-Catalyst-Runtime: 5.90124 p5-libwww: 6.39 p5-WWW-RobotRules: 6.02_1 p5-HTTP-Negotiate: 6.01_1 p5-HTTP-Daemon: 6.04 p5-HTTP-Cookies: 6.04 p5-HTML-Parser: 3.72 p5-HTML-Tagset: 3.20_1 p5-File-Listing: 6.04_1 p5-Authen-NTLM: 1.09_1 p5-Digest-HMAC: 1.03_1 p5-Net-HTTP: 6.19 p5-IO-Socket-SSL: 2.066 p5-Mozilla-CA: 20180117 p5-Net-SSLeay: 1.85 p5-IO-Socket-INET6: 2.72_1 p5-Socket6: 0.29 p5-Plack-Test-ExternalServer: 0.02 p5-Plack-Middleware-ReverseProxy: 0.15_1 p5-Plack-Middleware-RemoveRedundantBody: 0.07_1 p5-Plack-Middleware-MethodOverride: 0.20 p5-Plack-Middleware-FixMissingBodyInRedirect: 0.12_1 p5-CGI-Struct: 1.21_1 p5-CGI-Simple: 1.210 p5-Text-SimpleTable: 2.07 p5-String-RewritePrefix: 0.007_1 p5-URI-ws: 0.03 p5-namespace-clean: 0.27 p5-Package-Stash: 0.38 p5-Package-Stash-XS: 0.29 p5-Module-Implementation: 0.09_1 p5-Module-Runtime: 0.016 p5-Dist-CheckConflicts: 0.11_1 p5-B-Hooks-EndOfScope: 0.24 p5-Variable-Magic: 0.62 p5-Sub-Exporter-Progressive: 0.001013 p5-Sub-Exporter: 0.987_1 p5-Sub-Install: 0.928_1 p5-Params-Util: 1.07_2 p5-Data-OptList: 0.110 p5-Tree-Simple-VisitorFactory: 0.15 p5-Tree-Simple: 1.33 p5-Task-Weaken: 1.06 p5-Safe-Isa: 1.000010 p5-PerlIO-utf8_strict: 0.007 p5-MooseX-MethodAttributes: 0.31 p5-namespace-autoclean: 0.28 p5-Sub-Identify: 0.14 p5-MooseX-Types: 0.50 p5-Sub-Name: 0.21,1 p5-Sub-Exporter-ForMethods: 0.100052 p5-Moose: 2.2011,1 p5-Scalar-List-Utils: 1.50,1 p5-Package-DeprecationManager: 0.17_1 p5-Module-Runtime-Conflicts: 0.003_1 p5-MRO-Compat: 0.13 p5-Class-C3: 0.34 p5-Algorithm-C3: 0.10_1 p5-Eval-Closure: 0.14 p5-Devel-OverloadInfo: 0.005 p5-Devel-GlobalDestruction: 0.14 p5-Class-Load-XS: 0.10 p5-Class-Load: 0.25 p5-Carp-Clan: 6.07 p5-MooseX-Getopt: 0.74 p5-MooseX-Role-Parameterized: 1.10 p5-MooseX-ConfigFromFile: 0.14 p5-MooseX-Types-Path-Tiny: 0.012 p5-Path-Tiny: 0.108 p5-MooseX-Types-Stringlike: 0.003_1 p5-Getopt-Long-Descriptive: 0.104 p5-Params-Validate: 1.29 p5-MooseX-Emulate-Class-Accessor-Fast: 0.009032 p5-Module-Pluggable: 5.2 p5-Data-Dump: 1.23_1 p5-Class-C3-Adopt-NEXT: 0.14 Number of packages to be installed: 76 The process will require 8 MiB more space. [] [1/76] Installing p5-Sub-Install-0.928_1... [] [1/76] Extracting p5-Sub-Install-0.928_1: ....... done [] [2/76] Installing p5-Params-Util-1.07_2... [] [2/76] Extracting p5-Params-Util-1.07_2: ........ done [] [3/76] Installing p5-Module-Runtime-0.016... [] [3/76] Extracting p5-Module-Runtime-0.016: ....... done [] [4/76] Installing p5-Data-OptList-0.110... [] [4/76] Extracting p5-Data-OptList-0.110: ....... done [] [5/76] Installing p5-Package-Stash-XS-0.29... [] [5/76] Extracting p5-Package-Stash-XS-0.29: ........ done [] [6/76] Installing p5-Module-Implementation-0.09_1... [] [6/76] Extracting p5-Module-Implementation-0.09_1: ...... done [] [7/76] Installing p5-Dist-CheckConflicts-0.11_1... [] [7/76] Extracting p5-Dist-CheckConflicts-0.11_1: ....... done [] [8/76] Installing p5-Sub-Exporter-0.987_1... [] [8/76] Extracting p5-Sub-Exporter-0.987_1: .......... done [] [9/76] Installing p5-Algorithm-C3-0.10_1... [] [9/76] Extracting p5-Algorithm-C3-0.10_1: ....... done [] [10/76] Installing p5-Package-Stash-0.38... [] [10/76] Extracting p5-Package-Stash-0.38: .......... done [] [11/76] Installing p5-Variable-Magic-0.62... [] [11/76] Extracting p5-Variable-Magic-0.62: ........ done [] [12/76] Installing p5-Sub-Exporter-Progressive-0.001013... [] [12/76] Extracting p5-Sub-Exporter-Progressive-0.001013: ....... done [] [13/76] Installing p5-Class-C3-0.34... [] [13/76] Extracting p5-Class-C3-0.34: ......... done [] [14/76] Installing p5-B-Hooks-EndOfScope-0.24... [] [14/76] Extracting p5-B-Hooks-EndOfScope-0.24: .......... done [] [15/76] Installing p5-Sub-Identify-0.14... [] [15/76] Extracting p5-Sub-Identify-0.14: ........ done [] [16/76] Installing p5-Sub-Name-0.21,1... [] [16/76] Extracting p5-Sub-Name-0.21,1: ........ done [] [17/76] Installing p5-MRO-Compat-0.13... [] [17/76] Extracting p5-MRO-Compat-0.13: ....... done [] [18/76] Installing p5-Class-Load-0.25... [] [18/76] Extracting p5-Class-Load-0.25: ........ done [] [19/76] Installing p5-namespace-clean-0.27... [] [19/76] Extracting p5-namespace-clean-0.27: ........ done [] [20/76] Installing p5-Scalar-List-Utils-1.50,1... [] [20/76] Extracting p5-Scalar-List-Utils-1.50,1: .......... done [] [21/76] Installing p5-Package-DeprecationManager-0.17_1... [] [21/76] Extracting p5-Package-DeprecationManager-0.17_1: ...... done [] [22/76] Installing p5-Module-Runtime-Conflicts-0.003_1... [] [22/76] Extracting p5-Module-Runtime-Conflicts-0.003_1: ....... done [] [23/76] Installing p5-Eval-Closure-0.14... [] [23/76] Extracting p5-Eval-Closure-0.14: ....... done [] [24/76] Installing p5-Devel-OverloadInfo-0.005... [] [24/76] Extracting p5-Devel-OverloadInfo-0.005: ....... done [] [25/76] Installing p5-Devel-GlobalDestruction-0.14... [] [25/76] Extracting p5-Devel-GlobalDestruction-0.14: ....... done [] [26/76] Installing p5-Class-Load-XS-0.10... [] [26/76] Extracting p5-Class-Load-XS-0.10: ....... done [] [27/76] Installing p5-Socket6-0.29... [] [27/76] Extracting p5-Socket6-0.29: ....... done [] [28/76] Installing p5-namespace-autoclean-0.28... [] [28/76] Extracting p5-namespace-autoclean-0.28: ....... done [] [29/76] Installing p5-Sub-Exporter-ForMethods-0.100052... [] [29/76] Extracting p5-Sub-Exporter-ForMethods-0.100052: ....... done [] [30/76] Installing p5-Moose-2.2011,1... [] [30/76] Extracting p5-Moose-2.2011,1: .......... done [] [31/76] Installing p5-Carp-Clan-6.07... [] [31/76] Extracting p5-Carp-Clan-6.07: ....... done [] [32/76] Installing p5-Mozilla-CA-20180117... [] [32/76] Extracting p5-Mozilla-CA-20180117: ........ done [] [33/76] Installing p5-Net-SSLeay-1.85... [] [33/76] Extracting p5-Net-SSLeay-1.85: .......... done [] [34/76] Installing p5-IO-Socket-INET6-2.72_1... [] [34/76] Extracting p5-IO-Socket-INET6-2.72_1: ....... done [] [35/76] Installing p5-MooseX-Types-0.50... [] [35/76] Extracting p5-MooseX-Types-0.50: .......... done [] [36/76] Installing p5-HTML-Tagset-3.20_1... [] [36/76] Extracting p5-HTML-Tagset-3.20_1: ....... done [] [37/76] Installing p5-Digest-HMAC-1.03_1... [] [37/76] Extracting p5-Digest-HMAC-1.03_1: .......... done [] [38/76] Installing p5-IO-Socket-SSL-2.066... [] [38/76] Extracting p5-IO-Socket-SSL-2.066: .......... done [] [39/76] Installing p5-Path-Tiny-0.108... [] [39/76] Extracting p5-Path-Tiny-0.108: ...... done [] [40/76] Installing p5-MooseX-Types-Stringlike-0.003_1... [] [40/76] Extracting p5-MooseX-Types-Stringlike-0.003_1: ...... done [] [41/76] Installing p5-WWW-RobotRules-6.02_1... [] [41/76] Extracting p5-WWW-RobotRules-6.02_1: ......... done [] [42/76] Installing p5-HTTP-Negotiate-6.01_1... [] [42/76] Extracting p5-HTTP-Negotiate-6.01_1: ....... done [] [43/76] Installing p5-HTTP-Daemon-6.04... [] [43/76] Extracting p5-HTTP-Daemon-6.04: ....... done [] [44/76] Installing p5-HTTP-Cookies-6.04... [] [44/76] Extracting p5-HTTP-Cookies-6.04: .......... done [] [45/76] Installing p5-HTML-Parser-3.72... [] [45/76] Extracting p5-HTML-Parser-3.72: .......... done [] [46/76] Installing p5-File-Listing-6.04_1... [] [46/76] Extracting p5-File-Listing-6.04_1: ....... done [] [47/76] Installing p5-Authen-NTLM-1.09_1... [] [47/76] Extracting p5-Authen-NTLM-1.09_1: ......... done [] [48/76] Installing p5-Net-HTTP-6.19... [] [48/76] Extracting p5-Net-HTTP-6.19: .......... done [] [49/76] Installing p5-MooseX-Types-Path-Tiny-0.012... [] [49/76] Extracting p5-MooseX-Types-Path-Tiny-0.012: ...... done [] [50/76] Installing p5-Params-Validate-1.29... [] [50/76] Extracting p5-Params-Validate-1.29: .......... done [] [51/76] Installing p5-libwww-6.39... [] [51/76] Extracting p5-libwww-6.39: .......... done [] [52/76] Installing p5-Tree-Simple-1.33... [] [52/76] Extracting p5-Tree-Simple-1.33: ......... done [] [53/76] Installing p5-MooseX-Role-Parameterized-1.10... [] [53/76] Extracting p5-MooseX-Role-Parameterized-1.10: .......... done [] [54/76] Installing p5-MooseX-ConfigFromFile-0.14... [] [54/76] Extracting p5-MooseX-ConfigFromFile-0.14: ....... done [] [55/76] Installing p5-Getopt-Long-Descriptive-0.104... [] [55/76] Extracting p5-Getopt-Long-Descriptive-0.104: .......... done [] [56/76] Installing p5-Plack-Test-ExternalServer-0.02... [] [56/76] Extracting p5-Plack-Test-ExternalServer-0.02: ....... done [] [57/76] Installing p5-Plack-Middleware-ReverseProxy-0.15_1... [] [57/76] Extracting p5-Plack-Middleware-ReverseProxy-0.15_1: ....... done [] [58/76] Installing p5-Plack-Middleware-RemoveRedundantBody-0.07_1... [] [58/76] Extracting p5-Plack-Middleware-RemoveRedundantBody-0.07_1: ....... done [] [59/76] Installing p5-Plack-Middleware-MethodOverride-0.20... [] [59/76] Extracting p5-Plack-Middleware-MethodOverride-0.20: ....... done [] [60/76] Installing p5-Plack-Middleware-FixMissingBodyInRedirect-0.12_1... [] [60/76] Extracting p5-Plack-Middleware-FixMissingBodyInRedirect-0.12_1: ....... done [] [61/76] Installing p5-CGI-Struct-1.21_1... [] [61/76] Extracting p5-CGI-Struct-1.21_1: ...... done [] [62/76] Installing p5-CGI-Simple-1.210... [] [62/76] Extracting p5-CGI-Simple-1.210: .......... done [] [63/76] Installing p5-Text-SimpleTable-2.07... [] [63/76] Extracting p5-Text-SimpleTable-2.07: ...... done [] [64/76] Installing p5-String-RewritePrefix-0.007_1... [] [64/76] Extracting p5-String-RewritePrefix-0.007_1: ....... done [] [65/76] Installing p5-URI-ws-0.03... [] [65/76] Extracting p5-URI-ws-0.03: ......... done [] [66/76] Installing p5-Tree-Simple-VisitorFactory-0.15... [] [66/76] Extracting p5-Tree-Simple-VisitorFactory-0.15: .......... done [] [67/76] Installing p5-Task-Weaken-1.06... [] [67/76] Extracting p5-Task-Weaken-1.06: ....... done [] [68/76] Installing p5-Safe-Isa-1.000010... [] [68/76] Extracting p5-Safe-Isa-1.000010: ....... done [] [69/76] Installing p5-PerlIO-utf8_strict-0.007... [] [69/76] Extracting p5-PerlIO-utf8_strict-0.007: ........ done [] [70/76] Installing p5-MooseX-MethodAttributes-0.31... [] [70/76] Extracting p5-MooseX-MethodAttributes-0.31: .......... done [] [71/76] Installing p5-MooseX-Getopt-0.74... [] [71/76] Extracting p5-MooseX-Getopt-0.74: .......... done [] [72/76] Installing p5-MooseX-Emulate-Class-Accessor-Fast-0.009032... [] [72/76] Extracting p5-MooseX-Emulate-Class-Accessor-Fast-0.009032: .......... done [] [73/76] Installing p5-Module-Pluggable-5.2... [] [73/76] Extracting p5-Module-Pluggable-5.2: .......... done [] [74/76] Installing p5-Data-Dump-1.23_1... [] [74/76] Extracting p5-Data-Dump-1.23_1: .......... done [] [75/76] Installing p5-Class-C3-Adopt-NEXT-0.14... [] [75/76] Extracting p5-Class-C3-Adopt-NEXT-0.14: ....... done [] [76/76] Installing p5-Catalyst-Runtime-5.90124... [] [76/76] Extracting p5-Catalyst-Runtime-5.90124: .......... done Message from p5-Moose-2.2011,1: Note that this release of p5-Moose is incompatible with older versions of the following modules: Catalyst <= 5.80017 Devel::REPL <= 1.003008 Fey::ORM <= 0.23 File::ChangeNotify <= 0.15 KiokuDB <= 0.41 MooseX::Aliases <= 0.07 MooseX::AttributeHelpers <= 0.22 MooseX::AttributeInflate <= 0.02 MooseX::Attribute::Prototype <= 0.10 MooseX::ClassAttribute <= 0.13 MooseX::FollowPBP <= 0.02 MooseX::HasDefaults <= 0.02 MooseX::InstanceTracking <= 0.04 MooseX::LazyRequire <= 0.05 MooseX::MethodAttributes <= 0.22 MooseX::NonMoose <= 0.13 MooseX::Params::Validate <= 0.05 MooseX::Role::Cmd <= 0.06 MooseX::Role::WithOverloading <= 0.07 MooseX::SemiAffordanceAccessor <= 0.05 MooseX::Singleton <= 0.22 MooseX::StrictConstructor <= 0.08 MooseX::Types <= 0.19 MooseX::UndefTolerant <= 0.04 namespace::autoclean <= 0.08 Pod::Elemental <= 0.093280 They will need to be updated. Message from p5-Catalyst-Runtime-5.90124: ------------------------------------------------------------------------ NOTE! The Apache engines have been moved to a separate package: Please install www/p5-Catalyst-Engine-Apache if you need Apache/mod_perl support. The parts necessary to do development with Catalyst have been moved to a separate package: Please install www/p5-Catalyst-Devel, if you need to develop Catalyst-apps, as opposed to simply running them. The majority of the documentation has been moved to a separate package as well: Install www/p5-Catalyst-Manual for the tutorially goodness. ------------------------------------------------------------------------ ret:0 elapsed:18.567568s (00:00:18.567568) --> jexec 1563847845 daemon plackup -D -p 12869 -e 'sub { [200, [], ["200 ok\n"]] }' ret:0 elapsed:18.570165s (00:00:18.570165) --> lwp-request -E http://127.0.0.1:12869 HTTP::Server::PSGI: Accepting connections at http://0:12869/ 127.0.0.1 - - [23/Jul/2019:02:10:53 +0000] "GET / HTTP/1.1" 200 7 "-" "lwp-request/6.39 libwww-perl/6.39" GET http://127.0.0.1:12869 User-Agent: lwp-request/6.39 libwww-perl/6.39 200 OK Date: Tue, 23 Jul 2019 02:10:53 GMT Server: HTTP::Server::PSGI Content-Length: 7 Client-Date: Tue, 23 Jul 2019 02:10:53 GMT Client-Peer: 127.0.0.1:12869 Client-Response-Num: 1 200 ok ret:0 elapsed:18.642556s (00:00:18.642556) --> jail -r 1563847845 ret:0 elapsed:18.645106s (00:00:18.645106) --> umount /usr/home/bokutin/code/try/jail_plack/jail/1563847834/var/cache/pkg ret:0 elapsed:18.646434s (00:00:18.646434)コード
#!/usr/local/bin/perl
use Modern::Perl;
use base qw(App::Cmd::Simple);
use Cwd qw(realpath);
use File::Basename qw(basename);
use File::Path qw(make_path);
use File::Spec::Functions;
use FindBin;
use IO::All;
use Net::EmptyPort qw(empty_port);
use String::ShellQuote;
use Term::ANSIColor;
use Timer::Simple;
sub opt_spec {
(
[ "reuse_jail", "" ],
);
}
sub execute {
my ($self, $opt, $args) = @_;
my $t = Timer::Simple->new;
my sub _cmd {
my @cmd = @_;
say colored "--> @{[ shell_quote @cmd ]}", "blue";
my $ret = system @cmd;
say colored "ret:$ret elapsed:$t", ($ret == 0 ? "green" : "magenta");
}
my $app_home = realpath catdir $FindBin::Bin, "..";
my $jail_base;
if ($opt->reuse_jail) {
$jail_base = (glob "$app_home/jail/*")[-1] or die;
}
else {
$jail_base = catdir $app_home, "jail", time;
-d or make_path($_) or die $! for $jail_base;
# https://download.freebsd.org/ftp/releases/amd64/12.0-RELEASE/base.txz
_cmd qw(tar xzf base.txz -C), $jail_base;
}
my $jail_name = time;
my $plack_port = empty_port;
-d or make_path($_) or die $! for "$jail_base/var/cache/pkg";
_cmd qw(mount_nullfs /var/cache/pkg), "$jail_base/var/cache/pkg";
_cmd qw(jail -c), "name=$jail_name", "path=$jail_base", "ip4=inherit", "mount.devfs", "persist";
_cmd qw(cp -p), "/etc/pkg/MyPoudriere.conf", "$jail_base/etc/pkg/FreeBSD.conf";
_cmd qw(pkg -j), $jail_name, qw(install -y p5-Plack);
_cmd qw(pkg -j), $jail_name, qw(install -y p5-Catalyst-Runtime);
_cmd qw(jexec), $jail_name, qw(daemon plackup -D -p), $plack_port, "-e", 'sub { [200, [], ["200 ok\n"]] }';
_cmd qw(lwp-request -E), "http://127.0.0.1:$plack_port";
_cmd qw(jail -r), $jail_name;
_cmd qw(umount), "$jail_base/var/cache/pkg";
}
__PACKAGE__->import->run;
追記 @2020-06-04T07:00:58+09
oka % time cpm install Catalyst
DONE install Data-Dump-1.23
DONE install Hash-MultiValue-0.16
DONE install URI-1.76
DONE install Safe-Isa-1.000010
DONE install Tree-Simple-1.33
DONE install Module-Pluggable-5.2
DONE install Task-Weaken-1.06
DONE install Text-SimpleTable-2.07
DONE install Try-Tiny-0.30
DONE install Stream-Buffered-0.03
DONE install PerlIO-utf8_strict-0.007
DONE install Tree-Simple-VisitorFactory-0.15
DONE install URI-ws-0.03
DONE install MRO-Compat-0.13
DONE install Module-Build-0.4231
DONE install File-ShareDir-Install-0.13
DONE install Net-HTTP-6.19
DONE install Sub-Install-0.928
DONE install Encode-Locale-1.05
DONE install Params-Util-1.07
DONE install IO-HTML-1.001
DONE install ExtUtils-Config-0.008
DONE install Clone-0.45
DONE install LWP-MediaTypes-6.04
DONE install Test-Deep-1.130
DONE install Module-Runtime-0.016
DONE install Path-Class-0.37
DONE install WWW-RobotRules-6.02
DONE install ExtUtils-Helpers-0.026
DONE install Test-NoWarnings-1.04
DONE install CGI-Struct-1.21
DONE install Cpanel-JSON-XS-4.19
DONE install Data-OptList-0.110
DONE install ExtUtils-InstallPaths-0.012
DONE install HTML-Tagset-3.20
DONE install Dist-CheckConflicts-0.11
DONE install Module-Implementation-0.09
DONE install IO-Stringy-2.113
DONE install TimeDate-2.33
DONE install Time-Local-1.30
DONE install JSON-MaybeXS-1.004002
DONE install Sub-Exporter-0.987
DONE install Carp-Clan-6.08
DONE install HTTP-Date-6.05
DONE install Variable-Magic-0.62
DONE install HTML-Parser-3.72
DONE install Sub-Name-0.26
DONE install Sub-Identify-0.14
DONE install Params-Validate-1.29
DONE install Module-Build-Tiny-0.039
DONE install Sub-Exporter-Progressive-0.001013
DONE install HTTP-Headers-Fast-0.22
DONE install Filesys-Notify-Simple-0.14
DONE install Cookie-Baker-0.11
DONE install WWW-Form-UrlEncoded-0.26
DONE install File-Listing-6.04
DONE install Sub-Uplevel-0.2800
DONE install Sub-Exporter-ForMethods-0.100052
DONE install String-RewritePrefix-0.008
DONE install Devel-StackTrace-2.04
DONE install Test-Exception-0.43
DONE install Getopt-Long-Descriptive-0.105
DONE install B-Hooks-EndOfScope-0.24
DONE install aliased-0.34
DONE install Devel-StackTrace-AsHTML-0.15
DONE install CGI-Simple-1.25
DONE install Module-Runtime-Conflicts-0.003
DONE install Class-C3-Adopt-NEXT-0.14
DONE install Devel-GlobalDestruction-0.14
DONE install Package-Stash-XS-0.29
DONE install Test-SharedFork-0.35
DONE install Class-Inspector-1.36
DONE install Eval-Closure-0.14
DONE install Test-TCP-2.22
DONE install Package-Stash-0.38
DONE install HTTP-MultiPartParser-0.02
DONE install File-ShareDir-1.116
DONE install POSIX-strftime-Compiler-0.42
DONE install namespace-clean-0.27
DONE install Apache-LogFormat-Compiler-0.36
DONE install Class-Load-0.25
DONE install Devel-OverloadInfo-0.005
DONE install Package-DeprecationManager-0.17
DONE install HTTP-Entity-Parser-0.22
DONE install namespace-autoclean-0.29
DONE install Class-Load-XS-0.10
DONE install Moose-2.2012
DONE install MooseX-Role-Parameterized-1.11
DONE install MooseX-Types-0.50
DONE install MooseX-Getopt-0.74
DONE install MooseX-Emulate-Class-Accessor-Fast-0.009032
DONE install MooseX-Role-WithOverloading-0.17
DONE install MooseX-MethodAttributes-0.31
DONE install HTTP-Message-6.24
DONE install Encode-3.06
DONE install HTTP-Daemon-6.10
DONE install HTTP-Negotiate-6.01
DONE install HTTP-Cookies-6.08
DONE install HTTP-Body-1.22
DONE install Plack-1.0047
DONE install libwww-perl-6.44
DONE install Plack-Middleware-FixMissingBodyInRedirect-0.12
DONE install Plack-Middleware-MethodOverride-0.20
DONE install Plack-Middleware-ReverseProxy-0.16
DONE install Plack-Middleware-RemoveRedundantBody-0.09
DONE install Plack-Test-ExternalServer-0.02
DONE install Catalyst-Runtime-5.90126
107 distributions installed.
cpm install Catalyst 64.44s user 40.35s system 384% cpu 27.273 total
oka % rm -Rf local
oka % time cpm install Catalyst
DONE install Stream-Buffered-0.03 (using prebuilt)
DONE install Safe-Isa-1.000010 (using prebuilt)
DONE install Tree-Simple-1.33 (using prebuilt)
DONE install MRO-Compat-0.13 (using prebuilt)
DONE install Module-Pluggable-5.2 (using prebuilt)
DONE install Data-Dump-1.23 (using prebuilt)
DONE install Try-Tiny-0.30 (using prebuilt)
DONE install Hash-MultiValue-0.16 (using prebuilt)
DONE install Text-SimpleTable-2.07 (using prebuilt)
DONE install Task-Weaken-1.06 (using prebuilt)
DONE install PerlIO-utf8_strict-0.007 (using prebuilt)
DONE install Tree-Simple-VisitorFactory-0.15 (using prebuilt)
DONE install URI-1.76 (using prebuilt)
DONE install HTML-Tagset-3.20 (using prebuilt)
DONE install Package-Stash-XS-0.29 (using prebuilt)
DONE install Sub-Identify-0.14 (using prebuilt)
DONE install Encode-Locale-1.05 (using prebuilt)
DONE install Sub-Name-0.26 (using prebuilt)
DONE install Params-Util-1.07 (using prebuilt)
DONE install IO-HTML-1.001 (using prebuilt)
DONE install Eval-Closure-0.14 (using prebuilt)
DONE install Sub-Install-0.928 (using prebuilt)
DONE install Module-Build-0.4231 (using prebuilt)
DONE install Filesys-Notify-Simple-0.14 (using prebuilt)
DONE install LWP-MediaTypes-6.04 (using prebuilt)
DONE install Devel-StackTrace-2.04 (using prebuilt)
DONE install Test-NoWarnings-1.04 (using prebuilt)
DONE install Encode-3.06 (using prebuilt)
DONE install Test-Deep-1.130 (using prebuilt)
DONE install Cpanel-JSON-XS-4.19 (using prebuilt)
DONE install Data-OptList-0.110 (using prebuilt)
DONE install Cookie-Baker-0.11 (using prebuilt)
DONE install Devel-StackTrace-AsHTML-0.15 (using prebuilt)
DONE install CGI-Struct-1.21 (using prebuilt)
DONE install WWW-RobotRules-6.02 (using prebuilt)
DONE install File-ShareDir-Install-0.13 (using prebuilt)
DONE install WWW-Form-UrlEncoded-0.26 (using prebuilt)
DONE install URI-ws-0.03 (using prebuilt)
DONE install JSON-MaybeXS-1.004002 (using prebuilt)
DONE install Module-Runtime-0.016 (using prebuilt)
DONE install HTML-Parser-3.72 (using prebuilt)
DONE install Clone-0.45 (using prebuilt)
DONE install Path-Class-0.37 (using prebuilt)
DONE install IO-Stringy-2.113 (using prebuilt)
DONE install Sub-Exporter-Progressive-0.001013 (using prebuilt)
DONE install HTTP-MultiPartParser-0.02 (using prebuilt)
DONE install ExtUtils-Helpers-0.026 (using prebuilt)
DONE install Net-HTTP-6.19 (using prebuilt)
DONE install POSIX-strftime-Compiler-0.42 (using prebuilt)
DONE install Time-Local-1.30 (using prebuilt)
DONE install Sub-Exporter-0.987 (using prebuilt)
DONE install Sub-Uplevel-0.2800 (using prebuilt)
DONE install Dist-CheckConflicts-0.11 (using prebuilt)
DONE install Test-SharedFork-0.35 (using prebuilt)
DONE install ExtUtils-Config-0.008 (using prebuilt)
DONE install Class-Inspector-1.36 (using prebuilt)
DONE install Module-Implementation-0.09 (using prebuilt)
DONE install Variable-Magic-0.62 (using prebuilt)
DONE install TimeDate-2.33 (using prebuilt)
DONE install String-RewritePrefix-0.008 (using prebuilt)
DONE install ExtUtils-InstallPaths-0.012 (using prebuilt)
DONE install Package-Stash-0.38 (using prebuilt)
DONE install Test-TCP-2.22 (using prebuilt)
DONE install File-ShareDir-1.116 (using prebuilt)
DONE install Test-Exception-0.43 (using prebuilt)
DONE install Module-Runtime-Conflicts-0.003 (using prebuilt)
DONE install B-Hooks-EndOfScope-0.24 (using prebuilt)
DONE install Apache-LogFormat-Compiler-0.36 (using prebuilt)
DONE install Devel-GlobalDestruction-0.14 (using prebuilt)
DONE install HTTP-Date-6.05 (using prebuilt)
DONE install Devel-OverloadInfo-0.005 (using prebuilt)
DONE install Module-Build-Tiny-0.039 (using prebuilt)
DONE install Class-Load-0.25 (using prebuilt)
DONE install Package-DeprecationManager-0.17 (using prebuilt)
DONE install Params-Validate-1.29 (using prebuilt)
DONE install namespace-clean-0.27 (using prebuilt)
DONE install Carp-Clan-6.08 (using prebuilt)
DONE install CGI-Simple-1.25 (using prebuilt)
DONE install Sub-Exporter-ForMethods-0.100052 (using prebuilt)
DONE install File-Listing-6.04 (using prebuilt)
DONE install namespace-autoclean-0.29 (using prebuilt)
DONE install Class-C3-Adopt-NEXT-0.14 (using prebuilt)
DONE install HTTP-Entity-Parser-0.22 (using prebuilt)
DONE install Class-Load-XS-0.10 (using prebuilt)
DONE install Getopt-Long-Descriptive-0.105 (using prebuilt)
DONE install HTTP-Headers-Fast-0.22 (using prebuilt)
DONE install aliased-0.34 (using prebuilt)
DONE install HTTP-Message-6.24 (using prebuilt)
DONE install HTTP-Negotiate-6.01 (using prebuilt)
DONE install HTTP-Cookies-6.08 (using prebuilt)
DONE install HTTP-Daemon-6.10 (using prebuilt)
DONE install HTTP-Body-1.22 (using prebuilt)
DONE install libwww-perl-6.44 (using prebuilt)
DONE install Plack-Test-ExternalServer-0.02 (using prebuilt)
DONE install Plack-1.0047 (using prebuilt)
DONE install Plack-Middleware-FixMissingBodyInRedirect-0.12 (using prebuilt)
DONE install Plack-Middleware-ReverseProxy-0.16 (using prebuilt)
DONE install Plack-Middleware-RemoveRedundantBody-0.09 (using prebuilt)
DONE install Plack-Middleware-MethodOverride-0.20 (using prebuilt)
DONE install Moose-2.2012 (using prebuilt)
DONE install MooseX-Emulate-Class-Accessor-Fast-0.009032 (using prebuilt)
DONE install MooseX-Role-Parameterized-1.11 (using prebuilt)
DONE install MooseX-Types-0.50 (using prebuilt)
DONE install MooseX-Role-WithOverloading-0.17 (using prebuilt)
DONE install MooseX-Getopt-0.74 (using prebuilt)
DONE install MooseX-MethodAttributes-0.31 (using prebuilt)
DONE install Catalyst-Runtime-5.90126 (using prebuilt)
107 distributions installed.
cpm install Catalyst 4.27s user 9.36s system 283% cpu 4.805 total