From ebc6be321518695a2b215249051ec44a3bcf7dd4 Mon Sep 17 00:00:00 2001 From: Thibaut Courouble Date: Sun, 28 Feb 2016 15:58:13 -0500 Subject: [PATCH] Finish InfluxData scraper --- assets/images/icons.png | Bin 39035 -> 39680 bytes assets/images/icons@2x.png | Bin 102867 -> 104100 bytes assets/javascripts/news.json | 2 +- .../templates/pages/about_tmpl.coffee | 5 +++ assets/stylesheets/global/_icons.scss | 1 + assets/stylesheets/pages/_base.scss | 1 + lib/docs/filters/influxdata/clean_html.rb | 27 +++++++++++++++ lib/docs/filters/influxdata/entries.rb | 30 ++++++++++++++++ lib/docs/filters/influxdb/clean_html.rb | 18 ---------- lib/docs/filters/influxdb/entries.rb | 19 ----------- lib/docs/scrapers/influxdata.rb | 32 ++++++++++++++++++ lib/docs/scrapers/influxdb.rb | 15 -------- public/icons/docs/influxdata/16.png | Bin 0 -> 623 bytes public/icons/docs/influxdata/16@2x.png | Bin 0 -> 1174 bytes 14 files changed, 97 insertions(+), 53 deletions(-) create mode 100644 lib/docs/filters/influxdata/clean_html.rb create mode 100644 lib/docs/filters/influxdata/entries.rb delete mode 100644 lib/docs/filters/influxdb/clean_html.rb delete mode 100644 lib/docs/filters/influxdb/entries.rb create mode 100644 lib/docs/scrapers/influxdata.rb delete mode 100644 lib/docs/scrapers/influxdb.rb create mode 100644 public/icons/docs/influxdata/16.png create mode 100644 public/icons/docs/influxdata/16@2x.png diff --git a/assets/images/icons.png b/assets/images/icons.png index e7a734d8ecc4b9ba3391e7e2ab1d8c0337e4f9f6..463efc06277d15dfb8e815e9a04de014850a15f7 100644 GIT binary patch delta 10006 zcmV+xC+XPxumXU#0+1sDn#ZvvBXoZsd*=aG)wT5fbrXY%6>AjfBudenL^w!`6zS4A zfTE&cP*D&CEZ9J?P$E)9v0(ue6a+;O>|L>&7&T{Uj+9Oj)l9`JDFAmqF8eed)6 zf1Y{v+H0*XN&IDI&8*E{0>idlfipts$)97E@o##j2|zVTG6Jy)LIQ44H3)y3SO^XC zLf4v{2nVC1E2{O^&#BkYc6+OB?*$yI3Cqc-O?@;*b7(F-!%*J_Z8IDYv}Ig3zrA+D z6B54h%NVcXkmxsl+zy`!V^X~ObPwLttG9ph_C&n#YdM2JPm)SdZ<~Slgw#Y6{H2>3ptRV%4vA_M57)mG~v#v5fHIR z_q3C_zHvJMqqn;94@@EMVi~{hE`z&zqSZn1vqBo!OpoVvc{;t(oHuJ7!tn zOU7?IT^r48&T{#4O!v)VCYjTP0ThO?o0V51bON;wq5i?;0}OMQy)inxg21XD;WMQ{ zL)Q&B*6#IW)TTZf@_{ZP#9uY4xGOkPXj)&&L`7N^(ipdJ$Js}kpFbR#)D4= zapZy$e(E%H_lBN$hheO0Wo^X%IkkjoR&a9)!SsE`V9+=TD01yEx}IFZzGfV~}2Yfo z+~8h9YrdJx^6*SH`uH#J!|oYe_Z2K=rsr4i&8%P%^`UnhOLO>h%?>o~4H9_5))IgO zUW))?LeW967W6YY83Bfem)HHA6x5($Fs?z>!pak-uN z&SiYI5Bszv1>v$m5I#)>;q*>>02H!IXam{-kE9@6HVA*hr>P*Ew)y8nb6xtl4ClG^ zFoD%(o465}dlf1@1QX!bSiJ14kwnKqmBm5_-04w6-%mvbs;KLB`m3WirN=5!SkjskBs>PQST%0=71h8gUOVn#W!*cVG1Re9G_|B zqflXCfzZ-Akl++u{|ry?`i8DXIU&}gj;#WtL(A(&W-M;dw3^VMIeJ0^wW*KBXpZnR z{pNq|aO~xu?A2%1F4v%gwi{D!sU3|xW8f5a+Sony*5Kpw585y8;gjyv$vexE_T&F&A|Mqs|$)MV%cv1|3qr-5U|Wa!uG7&*80{uLUo!YeM}~4Y+Y!6IP?=JDtga z7q>NGSpWz2Zb1O6IIw%YcmTyf)`fj05oCWY^!~jpe7`&(t;-#hLhs8;QS#DKOxE3+$I3Kh=KC6h+q=~Z38?xup0@+OYPbHl*Dd0@E_ak7SdM#rDKCUnifv(0S$_$Iug|E?aN>2=RZHN5GDo zs;Ps6*K07(Lx7&c$b1D#Oqf``QJd zXedTcx6<@XBxS_4WYngHNhv)j7^6Qutu3=PC=mNF^hwK%pz|Zv&f#tO!m%XBU6{Nkvo_3 z+ZH*~XpH92TzaO3LNtFF!SyL?@jq}d@L!I^9~Io)FmKsYT=xMPwW+UZj*z0x{~U(^ zCTC#wYrlE+znS|9HdSJL4|u?2Nsj>nSxWX=pdUwCw}t zZ%M%|xfsUu`);N(O!)|aml}2Fune;%L<>UvwP5WE4uk~an(%)n6{0oaGL>Oo4X=YT zZP>C}?*?Pqy*^c^`wVqLado=SR3{|4$Eo2?M-`iu3rq7pBrG?dyawN`N5OJc229?N z59)#2;P%ruaPLJ4@5g}6+N@FZR;=-!VazyfCNs{!tanc!?g670ObsC8w?|>$sNKOh z&zI)XGeRW-0#AQ91dB5o{|LSoz2L#6lPT*ZqjuAnh;O^|VgBdrp5FVwUQjwKp>`r)U2Ib-I7G zw@%ppI$i7ViLDd1ORizY%yo7BS7TSh&^g;cYhemM+34xH77UlA!4UsMkoHc1?vr9+ zz~q=9){?YWcV^v)!|kPsW62@n0p>U6C?+gnVX@DOXaoFmPcOV~pKkIa89E(aE*o(8*Lvmh|}1aKB6RWj#Q zLF^Mk$a*rvZMMuHc_A}MS-=c;*sxIvJ;Wl@R%@du$q)c&L?+xPDuRhj`u)`vUoc1} zxXAj?-|CB@c8Xw(UQWmw5VYNl#v1M87YhuOeLVEy@^)!gK@kW22?q}B7*RQWqHYvp zMsj~2f(HAll{(!mCeS}xClp_&yY>0%grc$u>d#ywgP2R?J}k97RhW@b!kNGQO1BA7 z>zU(9#rC}hx$Z}%M=vmZeo?4w))pgt8R2(&wF+S?=|69a5pB)Uy}-Bw=54cYyr(rE zUNtfN776-pi+deQaiD?Ts`=W-LIbo9_U?bKr}Y_L$LdFa?*Ha1R(}h=&Ye30zC20i z{*uwBdFh_6t@hD9J{t&8U1uWc@R{`xhC?qQ7HByiO)L<4a78Nh#e zBmkGp0Kf^&(eS-F7y;Pgy`2%-C~S{<4mPIoE&uzoe?g}9Q1;&-Vfg5G8nm>u_-FJE zA3mJEYezZ385(+ooP30;19f7q3mg$GYOxgMPJ<~%9NKf)C9Ez{cb?6H-NnPCv-g z9s(I7RO)d&-PHh0*tVX$l0E{Kkfrq7AdX+&hyral^@IW&K_2}0J2 zuD>WWy85#4w=>Uf*6(|8KGA#DEM*g8li6k_COKBNwq`<8<3!eaai16y1uhPnE3Wmi z))f&DKg?0h>w&e>B=ENny%FXSJCKQy$+l~M9sT_g095e+Ra*20=3Opd%|zsN=aemQGnshPL^C1%R@$vVh++fw;Ih`b8Q#vVp#zM@DUaUup9<6mZZ$C?l`#g<-K%e@&+``E#VrV6F`i;0=5Q&jWw3AOKAfKr>(hRc2}Rug}yu2sye?zgHU&LV#R7YS-3hjBtCG zsig{NZ__vm>_4b7XQh~Ou2OM@lX6FNbAca~>OG}7}iJ{O+U#F)- z>*$;|YSTE4(Hv@v1@I=^l(_P$(Dz!={o*5cFF{yRJdB+V}9}}`E~Y&ufydOe}0164xhWEhGn-4j91YliV`iN!q z89Kkb%g~NMILl$bPHkPf_Gu=f^66}L#SB(mHl6uBn#QC`g$&T%_^|G*6;(ScI}?13 zR)$vLq`2g*v(maMuCnJR0hE)IgP}u*0v!}XM|0ul#o&MT?c1<%<3=)SQy+h9;lhP9 zm!4@6zzffAYg~PK_f1M(CU|&zfw`#}Sd6xUv2&)u)XmGmePzHi`-x*rL>XdjlsEvH z7`12avBYDYHbo?_`o-M8+TmXNoT&QR&kFLL1dHj!uV6)>!%};4>-`OE|qcVAG<$t|Cq8WU)dH@@v0jjG2 z3jYK+oC|RMGQj;pfQ5m;*J1+DkPjbNnFA9MBpP(8&(h985bNKj>B-in>x_qeI-v;U z6Ufs81h9aKsB}83gxL%b#OIYhETz(y?X2)&yU2ekXRw_$zHB$PH-I7djm=y#w34rF~G@rmM_hHto1r^y0 z?j`~t!l%3kyvxH7U6k_>$enl}g*L7kfXT_pfM0Ne9zA-1r>7^Kj>&&N z9OnN0`()JS_f4KWndT5&^vp*9#@x;6xNcwa9VUCh^=2eZk#m2KaJ=zpcjPtbRDbuEL|H&Q-zC=08KvGSsa7>!fFA$8wXelRvUqv{T>oGA$3JecPh0)gX$Va~W^;O`s)(=6w1YN;%v997^Z7jXvE z*4+fV!^jPWS(B`H@O{j6kY0HVe%M%8ZIn^Y(@cB}=J~*70`cKLnc2lISUz_ z-mDcNbXo)(dc44DUp5o(U9ml;%)9m1!w538`eLqPkN06&=}r|_X*h-3QWs^V8W-g& z<<80;)!gqn6)sBZOw~ z###XszXn*j7$^NKfRD@+?~MRvdJ6zt@Bu&zOJD*~b_@IU^lJBN4X@46o`A5uc(+G; zNL_}O2`^K7UBiDq-Fiw)YWC_Vu~vkjx#7BR3xPwS7;wu_U=q)~m?V0}(G;#JY%?Lz z91OWvFwCZrM=Y_E?^*7oTwdj@3?+_A&(IU@d+V(H2i~8pcK*&0+ppg^C=X(dHNXJ_ z27r~76=Y>)!IUXe_*eSkCz)^`Wx;|Yx|))ZiF2nXX54=`u6_FEC0XB)Aj8;{jT!mB zovq8hUjS<^XO*wKlCf^()xGizsc)+XY%hSK9wNZtU5?+c1LWrbnCgCj&l+tM0=Z-%@U?IO-j5>q zngh6Zggkn_3y`e~1R93oO4yG8X6YK%@6#ENeSf0W)}-qxwi(EKD|1$!1za@=EX9PCJ1T$K0fI9Y82vP4xjxu+JE;9_|2-9|2zrga9;0 z0EL9WNh5@p;Q$}PYO4L={f!SHSf}W1x{iMwYl9$wb%8moTal2x!Ymj);E)#T~KNq8I1#KZ(rQc{4!;m}%;+GNzGK5Ek(nk%*r zXr`|}z;2@J=1CiZ&je(zJ-hu{J}g?f6kMl!JPkgS=peGM+G-Zu-XsJ>)Se`SHqw7X z-PZ<$O-s1H$|oMe{o^5U!V>t!#t(d5=RvS{7+^IJwnnEsO^QiVWnwfqw&1c#^kwJ~ zdK!AKI$vUR07{IgER$V}0M=b#A|m*jk_{_EfRt?jZ{Gr(Iu5WY0bpMyKyfhw_*f8v z5l&;AYiiXuz{DKk`xrps^&rA_88Y<#-3TC+VR%_OJoJLg z*=JVe7=`|&j!J=_d>KJdl%{|69qo3|Rk+<)eE#Ii2tRXvR`3k=-xqu)`E2~ftZj#` zpANLN9X-h-Hh7@83P@{fy>{;fx30KW@ch?`Up9>19-eh8Z|5mEw(m6LX5>Tird_ai zR~B#2&b|B7wx`LmPiS!TIcMe7=k5=VyAD5XeE>RJ|0=ZI4^A}J0)T&a2tKl=HJ`Z= zfT(X@HGY2joy>aeV z)#>~TWp{r6^LpW*g^PdApFiK9wNaE6E3Lj9ZgCL8xM}b;6C(`0lMuW@w8rfKZ zB$Uaq&!~H*eMa9m>pi~R|FINQBV`oTYGjpEW8~yieqwYI`xk%xEzx?-XN=3pi)VAD z*SXrM9cKTOu#Qw2&LXSA*}Kv(_9T0*ROZTQTD#taF~5p%mVjdqXsj}V`7trVOud(6 zM~QT_O0*iZtbyIS_4(TXn)jK7cKxnJuR*MB>VWV?$SSH=$||bemsM0PlT}cw!uCyB z1=VO-1r?J)gVcX|u`grQ34gXu`c-AqK~<>h_KpFQgX0PV8I z=NRge7yAa`N~?-wHDOaYNk$HykBl5AgOP(rB@-Nghv1z+5K}5vuog2=DJiKQ2pn|j zB=Nd)$8Vrpr%pL^B^$&Bb#6C&qoic-S@gMt0P+egdfR`oPY7$Hk_cL&oRZpGIYqUx za&m(e2*yEjD)tCrIC{kMG74&y2f(swaWO>x?SZnw2 zP^w#H?_QG2n26T)>Q$U+ZeCnpQ&S88O;%l0RGjbWS)6WaQvC2>9`!Y|3v=fdZ<3NK z7QnRvtUpF-FkPEl>DVv=Pm&RU{?u=v#cF@WYt5e(7exfgb&af5JWfD ziezPnO35mzWyvY3mq{zCTQPy86^DE;qp0FNP+@=AU>PM9I~fI)wFqee&I9y_T=qp` z)y>%Ghoe`H2f=vm(38hACe)3!S3ki&>_kM7jKSSKdq7mVuCA~g$5x@O>)H(}pFIO% zy}ED#*5g>|LZ(2TFWUQuBtwVEJVQIr%?1vWYwev~F0Y@inrdu2F=(Wn$5{e%qwnA? z1mS=0!E7Pkm*`r%t1*EjJ4yT{CE3lI3DmDkm;PNlbxtAx1rT!aqv7i86MACSz1KbS z-ihS-1OS#ku;?{{iIKGOutDhAjv-ht5kg(jB@B*jLhrXzT29SSK|w{XZ(p^p=n=1A zUp)JwmesGH)Y?T0Cp=ysZh33!gyE+t{OW&e$>xb3c1+rayDBxMr6BS>4|s`(v^>Xc zycg%s!!vxL;ayp2^C@+8um|5O#E{yT)^!Gsla8V1ODFiEr~i8=CLbjT8`#+y^fa)a z`~*E=A_01PDNDt%H)akK?-)3GtYZS9_q)}tb7vhq6s8-t9}#p2bED3rjLJ@o#a~FxnqYY)`D`l&hU4YXJ-dY zNa)p)9J#Jn2tG_Y@+s?89L4Q{{ilD>N(}8LotZe+_8@^7=B-KL`j$`#p3=2br!+h= zt4ott?D)-Ff=<-Bc9w8qEvV4EuP*}kt}*lqu5a#}_A)6n@9loyyiWqb$b^KU^Z~B* zUdza<+BSJb=^?$bF9^ZZ6J*8yJ>`Gs*;IQ~P#s6mDk`eUvM>5bHd{6ZzDj>haCl;@ zFMo`@pOLQoQL3-97IZ2g07O++RRzyaor32lPl~Zq{PBJI`XT^&{;}RibvFS)*e(F@|NpvFeY#U!RRa@BtP&)3nC*%vj}*I)nZ)E`&Z)yod-e)eRhdjokv>>kU+ z=+MN8EqcHd=|OzhHi~~3L6;~g3Gsq9hSA@~kF_W0VCn>`EF13FOC`Zf-oVDwRm;I` zQ1L3(1IsVR(TW{iT+SFccpRj);Qqkg8Q6Eb#ga@%NoxYGM@PwNbf4hm^$p+ib?#Wz ztxM-S)HYzvH|3kWoxm{M=033N+4G)xU%h)~eNIqF78<+91fqYs9(h0+Mb)X&a)XUz z-k~dq(KVm!zde;mRFrZP%0>>_m`DbRiiZ^fy=(AxzyDa3Lf6u!|UCv z^Cb$uKMw7m+1lq}cMKi^wG|a0s?$@aL97UTbf0Hq1EqKG!nxVAVOzg`fIvkW+D|%y zb-+gtLs=RnAtQfnJz~f+qQQ-MObW-IZkRbFkuu?t_8z;9>^+|1?#N3jP%{y6v2G|> z>y--kcj?&iakF)xMAv5ZL?OWF`VOtW(4wyojnTS~Laz{@JSHTB=`eb;3<9pNnp)TQ zU}|?BC_i)vm0Ktop-dS=bAXKekcn81IWDK94l?rUTiAaWiF&}VZFF_i?{<{<`tA_r zKDmN(XT|DQgz8pO5{Rnm`E%IwV=p{Aq+8gxMBdjiC!;`LM?{n2qw@2)80eK^9km>WkN!@7Gm+aOjcfHCTl_D z^=J-d#)ITlmtY;R8t<1f#{H57w;(CBU1+svHtZ8x^VL_pL?tC&#a~Z&0MN{8%gcGU zw>Z#nq1QL^|6yG)LZ7W*yd%q2*{tDr$phN`k=Sj<}{h)>~B2XCy z?@yuCVi9@*`=U=u1#KJqj1uez$D#2MvO<4)F#%!xC2X4J&O`Gh_7|;W_h`oi`%u=6mc*3z4!a(E^9>y-wOnF2^OSNh5H{^_Wc$^Zw7j|_+tjFLkne^?-9V`I6f7) zEfuf13lg)47sn+iV;3*_C;-e3uX-aUr_OKrj8yi8k3A$2xEU0 z+S|%Vc8B(W%U1qRduD6`APhv&6p|Q}6b5W81WDr_feVtYvWJ~RS%@pRLCgiKNP+|S z%DeV+aPJe94Hl(q%_=Wg1EfIL3Ku_Q&bM^8TRDU##2p}YI!8%;njSn}-VdOR9;bPE gYPu_`nV%OoMEJ-I^rMmx00000Nks-uM6N<$f|s&RZ~y=R delta 9355 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 delta 6792 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 and nginx Lua Module" + "New documentations: CodeIgniter, nginx Lua Module and InfluxData" ], [ "2016-02-15", "New documentations: CakePHP, Chef and Ramda" diff --git a/assets/javascripts/templates/pages/about_tmpl.coffee b/assets/javascripts/templates/pages/about_tmpl.coffee index 97c37c5f..74c64c86 100644 --- a/assets/javascripts/templates/pages/about_tmpl.coffee +++ b/assets/javascripts/templates/pages/about_tmpl.coffee @@ -199,6 +199,11 @@ credits = [ 'The University of Glasgow', 'BSD', 'https://www.haskell.org/ghc/license' + ], [ + 'InfluxData', + '2015 InfluxData, Inc.', + 'MIT', + 'https://github.com/influxdata/docs.influxdata.com/blob/master/LICENSE' ], [ 'jQuery', 'Packt Publishing
© jQuery Foundation and other contributors', diff --git a/assets/stylesheets/global/_icons.scss b/assets/stylesheets/global/_icons.scss index 75579c36..9b88ecee 100644 --- a/assets/stylesheets/global/_icons.scss +++ b/assets/stylesheets/global/_icons.scss @@ -128,3 +128,4 @@ ._icon-chef:before { background-position: -2rem -10rem; } ._icon-ramda:before { background-position: -3rem -10rem; @extend %darkIconFix !optional; } ._icon-codeigniter:before { background-position: -4rem -10rem; @extend %darkIconFix !optional; } +._icon-influxdata:before { background-position: -5rem -10rem; @extend %darkIconFix !optional; } diff --git a/assets/stylesheets/pages/_base.scss b/assets/stylesheets/pages/_base.scss index ef7d422d..ae4656f0 100644 --- a/assets/stylesheets/pages/_base.scss +++ b/assets/stylesheets/pages/_base.scss @@ -18,6 +18,7 @@ ._cordova, ._grunt, +._influxdata, ._less, ._lodash, ._marionette, diff --git a/lib/docs/filters/influxdata/clean_html.rb b/lib/docs/filters/influxdata/clean_html.rb new file mode 100644 index 00000000..e86d5782 --- /dev/null +++ b/lib/docs/filters/influxdata/clean_html.rb @@ -0,0 +1,27 @@ +module Docs + class Influxdata + class CleanHtmlFilter < Filter + def call + if root_page? + doc.inner_html = ' ' + return doc + end + + doc = @doc.at_css('#page-content') + + css('.page--contribute', 'hr').remove + + css('.page--body', '.page--title', 'font').each do |node| + node.before(node.children).remove + end + + css('pre > code').each do |node| + node.parent['class'] = node['class'] + node.before(node.children).remove + end + + doc + end + end + end +end diff --git a/lib/docs/filters/influxdata/entries.rb b/lib/docs/filters/influxdata/entries.rb new file mode 100644 index 00000000..9ddea11e --- /dev/null +++ b/lib/docs/filters/influxdata/entries.rb @@ -0,0 +1,30 @@ +module Docs + class Influxdata + class EntriesFilter < Docs::EntriesFilter + def get_name + at_css('#page-title h1').content + end + + def get_type + product = at_css('.product-switcher--current').content.strip + return product if %w(Chronograf Telegraf).include?(product) + + node = at_css('#product-sidebar a[href="index"]') + node = node.parent.previous_element unless node.parent['class'] == 'product-sidebar--section-title' + + type = node.content.strip + type.remove! ' Reference' + + if type.in?(%w(Getting\ Started Introduction Guides)) + product + else + "#{product}: #{type}" + end + end + + def include_default_entry? + !subpath.end_with?("v#{Influxdata.release}/") + end + end + end +end diff --git a/lib/docs/filters/influxdb/clean_html.rb b/lib/docs/filters/influxdb/clean_html.rb deleted file mode 100644 index 8b7544b8..00000000 --- a/lib/docs/filters/influxdb/clean_html.rb +++ /dev/null @@ -1,18 +0,0 @@ -module Docs - class Influxdb - class CleanHtmlFilter < Filter - def call - doc = @doc.at_css('#page-content') - - # Re-position the page header - header = at_css('.page--body h1') - doc.children.first.add_next_sibling header - - # Remove the contribution - at_css('.page--contribute').remove - - doc - end - end - end -end diff --git a/lib/docs/filters/influxdb/entries.rb b/lib/docs/filters/influxdb/entries.rb deleted file mode 100644 index 5b1f4ca9..00000000 --- a/lib/docs/filters/influxdb/entries.rb +++ /dev/null @@ -1,19 +0,0 @@ -module Docs - class Influxdb - class EntriesFilter < Docs::EntriesFilter - - def get_name - at_css('#page-title h1').content - end - - def get_type - # This is kinda hacky, we are fetching the current type from - # the url, we are asumming that the url pattern is - # category/page or category - path = current_url.relative_path_from(base_url) - "InfluxDB: #{path.split('/').first.titleize}" - end - - end - end -end diff --git a/lib/docs/scrapers/influxdata.rb b/lib/docs/scrapers/influxdata.rb new file mode 100644 index 00000000..45d1678f --- /dev/null +++ b/lib/docs/scrapers/influxdata.rb @@ -0,0 +1,32 @@ +module Docs + class Influxdata < UrlScraper + self.name = 'InfluxData' + self.type = 'influxdata' + self.release = '0.10' + self.base_url = 'https://docs.influxdata.com/' + + html_filters.push 'influxdata/entries', 'influxdata/clean_html', 'title' + + options[:trailing_slash] = true + + options[:root_title] = 'InfluxData Documentation' + options[:title] = false + + options[:only_patterns] = [/(telegraf|influxdb|chronograf|kapacitor)\/v#{release}/] + + options[:skip] = [ + "influxdb/v#{release}/sample_data/data_download/", + "influxdb/v#{release}/tools/grafana/", + "influxdb/v#{release}/about/" + ] + + options[:replace_paths] = { + "influxdb/v#{release}/guides/clustering/" => 'influxdb/v0.10/clustering/' + } + + options[:attribution] = <<-HTML + © 2015 InfluxData, Inc.
+ Licensed under the MIT license. + HTML + end +end diff --git a/lib/docs/scrapers/influxdb.rb b/lib/docs/scrapers/influxdb.rb deleted file mode 100644 index bc9eeb8f..00000000 --- a/lib/docs/scrapers/influxdb.rb +++ /dev/null @@ -1,15 +0,0 @@ -module Docs - class Influxdb < UrlScraper - self.name = 'InfluxDB' - self.type = 'influxdb' - self.release = '0.10' - self.base_url = 'https://docs.influxdata.com/influxdb/v0.10/' - - html_filters.push 'influxdb/entries', 'influxdb/clean_html' - - options[:attribution] = <<-HTML - © 2010–2015 InfluxData
- Licensed under the MIT license. - HTML - end -end diff --git a/public/icons/docs/influxdata/16.png b/public/icons/docs/influxdata/16.png new file mode 100644 index 0000000000000000000000000000000000000000..03ad40a70dbfea28b54a8dd5d73f663e7bbbdb0b GIT binary patch literal 623 zcmV-#0+9WQP)DCiWGs|$mlxS)-V!G zypNx^mI{@MpGkojG|rG-XG_7r_&)A)HsE}&;onRQsXW47U)$1c9ZTH|7ed=K1g;Ui zmGSvynfx(+OSwI$sMf$4m+l-?o|!T{)e>$~DWNze$7jSP^tN=kWQ;C^=U~ncQ#;KO z4JwghYp(+SAA~)hw3XKg<1)tHg$`D1~NVU6>&>eBja<&5{wSN-?wcuzV{%|QyLOhyo!`x;^!?Uw`A!RIwql=X3=NhZTJl zr6^S~JsleQo5#z_&@ueIFfWY~!!6Y)SwNZeTNS7OHV+2zl{D%3fuXg>kMEpu$dw0? zU6Gai0%gU6e&@Y+NJBf9b)pBYTCAU^v7 zkHZ6P=i}=}_DeY*+_T{_ZBO9o5m=LwI(hwlo?8tULje?pCVf5&41k8lo;Gn}&kRMn zNAP9G`iG^q`!;VXDQVSN|KB3pIcau) zkecRgVKD5ehMG3x^B**s<*!MTX!@4RDwWE#?9DfN8-L*oRxNhYWPVoiku~zT)6#HM`jl()ats?yDMrk86}BGkZR89-ITL@Kavn93?Qc7XSZ3DOxCxVx()%n)~GK@$&()Cgw)+ zlYNH?c&UqRgcsZC3O;Z!@;-oy0zs_fT;3j}bq9di-q2BZtD8i;Vy+fiFV&bitz7P$ zR0LqMF(p3pC8*BpExfQlQ@9XvlXwcxrgySA&cT5Fc|4*t?T79tFV-u%JIRLGIhBg( z4_B^xL#V0jic+aG9Xy_YPJ#b^*~LMGB2#!0oYUJQ&>cx*w`}Kthyv6M6uBCJe|kg6 zL-mBSC!A4a2s$3bGSVs>6d4gVMRMZ**P=Z`sYWqEmV{}VDb zMQ=d>%^|zmOk}P#V}&>2P{CW!T5a0vQCLUVxj4r_Bp|2s)0W)