From db34cb3a56d051a3ba454e472356bab57a53b031 Mon Sep 17 00:00:00 2001 From: palewire Date: Fri, 6 Jun 2014 16:33:18 -0700 Subject: [PATCH] Updated documents and setup.py to 0.5.0 --- docs/_build/doctrees/changelog.doctree | Bin 10098 -> 13185 bytes docs/_build/doctrees/environment.pickle | Bin 23199 -> 25362 bytes docs/_build/doctrees/gettingstarted.doctree | Bin 29112 -> 25718 bytes .../doctrees/managementcommands.doctree | Bin 15601 -> 16013 bytes .../_build/doctrees/settingsvariables.doctree | Bin 13593 -> 18591 bytes docs/_build/html/_sources/changelog.txt | 6 ++ docs/_build/html/_sources/gettingstarted.txt | 15 +--- .../html/_sources/managementcommands.txt | 10 ++- .../html/_sources/settingsvariables.txt | 62 ++++++++++++--- docs/_build/html/changelog.html | 43 ++++++----- docs/_build/html/genindex.html | 35 ++++++++- docs/_build/html/gettingstarted.html | 10 +-- docs/_build/html/index.html | 18 +++-- docs/_build/html/managementcommands.html | 14 +++- docs/_build/html/objects.inv | Bin 629 -> 669 bytes docs/_build/html/searchindex.js | 2 +- docs/_build/html/settingsvariables.html | 71 +++++++++++++++--- docs/changelog.rst | 1 + docs/gettingstarted.rst | 15 +--- docs/managementcommands.rst | 2 +- docs/settingsvariables.rst | 28 ++++++- setup.py | 2 +- 22 files changed, 245 insertions(+), 89 deletions(-) diff --git a/docs/_build/doctrees/changelog.doctree b/docs/_build/doctrees/changelog.doctree index ad421ea03e9570bb20bf3d06eb7d083cb62be9e5..a5f4136d5bf65ed29f15f693939db3e80d0946b9 100644 GIT binary patch literal 13185 zcmdU0378yJ5l%w(Om=fXfRKbt5{_A5cQzM<0D&aSxv&IC!=f&eo|)e5p3F?otM1Nb z(WfAyi6VI7t*EG|c;NxwsHk}2t$5*$ii$U0sDD)-+dH$%2ZA5^eaUopy?S-Ms(RJ0 zYpywOLlm{tXZ?1 zn&UfWB|}!lGCfPR?i=m^xM-WTF{|Q^skWivRsc@3s%EvM+V>5&;HkfFZC}6Y7>XX& z;h{5r*wD9D&6|AaSMw(y)~T-eVI$^r#}DiAuwW=K7I{Iz^Bo_mxV3!A8uipdtri*G zb(1_RU$s2X9E1FeN7R8vcQGJ>j(N`wsA#E!hK$aVRdmVZ*=os=#9;=)NV66CXH~I-EOpm7FcF?7za3|6V!6M zlW&e!E9`lEvtAu;&*z&BYNg%9H|tc!?&h1dYL&f!Z#Jscfze*Hok|Ikt2HC)h{l!k ztRjowsgA_L9i`RLSU57rBOSBGETa|1fZD3Zo@2B|@M9XukX5Ik<`m%#o$A=(ZCJFN z?N+T^!K&r91DY$Dz6n>^opb8|mC9Ifx3^&KwrC=U*=`O#Nh$~-zTRK_*kR0TCK|(?WLg3c%E86Vzd=2rsv^)!-&ydFpIm1 zS9s$Ho5oYekEj#u!%U+k#NRZcPPE(1z?fTcYL?nOI0wWcw^k?Fb8J}e>m3l`xv{|&KWI&t+v{bbz9b6KVokfu{Vy`$B)>XMgkiw z?TFF#Mm{^Oy$G&>2I8l~K4)lkCfM4{XiHEqgM!UVd6rgZ18mHi(mDB1yvXN4NsqRItRC`PIzbS|_9Qj;%=Vz zSYjqLBoa4jTL>x@%gjjLlrFSJ&7$v;Rm%9bmD#nc9u$CX@7k3y zYb87fwMj_TtRZc1KFk!|DxOMS#&8`HOI)T+nuTe9W1Rz+1AY9vY0`FqsEv4hMQfnmHpkxV(~a_ zH>j`5SjOF2RoFb!jDwjK6dFaVz_esmI#m^d)wFVX_B>EeS(D|dH_HQhERTXXZI}?5 zS`ozXwDLhn9K8l_LY%cloK%2d2)$2MN$mmtxK?|aF*~$CLt$+eYC@~ad8|u>N-Zgi z_2e1FdJ35EE|yGC8jPN*)zf0ZCPXkhlxH1te&jxK1!!KW)zewP|BOVaDOQG)1bg^Z zT0Miw?Gt?q0rrW+p�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 diff --git a/docs/_build/doctrees/environment.pickle b/docs/_build/doctrees/environment.pickle index 20f2322c741c8cf44f3311f857e03f41c4621ada..03057f887ad03bd0fbb3d53009f3ebae8eb129bd 100644 GIT binary patch literal 25362 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 V7>|2abC9woCu@Dt2_1dW{eN<{|DON= diff --git a/docs/_build/doctrees/gettingstarted.doctree b/docs/_build/doctrees/gettingstarted.doctree index 33a01f1ff5e06cd123f920c12a49a1db696003a4..f1a3919675c9d95ad4cd700122f421a9e2c7e05b 100644 GIT binary patch literal 25718 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 literal 29112 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 Tp5mZk^C^!XK8@g6Nyq;WeZol` diff --git a/docs/_build/doctrees/managementcommands.doctree b/docs/_build/doctrees/managementcommands.doctree index 1da4b6dafade248343538d11c292271a91995c16..a259c51153677f89cebfe4c41731279dbbe53a7d 100644 GIT binary patch delta 5327 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 delta 5066 zcma)Ad0-Uf6;IGWHiRS`O9Dc&gb>z+1i}?U60lw%(RkFAtr|D8yOYc;d+}xlh<1&5 zf(jm=_kAl~c%N;Rw)XVsMQdAId)iiOt+khJt^K_>JIjXphkxWd-uu1dd+#?h-)3k2 z{gFp{8q1GTy^Wo90mm{k!-2s;YiT^47#vh~2*&h0k=i@WKk8Z-%>!fsh?o_?NgiZF zfOw9$+3dOrmmvl_c4C^*ZoGm}p$N8R?Lcl3pB$%`w*Y8|#d5NDtFT|vit=r$X<QhzL;I0`U9;q*@bbqF&pXM!gaV%P`3@xMQT@IX6<%tHDksA z?Z6_LS9=%Mt5*ZQ#TN_g9yq%Mt2|vQdw-JgI3-6Yc-_rjccQxWYR??s_+6|CsVf5Y zCtrpo>U24#JY9hi9h8c)OH>qx+=BpDie9<;$OKe3(38>9`s%T99^*Jyd2t4>1|H2Q zfzve*A>Os(?>g6?#N!AOkK6JLLS8SB8%iK0WqO_i-RK3Xy9p?x1x7cE(Jg9S^BE1d zvM`urKZPLj}<<;!D&1YaJs`&*>dHNzok5n9EKdHVX`WIY%fh9T3Hkec; zfrV5r3aVkiXc{oo%hRgOVh($uDUwXg>B|ry{#P*N>8oPtlA0rqA=yg;`C192q_#q` zuk(p#6r+6uP+{6P#qwJ!-+Fq(w^Yv}#`6>j+ z?lnw#`VL0sTEPW-J&FR)@xh`yFKH!|yTW=?@q^mU4joEPY$_@3{H{SXvTQSo%jnxh$OtqP{lG zXBKmK7s>;O`X`8x!h4wV^k*@4iONC85cPe5{G|j^QdlAC2Yli=#b|#8REYXFvHZJh z8950wtlywz0`fr(xZQF{W3~i_%#_|9*kGno_I~t#6|)MeMoasc02up zeFu}AQz_s7$r-3uLO$Pz5-k*2#nE~{T{QX^j8Ke!W6INi#Dm}U@G0{}N_<#+KlrZk zk@)#0sBgLM+F-mXQNdMzE=nGrlbD_a!+8o{|3qF|1U3IvUl6MYGF&>Ya||wVmGcPz5!< z;cFH(Euo26Bgty9n1s{ z530wH^#b$t6>zgu$C8G|LhZ*?p-7oynKF})@d|MqERnAmHhWF$hY;BwFV0VJeajVj zy?Sf;oY4~@=?_mD%4Y3M*4Cq>4_S1QfIo{dTnPbR%`G}vgkcueStIFKHWl@(EII|^ z0ouUI$(mzlJ&o%xBHGWfcG_6e?n1;<1#uc9d~ws34~Rvli*x`ZA2D1VcZl?i9Zi`T zoz75uSIlUQ3S^KCk!mhWwoasB+aInp6H&|7$fnqpo&M3dAQOz7^#5Nqnp z3@*8P+>XLzhv=L*T zQj85xQCD?N?MP$YS00{<2wB2?TF=2s&%{mCHv?UNxSEFI(U@lGQHN5LRj+r>nV*9u z?6XOW>oG09kv3t!JzSI1bDY19lEh(8DzMT&YKfOgc9y-wH=}qM=#`5u&O=jGtb9pn#LQgVII=XczOKCb!<-6+J&W8rvMH|e_P`04D078_wW{XA{ zJl$Xb=~|jDRC~K-)m_BCDp9z$d5f1NXuEp1tG;yyTU3O{7cRFKi`N=AdUUgCnRb@w z5*1oCtNc>6c2&#Voj~jeAEakC(=GwmCY*FGnzM8#fi%)7x=ig_RX=*UD5r4hmJ_p0 zJEa$ryh1!ow6YGxb*A%1x>CS3-2RfLD%XG3v2%_cMWeF`9Ez@jI9%b_Lv1VRYF<|r zTrp{`aXp!%cyX85T+2A0*tA*ZFkQ#{TKuN7v=|aAoc?+-_TkaVAq{gY-M}!WpB9U5 zF%z~yH$u`^8Lq*DmZkkU-Ne9(@X1Fbr<-|QH6iL|MYpJjx=$>>Rejv;KjAj0wugPg zIv!z-D|`{EOFmrC@^n|n7j z{8q}?+SaIH4jU=_*>n$!4^CxKv3u2nJEsiJ(pwdf(Wrg!$VhoRaYo=Dmj6ol)Upgk(r>o0#qUD(?=`Y6mlYKmO%ct21PXXKTXxex=WiwH{y{9A3CnW5X81a2t$Dg~W)Df#g Zfu|uEpl2|K$8*P#;j;pL4x1G>!i&h&2gWUg1;lk9@6 zprVP23MzP@q9R@d74Hi%h!>uyc;c;y;)VBxzi-v+p6S_{U82J0!ymu>B-7om>eZ{O ztEykW*H=!<=E~Ws?-so7QaNXP3BD}aB|o92c3!2X1!{WIY%f_w+aIggo|+M;naT9x zDO0A5T<%sf*>cGTaz+DZ^$El(T9=nghPTdGJygx^vHjI*_I`nQw(q;85zp9bk!uYV zK(MVZJr~r5tUWf3W%j!EK2NpxrQ5l!>K1aDoJ%Uvm!4Bc;*r&yzVre#S^K<<9wfs| zs=0mXC1JB?XUX<6RyJ#UUS^Lyrsnmf7lpujYsSr~`I>&t9=56l?ov<-`l{w4uR7%U zt`Gf`OBp~twJ=bN%=s0IJUdeaU26m~EFMrtnDet$BG!dhu2R-kNA{VCoSiL`#l6*% zK69~E^~=NMvR^9ucErkb;vb2sOyCk5*0q%+H0%o28my6w`sJ;s@BF4UUs z^44`}nblIK&0HL5wX3exWlp;}SL?J(>vXx3Fxy3=U98a+&Kz@2h#>l0>C813K${`u zF45*HXP&u)8?`RGwAQ*fK?!vn{O$Nab->>UgtZov<`i=l)D6X|PG_1qD{MbuJQ=bpR4ut#IB`Oqn7#mZ zPC4bGof@)BsV!(txoU;+Jhg7XoSiLLo`>^O2F$i0 zE4zo-mrflpr?c7D52(|eWtKTp<8K&Hr#o#{)tpgqOSam$Z5oJ$ccnVRndU%?XC}wX z4>v79^0T1Cvjg?iq@(ZB{^mRG9H-Mc-Z{bPa#H3@>83V0V0v@XSvTOEGT@v#;H)2T zHVjl9jO~OYZW%w|E_)O~qDSuQ7Nhh+W9J6yJTT($h-X)atm@EsBCxDALRQ5|sPn=3 z)<9jroTp&DE#=a%J5trRk5R6$lX%8(nT#>GhA}u8S*p7-HaOU=w#CG1uhCW8S+pIk zM4J(b)|Yg8(yJbQNOd7(x+qXjV-^ns9}I167P;X1Hd%#)+6jUC1GS5(aVQ%n5%X;} z^9`Ep02hO04v8@(sNG;M9jHq{(42z7`=N5!cy>6Vy0kikUQ^Ml8<ohkSEDroo*M}`;NA^X9;6*6mesE1RUEf8+HK`>I+MAjoIRRQ zd%#E`P{l}~aAJI%N~e2gB7s?H$kX3WcKN8h7fMh$|o|fWUcXj5qbHWJ~5U zo{Qk;R|%2k*upoF>>{9G5Pmq+~~HOv)$!i=t7!7ROUQkJfFI3C^*s8_LmPlM5RIkr(K zXQi4j_Bl4$90-kl7TnMWY`9?g#;}W;%J9p^kZo|X_q)}rp_c2y+f9PuYg!FFCsOxo zp^N`zxErCl*9GeJY!M#%hDdV=F5{zr7??6ckZVsuy#W&66sR|{#MeUN+TCNEWpwCd z4vABo;!~Uhx;%u^l+-k-jznUOvDGNJdu+o)+V>F)MhpuLKJudBm8?p|wMh`VySo!^ zu~H`AD0_+cC}pp^V);&Y9`{xEIOP-zk^O_R(TtqgSy|BHm)QRmk>i+H0$~j=N|19+(#y)m-t=HjiryZhDqV3J$ox#ax~gu`4?BliL5v5Ce9A;O0O^6!>8SK-9cEi4iWvXtBQ%=iideh4gVV()8qa(o2>f?Bfpb?p+w}#;Gc8u zXo%pB4&BQl>wVtg_GzQDR=B6o*GBq)Eem91)>ztqZBUxux|5~#06D!3<#E)GZD zdjs{g2okX?vG(hej`R(Qwf6<;n=Jf(m_%Z&>mfc28}j%R3$^vwYLu(KVWB3iM_$C` zl0@UdL5UfIgT_YG?i&Y-Rtb?nYKCmNh^w4&W~$y8ws~g{8m?#9qc)z&?OZoBc5gg% zf2)-oOCxoEo9o!kj|uzgJ5cm@1NA-D$YVnivfPLIlB?eP1ND6-%w=6oQ5->k&@3N% zalQLPh&B`GqE+=HaQEXt{UkE>{cr;(<sA~T8y zvV{6MczYmFzu;c{2=X7APCdw@XnUD+;mW2lFuX`e+U_3Qn3 z@CDeS5!+Y4k=W3}MFdF~e5mrJY&GYgpFLVBxLMcVUoT>3p_vEytxS7Fj|#OXTlG6m zGD}&#zZbha9H>7)cIQFn_K%@0)Sr^(4AzhOv-6N0dpPWL9^kHjfn|6;sP4>0=*{Y{ zu)^O0_4mk357*3uN($ZPv1Q`^uKs}@{|wZ>*aA&ZZA0W1^yUo1^}-{8`Zpur2vYIP zfRZ7ZF!0w=97F2wmbjJc+cwG$%s*oO}KmRpzzZO7Qo{{D%9 z{iscfRwYE>(jiJ9Tr1ENcxBSL`G6Cz4V+t?R%O8Q@CK);=mfPr(PgD+;PdLMXgUr7 z%@9fT6X_#0+u<>jW(s^(3?8o$Xtn@iQxepM7H1V#3e?W0bEQ}~K2lFYI^e;R=HM)# zxpJ)^t~c%O&uligZ0p^X>D#oUm*#Q*&OEaa23UR+rTNk&HfC5s)W%rA9eU(>eLTs9 z072?SI0Up<2qp93ILwg9&SeE1At*;`6n<2X^TG86EfLs6&!lvefK~c9czx@~(Q(YB zkJ6Z2Xp95VlRymR1|5xKbHzc&pgEwWGNM>9&McQ6v`k=!TYb=SpgTdH53w4ARtOc8 zA+!=_0j-kj*48rsgVva}(0W{z(6Q2G{Q#}TNuK3uRi2y}`O6yajtYgIjFW(l!!JTf zJ|xaugv7a8q2mSI>>4$49o(U{Ya{`JYjole&#a!3$GvnYUJyqXdpQ<;`bbPvPAgnD(cV?Hl_VpF_(=r8-n_J!kwQsaw+1cKifez~o)+sS8tg zuq2BeDx05C>11KLS;!M2+dV}PdStR?yi~LfK&bl^90EF3Fq17YF)}Nu`N@>?DdwEB zc7oOe0m?j0h;0aooeX9E$I4^DPGuCTTn{zeIINaF0gk^> z>Mn30;BbM42~@fWjgaDLI0Up)DCls+1B&Hir8MS>sb4U6Y0PNGIJ|Wl>M=3}^WqSb z^HY>=4jn}9J#>(>FVE-51P;H&I&{$XJ0N!~6-$M*TWB0!g|s#b3(OnDJ?wGm5_Euo zm*No6(`87l3Km2nb2yhl&k&S>I!g2sMW)8-G6BR4K^e3-$4a#_$fxtAS~)pl)shZe ztqkETpsZXcrBr8~ZQ8P>x4%ELt@o15)*i|+h0Z)P5wBNl=@c6^tXFEI40DH`35bpW z2;m(Z0&;~^G9Qk_Oo{wbvE&71k4BM-CB}(VECqp0Sg{lZtkNCuh>0tf2AR`GYuu=2 zX#i3Q1i5M{okRf`97R4sgnS1rC!;i{#Ivw-%>^+ZBoLf>bWg7g{gS zw9>mdiWqpMC-X5JI1K$h+6c4SZhOe+$1JLgH~j`)`seU!#at%B<8+MIv-xlJuOnjwde#@Jo#uH(5ukm7!qt>&8PDu*q#~j_!{ZJ!S=N{ z3+P6@&Rap4 zgYVmLY!Q6lj^=>gA){*p#~7F3`%Zx!cJRFw=m@@ihzH+;LWP6xZ8!_)U2;8{Ro@K^ zSd|%!2jKTeM+D&8agt~0S_R-ukvF}UyK?}3A5H>#KYlp?hs2qecmV!@fSX;WM(%^$ zVKSHb5D?%pAI2e|j|e%fRvteJ1M>LzQ9=1w3?(M21mTYhY!Ytn0D=VJPYA6$HLb@r z(tVPL?94Os@gRIihHhr{oX8G$afin@2!9GgK=pUy5YVTEp=3VfmlYIgKMKO15ya1G z#B^sEgqv=$S|AP=R)z66cAH2%{+!S`ym-7h(#q%230nD&#-@AF337e`hk(8)!)g~} zff_>dmjva@b(F@?{1pMjj7DEYi?dQf^SyjJM?&*?5xZZL4jh`lju}qxYx6urNzk@?S-xVUsd^iR(QV+x5 z6O{WkiiF`94-$sIFR%&2@DBv6(#K91hGUG$tU$DUM86Ug@qY*+9CCkzV~ddcV>Ac! z6Z|3)jb~Cq?oS1F*dh04Ku5^sLpS}$CgI^PK#=hISE2PcO)Gr^eB;83Z(yDbl`1b3 zEn=ld*5I|76<*4K89S+b^$HJ0!!(?{4KsMPLpf*gJ4Gyha(ST~&=ZV6wyL@)hz-Za z+DGzu;Yi8I*{Foam@3Aq%?x!LJ$n7CEFc*iJQo$Tt*7T$?s#PWyKvns<+jLh{}6

d%D|CuG2vo&TKNK<&yR&$8VSAQQz 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 WU5cxG0K*SMXd7O9+Ky{=B=tXH8Ln0U diff --git a/docs/_build/html/_sources/changelog.txt b/docs/_build/html/_sources/changelog.txt index 85004ab..0edb560 100644 --- a/docs/_build/html/_sources/changelog.txt +++ b/docs/_build/html/_sources/changelog.txt @@ -1,6 +1,12 @@ Changelog ========= +0.5.0 +----- +* Refactored the ``publish`` and ``unpublish`` management commands to use boto instead of s3cmd. +* ``build`` and ``publish`` management commands use file mimetypes instead of a regex on the filename to decide if a file will be gzipped. +* ``publish`` management command includes --force and --dry-run uploads to force an upload of all file, regardless of changes, and to print output without uploading files, respectively. + 0.4.2 ----- diff --git a/docs/_build/html/_sources/gettingstarted.txt b/docs/_build/html/_sources/gettingstarted.txt index 583304f..210bc50 100644 --- a/docs/_build/html/_sources/gettingstarted.txt +++ b/docs/_build/html/_sources/gettingstarted.txt @@ -87,19 +87,12 @@ To pub­lish the site on Amazon S3, all that’s ne­ces­sary yet is to cre­at AWS_BUCK­ET_­NAME = 'your-buck­et' -Next, in­stall `s3cmd `_, a util­ity we’ll use to move files back and forth between your desktop and S3. In Ubuntu, that’s as simple as: +While you're in there, you also need to set your credentials. -.. code-block:: bash - - $ sudo apt-get install s3cmd - -If you’re us­ing Mac or Win­dows, you’ll need to down­load `this file `_ and fol­low the in­stall­a­tion in­struc­tions you find there. - -Once it’s in­stalled, we need to con­fig­ure s3cmd with your Amazon lo­gin cre­den­tials. Go to Amazon’s `se­cur­ity cre­den­tials page `_ and get your ac­cess key and secret ac­cess key. Then, from your ter­min­al, run: - -.. code-block:: bash +.. code-block:: python - $ s3cmd --configure + AWS_ACCESS_KEY_ID = 'your-key' + AWS_SECRET_ACCESS_KEY = 'your-secret-key' Fi­nally, now that everything is set up, pub­lish­ing your files to S3 is as simple as: diff --git a/docs/_build/html/_sources/managementcommands.txt b/docs/_build/html/_sources/managementcommands.txt index 265e8bc..032162c 100644 --- a/docs/_build/html/_sources/managementcommands.txt +++ b/docs/_build/html/_sources/managementcommands.txt @@ -38,7 +38,7 @@ in the build directory. publish ------- -Syncs the build directory with your Amazon S3 bucket using ``s3cmd``. +Syncs the build directory with your Amazon S3 bucket. .. cmdoption:: --aws-bucket-name @@ -48,9 +48,13 @@ Syncs the build directory with your Amazon S3 bucket using ``s3cmd``. Specify the path of the build directory. Will use settings.BUILD_DIR by default. -.. cmdoption:: --config +.. cmdoption:: --force - Specify the path of an s3cmd configuration file. Will use ``~/.s3cmd`` by default. + Force a re-upload of all files in the build directory to the AWS bucket. + +.. cmdoption:: --dry-run + + Provide output of what the command would perform, but without changing anything. .. code-block:: bash diff --git a/docs/_build/html/_sources/settingsvariables.txt b/docs/_build/html/_sources/settingsvariables.txt index 9a0305c..67f7a6f 100644 --- a/docs/_build/html/_sources/settingsvariables.txt +++ b/docs/_build/html/_sources/settingsvariables.txt @@ -45,8 +45,30 @@ AWS_BUCKET_NAME AWS_BUCK­ET_­NAME = 'your-buck­et' +AWS_ACCESS_KEY_ID +----------------- + +.. envvar:: AWS_ACCESS_KEY_ID + + A part of your secret Amazon Web Services credentials. Necessary to upload files to S3. + +.. code-block:: python + + AWS_ACCESS_KEY_ID = 'your-key' + +AWS_SECRET_ACCESS_KEY +--------------------- + +.. envvar:: AWS_SECRET_ACCESS_KEY + + A part of your secret Amazon Web Services credentials. Necessary to upload files to S3. + +.. code-block:: python + + AWS_SECRET_ACCESS_KEY = 'your-secret-key' + BAKERY_GZIP ---------------- +----------- .. envvar:: BAKERY_GZIP @@ -57,18 +79,40 @@ BAKERY_GZIP BAKERY_GZIP = True -GZIP_FILE_MATCH ---------------- +GZIP_CONTENT_TYPES +------------------ -.. envvar:: GZIP_FILE_MATCH +.. envvar:: GZIP_CONTENT_TYPES - An uncompiled regular expression used to determine which files to have the - 'Content-Encoding: gzip' metadata header added when syncing to Amazon S3. - Defaults to include all .html, .xml, .css, .js and .json files. + A list of file mime types used to determine which files to add the + 'Content-Encoding: gzip' metadata header when syncing to Amazon S3. + Defaults to include all 'text/css', 'text/html', 'application/javascript', + 'application/x-javascript', 'application/json' and 'application/xml' + files. Only matters if you have set ``BAKERY_GZIP`` to ``True``. .. code-block:: python - # defaults to all .html, .xml, .css, .js and .json files - GZIP_FILE_MATCH = '(\.html|\.xml|\.css|\.js|\.json)$' + # defaults to 'text/css', 'text/html', 'application/javascript', + # 'application/x-javascript', 'application/json' and 'application/xml' + # files. + GZIP_CONTENT_TYPES = ( + 'text/css', + 'text/html', + 'application/javascript', + 'application/x-javascript', + 'application/json', + 'application/xml' + ) + +DEFAULT_ACL +--------------- +.. envvar:: DEFAULT_ACL + + Set the access control level of the files uploaded. Defaults to 'public-read' + +.. code-block:: python + + # defaults to 'public-read', + DEFAULT_ACL = 'public-read' diff --git a/docs/_build/html/changelog.html b/docs/_build/html/changelog.html index 65ec39d..4f29d04 100644 --- a/docs/_build/html/changelog.html +++ b/docs/_build/html/changelog.html @@ -52,26 +52,34 @@

Navigation

Changelog

-

0.4.2

+

0.5.0

    -
  • Added a get_content method to all of the buildable views to make it easier to build pages that don’t require a template, like JSON outputs
  • +
  • Refactored the publish and unpublish management commands to use boto instead of s3cmd.
  • +
  • build and publish management commands use file mimetypes instead of a regex on the filename to decide if a file will be gzipped.
  • +
  • publish management command includes –force and –dry-run uploads to force an upload of all file, regardless of changes, and to print output without uploading files, respectively.
-

0.4.1

+

0.4.2

    -
  • Bug fix with calculating Python version in the views in v0.4.0
  • +
  • Added a get_content method to all of the buildable views to make it easier to build pages that don’t require a template, like JSON outputs
-

0.4.0

+

0.4.1

+
    +
  • Bug fix with calculating Python version in the views in v0.4.0
  • +
+
+
+

0.4.0

  • Added optional gzip support to build routine for Amazon S3 publishing (via @emamd)
  • Mixin buildable view with common methods
-
-

0.3.0

+
+

0.3.0

-
-

0.2.0

+
+

0.2.0

  • Numerous bug fixes
-
-

0.1.0

+
+

0.1.0

@@ -105,12 +113,13 @@

0.1.0

Table Of Contents

diff --git a/docs/_build/html/genindex.html b/docs/_build/html/genindex.html index cef87b5..b8599e8 100644 --- a/docs/_build/html/genindex.html +++ b/docs/_build/html/genindex.html @@ -86,18 +86,29 @@

Symbols

- --config <path> + --dry-run
-
command line option +
command line option
+
+ --force +
+ +
+ +
command line option +
+ +
+
--skip-media
@@ -236,7 +247,11 @@

C

-
--config <path> +
--dry-run +
+ + +
--force
@@ -271,10 +286,18 @@

E

+
AWS_ACCESS_KEY_ID +
+ +
AWS_BUCKET_NAME
+
AWS_SECRET_ACCESS_KEY +
+ +
BAKERY_GZIP
@@ -287,7 +310,11 @@

E

-
GZIP_FILE_MATCH +
DEFAULT_ACL +
+ + +
GZIP_CONTENT_TYPES
diff --git a/docs/_build/html/gettingstarted.html b/docs/_build/html/gettingstarted.html index 205a84d..b8a2b70 100644 --- a/docs/_build/html/gettingstarted.html +++ b/docs/_build/html/gettingstarted.html @@ -117,13 +117,9 @@

Execution
AWS_BUCK­ET_­NAME = 'your-buck­et'
 

-

Next, in­stall s3cmd, a util­ity we’ll use to move files back and forth between your desktop and S3. In Ubuntu, that’s as simple as:

-
$ sudo apt-get install s3cmd
-
-
-

If you’re us­ing Mac or Win­dows, you’ll need to down­load this file and fol­low the in­stall­a­tion in­struc­tions you find there.

-

Once it’s in­stalled, we need to con­fig­ure s3cmd with your Amazon lo­gin cre­den­tials. Go to Amazon’s se­cur­ity cre­den­tials page and get your ac­cess key and secret ac­cess key. Then, from your ter­min­al, run:

-
$ s3cmd --configure
+

While you’re in there, you also need to set your credentials.

+
AWS_ACCESS_KEY_ID = 'your-key'
+AWS_SECRET_ACCESS_KEY = 'your-secret-key'
 

Fi­nally, now that everything is set up, pub­lish­ing your files to S3 is as simple as:

diff --git a/docs/_build/html/index.html b/docs/_build/html/index.html index cb3628a..7a349ff 100644 --- a/docs/_build/html/index.html +++ b/docs/_build/html/index.html @@ -92,8 +92,11 @@

DocumentationBUILD_DIR
  • BAKERY_VIEWS
  • AWS_BUCKET_NAME
  • +
  • AWS_ACCESS_KEY_ID
  • +
  • AWS_SECRET_ACCESS_KEY
  • BAKERY_GZIP
  • -
  • GZIP_FILE_MATCH
  • +
  • GZIP_CONTENT_TYPES
  • +
  • DEFAULT_ACL
  • Management commands
      @@ -105,12 +108,13 @@

      DocumentationChangelog
    • Credits
    • diff --git a/docs/_build/html/managementcommands.html b/docs/_build/html/managementcommands.html index 87228e6..a753f0f 100644 --- a/docs/_build/html/managementcommands.html +++ b/docs/_build/html/managementcommands.html @@ -88,7 +88,7 @@

      buildserver

      publish

      -

      Syncs the build directory with your Amazon S3 bucket using s3cmd.

      +

      Syncs the build directory with your Amazon S3 bucket.

      --aws-bucket-name <name>
      @@ -102,9 +102,15 @@

      publish -
      ---config <path>
      -

      Specify the path of an s3cmd configuration file. Will use ~/.s3cmd by default.

      +
      +--force
      +

      Force a re-upload of all files in the build directory to the AWS bucket.

      +

      + +
      +
      +--dry-run
      +

      Provide output of what the command would perform, but without changing anything.

      $ python manage.py publish
      diff --git a/docs/_build/html/objects.inv b/docs/_build/html/objects.inv
      index 4ae6c073f1e91e30bb80ac2b097ba7651c2945fe..36e309dc7991a995fda2474ba25a9600caf952f1 100644
      GIT binary patch
      delta 539
      zcmV+$0_6Sm1f2ztjei#_&{J=T;}u5IEQp;J=|zw&F3~F4o+PKu-%qma%-vF;l6#cI
      z_xK(~G7RN2twRok;y@~LTh)qIWpEvET;e@&C{_=C?kka;f4NLi2}TkM4Up=lwMf;BDL<~8B|ze?vsBWe}A8Dml>Ky%N7mg@rZ>+
      zOHhiId#O(p=L|ZqeGd(E`j~216sIX##5rPM36OOTuS#IYUU(xw
      zbqCb0MprL`V(dY6nrf^LUY7c%@-by8NUI06dEPbiF2}&lxU!r(d>qY%PVZ~$Cuh{O
      z{PWi)!0nfZc6>+9f9u?QyKzo@F5GZmIu*^fW!Ko_cDC2o|5v)vn}1{}x*Z|Fbb@O|
      d{>t#}9~9HMjbI+@>0-u@tP-E0`vV{>Mu%W|2%G=_
      
      delta 498
      zcmVCgrcg)U8Z
      z5-gX{gZ(>k(7SB2rt9oB80d4}XX(Q(6uW%b(be76b-JhDmfJKGZgtYn*(Rmi<^Jkx
      zC|p%sXb#T~Cs__MA?Hc`LWT#ANVXMkB_x@>T9lwCK*Md1@Sz4+Qyg9g`nx`C=L2rK
      z#x7R2?Y7P?8-K_%Hw9fSmkRJu@lH=Z1SlKOt8on&9yY?@y?`eVroUTgUOE@1S&m)c
      z6v-Np3F&BB?TM=V7Ziasr&?UK7RwMDk+%r%f$u@pk|B)b^tnTsMtVv>Y6GGT`CnSX
      z3h)C#y$kS+4GWx$R|Q~ypl-L#bko;VGdx5|8U`#zlxwHpt{&?0yeZ~Qj**&qww$JY
      z9?itm58lR=GwbIJEEZTuW=yDrAmFGM@muHO(?xLNlUd_^8Dx|n#eSIQ?d+&_|6|?k
      o%|FwMelIj&Cn404zh%VEkKIgdBO_MQWXAWbkC>142Po3+A|rAWS_BUCKET_NAME
      +

      AWS_ACCESS_KEY_ID

      +
      +
      +AWS_ACCESS_KEY_ID
      +

      A part of your secret Amazon Web Services credentials. Necessary to upload files to S3.

      +
      + +
      AWS_ACCESS_KEY_ID = 'your-key'
      +
      +
      +
      +
      +

      AWS_SECRET_ACCESS_KEY

      +
      +
      +AWS_SECRET_ACCESS_KEY
      +

      A part of your secret Amazon Web Services credentials. Necessary to upload files to S3.

      +
      + +
      AWS_SECRET_ACCESS_KEY = 'your-secret-key'
      +
      +
      +

      BAKERY_GZIP

      @@ -110,19 +134,43 @@

      BAKERY_GZIP -

      GZIP_FILE_MATCH

      +
      +

      GZIP_CONTENT_TYPES

      -
      -GZIP_FILE_MATCH
      -

      An uncompiled regular expression used to determine which files to have the -‘Content-Encoding: gzip’ metadata header added when syncing to Amazon S3. -Defaults to include all .html, .xml, .css, .js and .json files.

      +
      +GZIP_CONTENT_TYPES
      +

      A list of file mime types used to determine which files to add the +‘Content-Encoding: gzip’ metadata header when syncing to Amazon S3. +Defaults to include all ‘text/css’, ‘text/html’, ‘application/javascript’, +‘application/x-javascript’, ‘application/json’ and ‘application/xml’ +files.

      Only matters if you have set BAKERY_GZIP to True.

      -
      # defaults to all .html, .xml, .css, .js and .json files
      -GZIP_FILE_MATCH = '(\.html|\.xml|\.css|\.js|\.json)$'
      +
      # defaults to 'text/css', 'text/html', 'application/javascript',
      +# 'application/x-javascript', 'application/json' and 'application/xml'
      +# files.
      +GZIP_CONTENT_TYPES = (
      +    'text/css',
      +    'text/html',
      +    'application/javascript',
      +    'application/x-javascript',
      +    'application/json',
      +    'application/xml'
      +)
      +
      +
      +
      +
      +

      DEFAULT_ACL

      +
      +
      +DEFAULT_ACL
      +

      Set the access control level of the files uploaded. Defaults to ‘public-read’

      +
      + +
      # defaults to 'public-read',
      +DEFAULT_ACL = 'public-read'
       
      @@ -140,8 +188,11 @@

      Table Of Contents

    • BUILD_DIR
    • BAKERY_VIEWS
    • AWS_BUCKET_NAME
    • +
    • AWS_ACCESS_KEY_ID
    • +
    • AWS_SECRET_ACCESS_KEY
    • BAKERY_GZIP
    • -
    • GZIP_FILE_MATCH
    • +
    • GZIP_CONTENT_TYPES
    • +
    • DEFAULT_ACL
  • diff --git a/docs/changelog.rst b/docs/changelog.rst index 0edb560..8c3cb54 100644 --- a/docs/changelog.rst +++ b/docs/changelog.rst @@ -6,6 +6,7 @@ Changelog * Refactored the ``publish`` and ``unpublish`` management commands to use boto instead of s3cmd. * ``build`` and ``publish`` management commands use file mimetypes instead of a regex on the filename to decide if a file will be gzipped. * ``publish`` management command includes --force and --dry-run uploads to force an upload of all file, regardless of changes, and to print output without uploading files, respectively. +* ``publish`` management command now pools uploads to increase speed 0.4.2 ----- diff --git a/docs/gettingstarted.rst b/docs/gettingstarted.rst index 583304f..210bc50 100644 --- a/docs/gettingstarted.rst +++ b/docs/gettingstarted.rst @@ -87,19 +87,12 @@ To pub­lish the site on Amazon S3, all that’s ne­ces­sary yet is to cre­at AWS_BUCK­ET_­NAME = 'your-buck­et' -Next, in­stall `s3cmd `_, a util­ity we’ll use to move files back and forth between your desktop and S3. In Ubuntu, that’s as simple as: +While you're in there, you also need to set your credentials. -.. code-block:: bash - - $ sudo apt-get install s3cmd - -If you’re us­ing Mac or Win­dows, you’ll need to down­load `this file `_ and fol­low the in­stall­a­tion in­struc­tions you find there. - -Once it’s in­stalled, we need to con­fig­ure s3cmd with your Amazon lo­gin cre­den­tials. Go to Amazon’s `se­cur­ity cre­den­tials page `_ and get your ac­cess key and secret ac­cess key. Then, from your ter­min­al, run: - -.. code-block:: bash +.. code-block:: python - $ s3cmd --configure + AWS_ACCESS_KEY_ID = 'your-key' + AWS_SECRET_ACCESS_KEY = 'your-secret-key' Fi­nally, now that everything is set up, pub­lish­ing your files to S3 is as simple as: diff --git a/docs/managementcommands.rst b/docs/managementcommands.rst index bf3f9a9..032162c 100644 --- a/docs/managementcommands.rst +++ b/docs/managementcommands.rst @@ -38,7 +38,7 @@ in the build directory. publish ------- -Syncs the build directory with your Amazon S3 bucket using ``s3cmd``. +Syncs the build directory with your Amazon S3 bucket. .. cmdoption:: --aws-bucket-name diff --git a/docs/settingsvariables.rst b/docs/settingsvariables.rst index 4e3718c..67f7a6f 100644 --- a/docs/settingsvariables.rst +++ b/docs/settingsvariables.rst @@ -45,8 +45,30 @@ AWS_BUCKET_NAME AWS_BUCK­ET_­NAME = 'your-buck­et' +AWS_ACCESS_KEY_ID +----------------- + +.. envvar:: AWS_ACCESS_KEY_ID + + A part of your secret Amazon Web Services credentials. Necessary to upload files to S3. + +.. code-block:: python + + AWS_ACCESS_KEY_ID = 'your-key' + +AWS_SECRET_ACCESS_KEY +--------------------- + +.. envvar:: AWS_SECRET_ACCESS_KEY + + A part of your secret Amazon Web Services credentials. Necessary to upload files to S3. + +.. code-block:: python + + AWS_SECRET_ACCESS_KEY = 'your-secret-key' + BAKERY_GZIP ---------------- +----------- .. envvar:: BAKERY_GZIP @@ -58,7 +80,7 @@ BAKERY_GZIP BAKERY_GZIP = True GZIP_CONTENT_TYPES ---------------- +------------------ .. envvar:: GZIP_CONTENT_TYPES @@ -93,4 +115,4 @@ DEFAULT_ACL .. code-block:: python # defaults to 'public-read', - DEFAULT_ACL = 'public-read' \ No newline at end of file + DEFAULT_ACL = 'public-read' diff --git a/setup.py b/setup.py index dcd6b10..0ed45e5 100644 --- a/setup.py +++ b/setup.py @@ -75,7 +75,7 @@ def fullsplit(path, result=None): setup( name='django-bakery', - version='0.4.2', + version='0.5.0', description='A set of helpers for baking your Django site out as flat files', author='The Los Angeles Times Data Desk', author_email='datadesk@latimes.com',