<html>
  <head>
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    Ahoj,<br>
    <br>
    zkousel jsem to delat jak s Rails tak s grape a ani jedno
    nesplnovalo pozadavky. Na ohybani to bylo moc daleko.<br>
    <br>
    Testy zatim nejsou ve frameworku samotnem, ale nase API testovane
    je, viz
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
    <a href="https://github.com/vpsfreecz/vpsadminapi">https://github.com/vpsfreecz/vpsadminapi</a>.<br>
    <br>
    Jakub<br>
    <br>
    <div class="moz-cite-prefix">On 05/22/2014 09:48 AM, RenĂ© KlaÄŤan
      wrote:<br>
    </div>
    <blockquote
cite="mid:CAD8Jy_Mm5QqfAvR+gq4b5XYoD08dZgWXFkYE1rbe9NpLq19Fhw@mail.gmail.com"
      type="cite">
      <div dir="ltr">Ahojte,
        <div><br>
        </div>
        <div>nebolo jednoduchsie a casovo uspornejsie pouzit uz nejaky
          existujuci API framework? Z mojho pohladu by to mohlo usetrit
          vela casu. Napriklad <a moz-do-not-send="true"
            href="https://github.com/intridea/grape">https://github.com/intridea/grape</a>
          . Ci si myslite, ze poziadavky su natolko specificke, ze by to
          podobna kniznica efektivne nepokryla a bolo by ju nutne az
          nezmyselne ohybat?</div>
        <div><br>
        </div>
        <div>Ale inak skvela praca, velmi pekne napisane a tiez velmi
          ocenujem, ze to je v Ruby! Len by som vytkol to, ze tam
          nevidim testy.</div>
        <div><br>
        </div>
        <div>Rene</div>
      </div>
      <div class="gmail_extra"><br>
        <br>
        <div class="gmail_quote">2014-05-21 22:10 GMT+02:00 Pavel Snajdr
          <span dir="ltr"><<a moz-do-not-send="true"
              href="mailto:snajpa@snajpa.net" target="_blank">snajpa@snajpa.net</a>></span>:<br>
          <blockquote class="gmail_quote" style="margin:0 0 0
            .8ex;border-left:1px #ccc solid;padding-left:1ex">
            -----BEGIN PGP SIGNED MESSAGE-----<br>
            Hash: SHA256<br>
            <br>
            Ahoj,<br>
            <br>
            posilat porad username+password a nemit rozliseni mezi API
            pristupem a<br>
            UI pristupem je smrt, natoz to chtit nejak potom auditovat,
            totalne<br>
            nemozne - takze to je jedna z veci, co se bude resit dal,
            vime o tom.<br>
            <br>
            Neco na ten, jak rikas, je urcite v planu, ono to jenom
            nejde delat<br>
            jako revoluci "vsechno najednou", jelikoz prerodit vpsAdmin
            za behu v<br>
            neco min srackoidniho (zdravim sam sebe o 5 let v minulosti)
            to neni<br>
            task na par tydnu a obzvlast kdyz se to clovek rozhodne
            udelat poradne<br>
            a jeste to chce udelat recyklovatelne.<br>
            <br>
            Proto jsme vymysleli jak co nejvic ty prace ohledne API a
            tak<br>
            automatizovat uz samotnym napsanim toho kodu urcitym stylem,
            aby se<br>
            napsal jenom jednou a nebylo potreba udrzovat <a
              moz-do-not-send="true" href="tel:228342934"
              value="+420228342934">228342934</a> veci okolo<br>
            jako napr. dokumentace a kvadrilion ruznych klientu pro
            triliardu<br>
            platform :))<br>
            <br>
            Aither prerodil tenhle muj napad v HaveAPI, coz vypada jako
            uplne<br>
            super vec, na kterou jsem celou dobu cekal.<br>
            Uz nejakou chvili se zabyvam s ruznymi lidmi automatizaci
            ruznych<br>
            low-level procesu (mluvim o low-level vecech z pohledu
            provozovatele<br>
            byznysu online, tzn. nastaveni OS, runtime jazyka, DB...) a
            presne<br>
            nejaka takovahle moznost jak vybavit uzavrene komplexni
            prostredi<br>
            jasne popsanym strukturovanym rozhrani na praci s nim, to mi
            presne<br>
            chybelo.<br>
            <br>
            Proto bych chtel, jestli mate kdo ted cas, fakt na to
            mrknete, jestli<br>
            jste meli potrebu kdy tvorit nejaky APIcka pro neco, tohle
            je uplne o<br>
            necem jinym, je to holt vyzdimana koncentrovana bolest pri
            psani API<br>
            pretavena v lek :))<br>
            <br>
            No a celej duvod, proc jsem se s Aitherem dohodnul, ze to
            announcne uz<br>
            ted, kdyz se uci na statnice, je aby byl prostor na
            feedback.<br>
            <br>
            Takze kdo jste kdy delal HTTP API pro neco, kouknete na to a
            dejte<br>
            vedet. Dik!<br>
            <br>
            S pozdravem<br>
            <br>
            Pavel Snajdr<br>
            <br>
            <a moz-do-not-send="true"
              href="tel:%2B421%20948%20816%20186" value="+421948816186">+421
              948 816 186</a>  | <a moz-do-not-send="true"
              href="tel:%2B420%20720%20107%20791" value="+420720107791">+420
              720 107 791</a> Â  Â  Â  Â  Â | 110-010-956<br>
            CTO of Relbit Â  Â  | Predseda vpsFree.cz, o.s. | RHCE<br>
            <a moz-do-not-send="true" href="http://relbit.com"
              target="_blank">http://relbit.com</a> | <a
              moz-do-not-send="true" href="http://vpsfree.cz"
              target="_blank">http://vpsfree.cz</a> Â  Â  Â  Â  | <a
              moz-do-not-send="true" href="https://www.redhat.com"
              target="_blank">https://www.redhat.com</a><br>
            <div class=""><br>
              On 05/21/2014 08:20 PM, Ján Raska wrote:<br>
              > Ahoj,<br>
              ><br>
              > super napad. Akurat mam malu vyhradu voci
              autentifikacii, moderne<br>
              > RESTful APIs sa dnes vacsinou robia stateless s
              pouzitim tokenu,<br>
              > ktory sa zasiela vramci Authentication headeru. S tym
              ze okrem<br>
              > temporary tokenu je aj moznost zisat long-term token
              (bez<br>
              > expiracie), alebo este lepsie short-term token spolu
              s refresh<br>
              > tokenom (refresh token bezpecne ulozim, komunikujem
              so short term<br>
              > tokenom a ked vyprsi, tak pomocou refresh tokenu
              urobim reissue). V<br>
              > podstate na podobnom principe pracuje OAuth 2.0, ale
              na nieco<br>
              > taketo je z mojich skusenosti jednoduchsie nakodit
              nieco vlastne<br>
              > nez implementovat cely OAuth (pokial samozrejme
              nepouzijem hotovu<br>
              > libku :) ).<br>
              ><br>
              > Vyhoda takehoto API je, ze sa potom k tomu daju
              napisat mobilne<br>
              > appky, do ktorych sa prihlasis raz a oni si token
              ulozia do device<br>
              > DB.<br>
              ><br>
              > Jano<br>
              ><br>
              > On 20 May 2014, at 19:01, Jakub Skokan <<a
                moz-do-not-send="true"
                href="mailto:jakub.skokan@havefun.cz">jakub.skokan@havefun.cz</a><br>
            </div>
            <div>
              <div class="h5">> <mailto:<a moz-do-not-send="true"
                  href="mailto:jakub.skokan@havefun.cz">jakub.skokan@havefun.cz</a>>>
                wrote:<br>
                ><br>
                >> ZdravĂ­m,<br>
                >><br>
                >> na adrese <a moz-do-not-send="true"
                  href="https://api.vpsfree.cz" target="_blank">https://api.vpsfree.cz</a>
                je k dispozici vĂ˝vojová verze<br>
                >> vpsAdmin API. Je to ve stavu, kdy to funguje,
                ale nenĂ­ to<br>
                >> doladÄ›nĂ© a nemá to všechny funkce.<br>
                >><br>
                >> PĹ™i vĂ˝voji vzniknul framework HaveAPI [1],
                kterĂ˝ naše API<br>
                >> využívá. Jedná se o framework na tvorbu
                sebepopisujĂ­cĂ­ch se<br>
                >> RESTful API.<br>
                >><br>
                >> SebepopisujĂ­cĂ­ se API odpovĂ­dá na HTTP metodu
                OPTIONS a vracĂ­<br>
                >> JSON obsahujĂ­cĂ­ seznam dostupnĂ˝ch verzĂ­ API,
                objektĹŻ, akcĂ­,<br>
                >> jejich vstupnĂ­ch/vĂ˝stupnĂ­ch parametrĹŻ, popis,
                validaci, ukázku<br>
                >> použítĂ­, apod. DĂ­ky tĂ©to vlastnosti lze
                vytvoĹ™it klienta, kterĂ˝<br>
                >> dokáže komunikovat s jakĂ˝mkoli API, kterĂ© je
                postavenĂ© nad<br>
                >> HaveAPI. ZmÄ›ny v API se okamĹľitÄ› projevĂ­ ve
                všech klientech,<br>
                >> atd.<br>
                >><br>
                >> Dokumentace API: - Automaticky generovaná
                frameworkem na<br>
                >> <a moz-do-not-send="true"
                  href="https://api.vpsfree.cz" target="_blank">https://api.vpsfree.cz</a><br>
                >><br>
                >> Co to zatĂ­m umĂ­: - VytvoĹ™enĂ­ a smazánĂ­
                playground VPS, - seznam<br>
                >> vlastnĂ­ch VPS, start, stop, restart, zmÄ›na
                hesla, pĹ™einstalace, -<br>
                >> vĂ˝pis konfigurace VPS, - seznam IP adres VPS, -
                seznam dostupnĂ˝ch<br>
                >> dstribucĂ­ (nutnĂ© k vytvoĹ™enĂ­ VPS).<br>
                >><br>
                >> PĹ™ipravenĂ­ klienti: - CLI a klient v Ruby
                (>= 2.0) [2], kterĂ˝<br>
                >> takĂ© existuje v obecnĂ© formÄ› (pro jakĂ©koliv
                API, rozdĂ­l je pouze<br>
                >> ve jmĂ©nu a vĂ˝chozĂ­ URL) [3], - PHP klient [4] a
                jeho obecná forma<br>
                >> [5].<br>
                >><br>
                >> Návody na instalaci a pouĹľitĂ­ jednotlivĂ˝ch
                klientĹŻ jsou na<br>
                >> pĹ™iloĹľenĂ˝ch odkazech.<br>
                >><br>
                >> Aktivita je vĂ­tána. Hodilo by se, kdyby se
                našlo pár lidĂ­, co by<br>
                >> udÄ›lali klienta ve svĂ©m oblĂ­benĂ©m jazyce.
                NejvĂ­c by se nám hodil<br>
                >> alespoň proof-of-concept v JS, abychom si
                ověřili, Ĺľe je moĹľnĂ©<br>
                >> udÄ›lat UI kompletnÄ› v HTML5 & JS, já uĹľ na
                to aktuálnÄ› nemám<br>
                >> ÄŤas.<br>
                >><br>
                >> Pokud nenarazĂ­me na nÄ›jakĂ© vÄ›tší problĂ©my,
                aplikaÄŤnĂ­ logika<br>
                >> vpsAdminu se bude postupnÄ› pĹ™esouvat z webovĂ©ho
                rozhranĂ­ do<br>
                >> tohoto API. SouÄŤasnÄ› se z vpsAdminu pomalu bude
                stávat nezávislĂ˝<br>
                >> projekt na vpsFree.cz, aby jeho pouĹľitĂ­ nebylo
                limitováno naším<br>
                >> sdruĹľenĂ­m a Ĺˇel nasadit i jinde.<br>
                >><br>
                >> Do budoucna se poÄŤĂ­tá s tĂ­m, Ĺľe pĹ™es API pĹŻjde
                hĂ˝bat s parametry<br>
                >> VPS a ÄŤlen si bude moci rozdÄ›lit pĹ™idÄ›lenĂ©
                prostĹ™edky mezi vĂ­ce<br>
                >> VPS jak se mu zlĂ­bĂ­ (v rozumnĂ˝ch mantinelech).<br>
                >><br>
                >> Rozhodli jsme se to spustit a oznámit co
                nejdříve, i kdyĹľ<br>
                >> nekompletnĂ­, aby se koncept otestoval v praxi.
                Budu rád za<br>
                >> jakoukoliv zpÄ›tnou vazbu, nápady ÄŤi pĹ™ipomĂ­nky.<br>
                >><br>
                >> [1] <a moz-do-not-send="true"
                  href="https://github.com/vpsfreecz/haveapi"
                  target="_blank">https://github.com/vpsfreecz/haveapi</a><br>
                >><br>
                >> [2] <a moz-do-not-send="true"
                  href="https://github.com/vpsfreecz/vpsfree-client"
                  target="_blank">https://github.com/vpsfreecz/vpsfree-client</a><br>
                >><br>
                >> [3] <a moz-do-not-send="true"
                  href="https://github.com/vpsfreecz/haveapi-client"
                  target="_blank">https://github.com/vpsfreecz/haveapi-client</a><br>
                >><br>
                >> [4] <a moz-do-not-send="true"
                  href="https://github.com/vpsfreecz/haveapi-client-php/tree/vpsfree"
                  target="_blank">https://github.com/vpsfreecz/haveapi-client-php/tree/vpsfree</a><br>
                >><br>
                >> [5] <a moz-do-not-send="true"
                  href="https://github.com/vpsfreecz/haveapi-client-php"
                  target="_blank">https://github.com/vpsfreecz/haveapi-client-php</a>
                -- S<br>
                >> pozdravem<br>
                >><br>
                >> Jakub Skokan
                _______________________________________________<br>
                >> News-list mailing list <a
                  moz-do-not-send="true"
                  href="mailto:News-list@lists.vpsfree.cz">News-list@lists.vpsfree.cz</a><br>
              </div>
            </div>
            >> <mailto:<a moz-do-not-send="true"
              href="mailto:News-list@lists.vpsfree.cz">News-list@lists.vpsfree.cz</a>><br>
            >> <a moz-do-not-send="true"
              href="http://lists.vpsfree.cz/listinfo/news-list"
              target="_blank">http://lists.vpsfree.cz/listinfo/news-list</a><br>
            <div class="">><br>
              ><br>
              ><br>
              > _______________________________________________
              Community-list<br>
              > mailing list <a moz-do-not-send="true"
                href="mailto:Community-list@lists.vpsfree.cz">Community-list@lists.vpsfree.cz</a><br>
              > <a moz-do-not-send="true"
                href="http://lists.vpsfree.cz/listinfo/community-list"
                target="_blank">http://lists.vpsfree.cz/listinfo/community-list</a><br>
              ><br>
            </div>
            -----BEGIN PGP SIGNATURE-----<br>
            Version: GnuPG v1<br>
            Comment: Using GnuPG with Thunderbird - <a
              moz-do-not-send="true" href="http://www.enigmail.net/"
              target="_blank">http://www.enigmail.net/</a><br>
            <br>
iF4EAREIAAYFAlN9CEsACgkQMBKdi9lkZ6p1UgD9FhUz15ApUnlTqufJgATy2BCa<br>
QPkScmJTxfU/gcDGynAA+wavOPBtamMxqOjiRsuKHt4SUYPLtJSuEq2wB8VrH8e/<br>
            =jIPF<br>
            -----END PGP SIGNATURE-----<br>
            <div class="HOEnZb">
              <div class="h5">_______________________________________________<br>
                Community-list mailing list<br>
                <a moz-do-not-send="true"
                  href="mailto:Community-list@lists.vpsfree.cz">Community-list@lists.vpsfree.cz</a><br>
                <a moz-do-not-send="true"
                  href="http://lists.vpsfree.cz/listinfo/community-list"
                  target="_blank">http://lists.vpsfree.cz/listinfo/community-list</a><br>
              </div>
            </div>
          </blockquote>
        </div>
        <br>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
Community-list mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Community-list@lists.vpsfree.cz">Community-list@lists.vpsfree.cz</a>
<a class="moz-txt-link-freetext" href="http://lists.vpsfree.cz/listinfo/community-list">http://lists.vpsfree.cz/listinfo/community-list</a>
</pre>
    </blockquote>
    <br>
  </body>
</html>