id:sora_h ã§ããä»åã¯ã¯ãã¯ãããã®ç¤¾å
apt ãªãã¸ããªç®¡çã»deb ããã±ã¼ã¸ãã«ãã»ãªãªã¼ã¹ããã¼ã«ã¤ãã¦ç´¹ä»ãã¾ãã
ã¯ãã¯ãããã§ã¯ãã¾ã¾ã§ CentOS 6 ãå©ç¨ãã¦ãã¾ããããæè¿ã¯ Ubuntu ã¸ã®ç§»è¡ãé²ãã¦ãã¾ããç¾å¨ã¯ CentOS / Ubuntu 両æ¹ãå ±åããã¤ã³ãã©ã«ãªã£ã¦ãã¾ãã
CentOS ã§ã¯ç¤¾å ã« yum ãªãã¸ããªãç½®ããæ¬å®¶ãªãã¸ããªããæ¶ãã¦ãã¾ã£ãããã±ã¼ã¸ããç¬èªã§ãã«ãããããã±ã¼ã¸ã®ãã¹ããè¡ã£ã¦ãã¾ãããUbuntu å°å ¥ä»¥éãåæ§ã«ã社å apt ãªãã¸ããªãè¨ç½®ããå¿ è¦ãããã°ç¬èªã§ããã±ã¼ã¸ããã«ããããã¨ã«ãã¾ãããå ·ä½çã«ã¯ãããã㯠ruby2.1 ããã±ã¼ã¸ã ruby2.2 ããã±ã¼ã¸ãã¡ã³ããã³ã¹ãã¦ãã¾ãã
(ãªããããã㯠rpmspec ããã³ ebuild ã®æ¹ãæ £ãã¦ãã¦ãæªã deb ããã±ã¼ã¸ãã«ãã§ããããã£ã¦ããã®ã§ééãããã便å©ãªæ¹æ³ãããã°ãã£ã¼ãããã¯ããã ããã¨å©ããã¾ã...)
管ç
deb ããã±ã¼ã¸ã¯ rpmspec ã ebuild ã¨éããå±éãããã½ã¼ã¹ã®ä¸ã« debian ãã£ã¬ã¯ããªã使ããã®ä¸ã¸ããã±ã¼ã¸ã®æ
å ±ããã«ãå¦çãè¨è¿°ãã¦ããã¾ãã
CentOS åãã® rpmspec ã¯åä¸ã® git ãªãã¸ããªã¸å ¨ã¦ãã§ãã¯ã¤ã³ãã¦ãã¾ããããdeb ããã±ã¼ã¸ä½æã«ãã㦠1 ãªãã¸ããªã«å ¨é¨å ¥ããã®ã¯ãã¡ã¤ã«æ°ã»ãµã¤ãºçã«ãé£ããã¨ãã話ã«ãªãã¾ãããã¾ããgit-buildpackage ã®ã¯ã¼ã¯ããã¼ãæ¡ç¨ããããã«ã¯ git ãªãã¸ããªãåå²ãã¦ããå¿ è¦ãããã¾ãã ãã®ãããdeb ããã±ã¼ã¸ã«ããã¦ã¯ãããã±ã¼ã¸ãã¨ã« 1 㤠git ãªãã¸ããªãæã¤ããªã·ã¼ã«ãªãã¾ããã
ã¯ãã¯ãããã§ã¯ deb ããã±ã¼ã¸ã®ãªãã¸ããªãã¾ã¨ããããã® organization ã 1 㤠GitHub Enterprise (GHE) ã¸ä½æãããã㸠deb ããã±ã¼ã¸ã®ã½ã¼ã¹ãªãã¸ããªãã¾ã¨ãã¦ãã¾ãã
ãã«ã
ããã±ã¼ã¸ãã«ãç¨ vagrant ç°å¢ã®ç¨æ
ã¯ãã¯ãããã§ã¯éçºç°å¢ã¨ãã¦å ¨å¡ Mac ãå©ç¨ãã¦ããã®ã§ããã«ãã«å¿ è¦ãªç©ãã¤ã³ã¹ãã¼ã«ãã Ubuntu ã®ç°å¢ã使ãã Vagrantfile ãç¨æãã¦ããã¾ãã ãªããvagrant ã® box ã¯å®éã« AWS ä¸ã§åä½ãã¦ããã¤ã³ã¹ã¿ã³ã¹ã«è¿ããå ±éã®ãã®ãããã®ã§ãããå©ç¨ãã¦ãã¾ãã
https://github.com/sorah/sandbox/blob/master/misc/deb-build/Vagrantfile
git-buildpackage (gbp)
git ãªãã¸ããªã§ç®¡çããäºã«ãããããgit-buildpackage ã®ããã¼ã«åã£ã¦ãã¾ãã
- æ°è¦ããã±ã¼ã¸ã®å ´åã¯
gbp import-dscãgbp import-orig,git clone+dh_makeã§ããã±ã¼ã¸ã®ä½è£ãæ´ãã gbp buildpackageã§ãã«ã- æ´æ°åã
git push --all && git push --tagsã§ push - å¾è¿°ããæ¹æ³ã§ãªãã¸ããªã¸ã¢ãããã¼ã
ã¾ãããã«ãåãã®ã³ãã³ãã«é¢ãã¦ã¯ç¤¾å ã§ãã¼ãã·ã¼ãã®ãããªãã®ãç½®ãã¦ããã¾ãã (æç²ãããã®ããã¡ã: https://github.com/sorah/sandbox/blob/master/misc/deb-build/README.md )
ããã±ã¼ã¸ã®ãªãªã¼ã¹
aptly
apt ãªãã¸ããªã®ç®¡çã«ã¯ aptly ãå©ç¨ãã¦ãã¾ããæ¢åãªãã¸ããªã®ãã©ã¼ããAmazon S3 ã¸ã®ã¢ãããã¼ããç°¡åã«ã§ããã®ãç¹é·ã§ãã
ãªãªã¼ã¹ã³ãã³ã
ããã±ã¼ã¸ããã«ãã§ããå¾ã¯ aptly 㸠aptly repo add, aptly publish update ãå®è¡ãã¦ãªãã¸ããªã¸å
¬éãã¾ãã
ã¾ããGHE ã® Releases æ©è½ãå©ç¨ãã¦ãgbp ã使ãã git tag ãã release ãä½æãææãã¡ã¤ã«ãæ·»ä»ãããã¨ããäºããã¦ãã¾ãã
ã¤ãæè¿ã¾ã§ãããã¯æåã§ãã£ã¦ããã®ã§ãããã¢ãããã¼ãããææãã¡ã¤ã«æ°ã¯ 1 ã¤ã§ã¯ããã¾ãã (.dsc, .deb, .changes, .orig.tar.{gz,xz} ãã¡ã¤ã«)ã
ãã¡ã¤ã«åè¦åãç©ã«ãã£ã¦ç°ãªã (orig ãã¡ã¤ã«ã®å½åè¦å㯠deb ãªã©ã¨ã¯å¥) ã®ã§ããã¼ã¸ã§ã³ãéããäºã«å¢ãã¦ãããã¡ã¤ã«ãããã©ã®ãã¡ã¤ã«ãã¢ãããã¼ããããã調ã¹ã¦äººéã鏿ããã®ã¯åå«ã§ããã
ãã®ããããã«ãç¨ vagrant ç°å¢ã« GHE, aptly ã¸ã®ã¢ãããã¼ããèªååããã³ãã³ãã追å ãã¦å¿ã®å¹³ç©ãä¿ã¡ã¾ããããããå ¬éå¯è½ãªç¶æ ã«æ¹å¤ãããã®ããã¡ãã§ããåèã«ãªãã¨å¹¸ãã§ãã
https://github.com/sorah/sandbox/blob/master/misc/deb-build/bin/deb-release
ã¾ã¨ã
æ¬è¨äºã§ã¯ã¯ãã¯ãããã§ã® deb ããã±ã¼ã¸ãã«ãã apt ãªãã¸ããªã®ç®¡çã«ã¤ãã¦è§£èª¬ãã¾ããã