Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Carton を既存の環境に入れるまで入れてから
Search
soh335
February 22, 2014
0
220
Carton を既存の環境に入れるまで入れてから
soh335
February 22, 2014
Tweet
Share
More Decks by soh335
See All by soh335
React Native in Nature
soh335
1
1.4k
Nature での React Native アプリの運用について / React Native App in Nature
soh335
7
1.6k
perl な web application のためのテスト情報
soh335
5
3.6k
Featured
See All Featured
The Straight Up "How To Draw Better" Workshop
denniskardys
236
140k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
How to Think Like a Performance Engineer
csswizardry
26
1.9k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.4k
Java REST API Framework Comparison - PWX 2021
mraible
33
8.8k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Six Lessons from altMBA
skipperchong
28
4k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
840
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
126
53k
Transcript
$BSUPOΛطଘͷڥʹೖΕΔ·Ͱ ೖΕ͔ͯΒ TPI ZPLPIBNBQN
DBSUPOԽ͢Δඞ༻͕͋ͬͨ ֤αʔόͰNPEVMFͷWFSTJPO͕৯͍ҧͬͯΔ Մೳੑ͕͋ͬͨ αʔόҠߦͱ͔͋ͬͨ
QSFQBSFGPSDBSUPO
ݱঢ়ͷDQBOpMF͔ΒDBSUPOԽΛࢼΈΔ ݹ͍WFSTJPOΛͬͯΔNPEVMFैग़དྷ ͦ͏͔ௐΔ DQBOpMFͳ͍ͱೖͬͯΔNPEVMF͔Βੜͨ͠ ΓͰΊΜͲͦ͘͞͏ͩ
DBSUPOJOTUBMM DBSUPOJOTUBMMͰTOBQTIPU࡞ͬͯEFQMPZ TFSWFSతͳͱ͜ΖͰDBSUPOJOTUBMM EFQMPZNFOUͯ͠MPDBMશ෦ࢃ͘ TOBQTIPU࡞ΔڥͱEFQMPZ͞ΕΔڥ͕ಉ͡ ํ͕ྑ͍ͱࢥ͍·͢ɻ
*NBHFSQSPCMFN
*NBHFSΛJOTUBMM͢Δͱɺ͠ *NBHFS'JMF 1/(c(*'c+1&( JOTUBMMग़དྷΔ Α͏Ͱ͋ΕೖΕΔɻೖΒͳ͍Α͏ͳΒೖΕͳ ͍ɻ DQBON*NBHFS'JMF1/(Έ͍ͨͳ͜ͱग़དྷ Δ
requires ‘Imager’; requires ‘Imager::File::PNG’;
requires ‘Imager’; requires ‘Imager::File::PNG’; MJCQOH͕͋Δ߹ *NBHFSΛJOTUBMMͨ࣌͠Ͱ *NBHFS'JMF1/(JOTUBMM͞Ε Δ *NBHFS'JMF1/(طʹ͋Δ ͷͰ໌ࣔతʹೖΕͨ͜ͱʹͳΒͳ͍
VQUPEBUF DQBOpMFTOBQTIPUʹه͞Εͣ DBSUPODIFDL͕௨Βͳ͍
requires ‘Imager’; requires ‘Imager::File::PNG’; MJCQOH͕ͳ͍߹ *NBHFSΛJOTUBMMͨ࣌͠Ͱ *NBHFS'JMF1/(JOTUBMM͞ Εͳ͍ MJCQOH͕ͳ͍ͷͰ*NBHFS'JMF1/( JOTUBMMग़དྷͣFSSPSʹͳΔ
requires ‘Imager’;
requires ‘Imager’; *NBHFSΛJOTUBMMͨ࣌͠Ͱ *NBHFS'JMF1/(JOTUBMM͞Ε Δ MJCQOH͕͋Δ߹
requires ‘Imager’; *NBHFS'JMF1/(͕͑Δ ͔Ͳ͏͔DBSUPO͚ͩͰஅ ͕͚ͭΒΕͳ͍ MJCQOH͕ͳ͍߹ *NBHFSΛJOTUBMMͨ࣌͠Ͱ *NBHFS'JMF1/(JOTUBMM͞ Εͳ͍
*NBHFS'JMF1/(͕DBSUPOʹه͞Εͯ DBSUPODIFDLग़དྷΔͷ͕͍͍͚Ͳʜ MJCQOHͱ͔ͪΌΜͱೖΔΑ͏ʹαʔόߏங͞Ε ͯΔલఏͱͯ͠requires ‘Imager::File::PNG’ ॻ͔ͳ͍΄͏͕ྑ͍ʜ use_ok ‘Imager::File::PNG’ IUUQTPIIBUFOBCMPHDPNFOUSZ
5JNF1JFDF.Z42- QSPCMFN
requires 'Time::Piece', '>= 1.21'; requires 'Time::Piece::MySQL';
# carton snapshot format: version 1.0 DISTRIBUTIONS Time-Piece-1.23 pathname: R/RJ/RJBS/Time-Piece-1.23.tar.gz
provides: Time::Piece 1.23 Time::Seconds 1.23 requirements: Exporter 5.57 ExtUtils::MakeMaker 0 Time-Piece-MySQL-0.06 pathname: K/KA/KASEI/Time-Piece-MySQL-0.06.tar.gz provides: Time::Piece 0.06 Time::Piece::MySQL 0.06 requirements: ExtUtils::MakeMaker 0 Test::More 0.47 Time::Piece 1.03
$ carton install —deployment Installing modules using /path/to/cpanfile (deployment mode)
Found Time::Piece 0.06 which doesn't satisfy 1.21. ! Installing the dependencies failed: Installed version (1.20_01) of Time::Piece is not in range '1.21' ! Bailing out the installation for /path/to/. Installing modules failed
GBJMʜʜ
None
None
࡞ऀͷਓʹͳ͓ͯ͠Β͍͔ͬͯ͘͠ͳ͍͔ͳ ʜ 5FTU.PDL-81Ͱಉ͕͋ͬͨ͡Έ͍ͨ IUUQTIJCBZVIBUFOBCMPHDPNFOUSZ IUUQTPIIBUFOBCMPHDPNFOUSZ
TFUVQDBSUPO
GBUQBDL YT͕ೖΔ͚Ͳͳ͍͚Ͳ.͙ Β͍͋Δ HMPCBMʹDQBON$BSUPO DQBONPEVMFCPPUTUSBQ IUUQ XFCMPHCVMLOFXTOFUQPTU NJZBHBXBDQBONPEVMFCPPUTUSBQ
IUUQTIJCBZVIBUFOBCMPHDPNFOUSZ
*TDBSUPOSFBEZ
$*ͰQBTT͢ΔΑ͏ʹ ࣾͷϦΫΤετ͚ͩDBSUPO͍ΕͨTFSWFSʹ ͚Δ Ұ෦ͷTFSWFSΛDBSUPOͰಈ͔ͯ͠֎͔ΒͷϦ ΫΤετΛগͳΊʹͯͯΈΔ MPH NFNPSZ DQVFUDʜ XPSLFSͱ͔
LBHFతͳͷ͕͋Εָͳͷ͔ͳʁ HMPCBMͳͷݟΔͷͰ࠷ѱNPEVMF͕ݟ͔ͭ Βͳ͍͍ͬͯ͏Τϥʔͳ͍ͣʜ
BGUFSJOTUBMMFE
DBSUPOFYFDʜ`TDPTU
ͱ͋ΔαʔόͰDBSUPO͍Ε͔ͯΒDQVෛՙ͕ มΘͬͨ αʔόࢹͷҝʹසൟʹىಈ͞ΕΔεΫϦϓτ ΛDBSUPOFYFD͍ͯ͠Δͷ͕ݪҼͩͬͨ
None
͚ͩ͜͜ൈ͖ग़ͨ͠TIFMM TDSJQU͚ͩ༻ҙʜ
DBSUPOXJUI$*
IUUQXXXTPOHNVKQSJKJ FOUSZ DBSUPOIUNM
$ ( branch A ) carton install ! $ (
branch B ) echo “requires ‘Teng’;” > cpanfile $ ( branch B ) carton install # Teng installed to ./local/lib/perl5 # cpanfile.snapshot is updated ! $ ( branch A ) carton install # cpanfile.snapshot is updated
DBSUPOTOBQTIPUMPDBMMJCQFSMBSDNFUBҎԼ ͔Β࡞ΒΕΔ "CSBODIͰrequires ‘Teng’; carton install #CSBODIʹΓସ͑DBSUPOJOTUBMM͢ΔͱTOBQTIPU ʹ5FOHͱґଘNPEVMF͕ه͞Εͯ͠·͏ ࣗಈԽ͢ΔʹMPDBMΛαϥʹ͢Δ͔͠ͳ͍͔ͳʁ͏ ͪΐͬͱDBSUPOJOTUBMM͕ૣ͘ͳΕαϥʹ͢Δͷ
ؾ͕ͻ͚ͳ͍ͣʜʜ