CCIE.pl

site 4 CCIE wannabies
Dzisiaj jest 23 lut 2018, 20:51

Strefa czasowa UTC+01:00




Nowy temat  Odpowiedz w temacie  [ Posty: 13 ] 
Autor Wiadomość
Post #1 : 25 paź 2016, 11:57 
Offline
wannabe
wannabe

Rejestracja: 18 kwie 2016, 21:04
Posty: 72
Lokalizacja: CCIE
Hej, ostatnio spedzam troche czasu nad REST API i postanowilem skrobnac
przyklad w pythonie. Co ciekawe NSX pozwala na deployment logical switchy
z ta sama nazwa (odroznia je tylko VNI). Postanowilem zmierzyc sie z tym problemem
i za pomoca REST API uniemozliwic tworzenie logical switchy z ta sama nazwa

https://www.linkedin.com/pulse/why-you- ... =prof-post

Oczywiscie przedstawiam core funkcjonalnosc, natomiast w jaki frontend sie to ubierze to juz bez znaczenia czy to bedzie
web app, czy konsola czy jakies gui

P.S Kodze bloga, niedlugo skoncze to bede wiecej wrzucal na niego kolejne kody, zamiast na linkedin


Na górę
Post #2 : 25 paź 2016, 16:52 
Online
CCIE
CCIE
Awatar użytkownika

Rejestracja: 05 wrz 2004, 16:25
Posty: 354
Lokalizacja: waw@pl
Popraw sobie osadzenie obrazka....

_________________
www.paloaltonetworks.com


Na górę
Post #3 : 25 paź 2016, 21:29 
Offline
wannabe
wannabe

Rejestracja: 27 wrz 2007, 01:13
Posty: 509
powinienes uzywac try except by lapac problemy z request a nie if
do tego warto by bylo sie trzymac substytucji wszedzie w kodzie niz na przemiennie z konkatynacja

Docstringi pisze sie w funkcji / klasie do ktorej naleza nie nad nia

Radze stosowac sie do pep8 tu masz output z linta na twoim kodzie (zwlaszcza gdy publikujesz cos na linkedin)
Kod:
Check results
=============

E302:8:1:expected 2 blank lines, found 1
E231:8:24:missing whitespace after ':'
E501:8:80:line too long (81 > 79 characters)
E113:9:5:unexpected indentation
E251:11:68:unexpected spaces around keyword / parameter equals
E251:11:70:unexpected spaces around keyword / parameter equals
E501:11:80:line too long (93 > 79 characters)
E711:17:19:comparison to None should be 'if cond is not None:'
E265:19:17:block comment should start with '# '
E231:22:20:missing whitespace after ','
E302:28:1:expected 2 blank lines, found 1
E501:30:80:line too long (80 > 79 characters)
E501:32:80:line too long (92 > 79 characters)
E711:38:27:comparison to None should be 'if cond is not None:'
E302:47:1:expected 2 blank lines, found 1
E231:63:21:missing whitespace after ','
E112:67:13:expected an indented block
E501:68:80:line too long (117 > 79 characters)
E231:68:97:missing whitespace after ','
E225:70:33:missing whitespace around operator
E501:71:80:line too long (111 > 79 characters)
E501:72:80:line too long (125 > 79 characters)
E501:76:80:line too long (116 > 79 characters)
E231:76:95:missing whitespace after ','
E501:78:80:line too long (91 > 79 characters)
E501:82:80:line too long (86 > 79 characters)
E231:83:31:missing whitespace after ':'
E711:91:15:comparison to None should be 'if cond is not None:'
E501:92:80:line too long (82 > 79 characters)
E711:97:14:comparison to None should be 'if cond is not None:'
E501:101:80:line too long (97 > 79 characters)
E231:101:88:missing whitespace after ','
E231:102:32:missing whitespace after ','
E231:102:40:missing whitespace after ','
E231:102:47:missing whitespace after ','
W292:102:56:no newline at end of file


Ostatnio zmieniony 25 paź 2016, 23:14 przez freel4ncer, łącznie zmieniany 4 razy.

Na górę
Post #4 : 25 paź 2016, 22:47 
Offline
CCIE / Site Admin
CCIE / Site Admin
Awatar użytkownika

Rejestracja: 13 sie 2004, 12:19
Posty: 4831
Lokalizacja: Warsaw, PL
To ja się boje swoje perlowe rzeczy publikować :P

_________________
Facebook: https://www.facebook.com/Piotr.Wojciechowski.CCIE
LinkedIn: http://www.linkedin.com/in/peper
Twitter: http://www.twitter.com/PiotrW_CCIE
Blog: http://blog.it-playground.eu

"Zapomniałem że od kilku lat wszyscy giną jakby nigdy ich nie miało być
w stu tysiącach jednakowych miast giną jak psy"


Na górę
Post #5 : 25 paź 2016, 23:08 
Offline
wannabe
wannabe

Rejestracja: 27 wrz 2007, 01:13
Posty: 509
Cytuj:
To ja się boje swoje perlowe rzeczy publikować :P
Ja sie boje czytac i modyfikowac swoje perlowe wypociny ;) Tzn nie przypominam sobie bym cos napisal w Perlu od 3-4 lat ale napewno niechcialbym byc zmuszony zagladac do tego kodu ;)


Na górę
Post #6 : 25 paź 2016, 23:14 
Offline
CCIE/CCDE
CCIE/CCDE
Awatar użytkownika

Rejestracja: 08 mar 2004, 12:17
Posty: 2327
Lokalizacja: Wawa
Cytuj:
Co ciekawe NSX pozwala na deployment logical switchy
z ta sama nazwa (odroznia je tylko VNI).
To objectId jest unikalnym identyfikatorem obiektu virtualwire, czyli logicznego switcha (LS). Ani nazwa, ani VNI takimi identyfikatorami nie są. Zatem logiczne switche nie odróżniają się tylko poprzez VNI w Twoim przypadku. Posiadanie możliwości nadawania tych samych nazw logicznym przełącznikom jest przydatne zwłaszcza w środowiskach multitenant z vCloud Director. Klienci mogą wówczas tworzyć swoje nazwy i nie ma problemu, by się powtarzały z nazwami obiektów u innych klientów. Jeżeli zarządzacie tworzeniem LS dla klientów, to wystarczy dodawać identyfikator lub nazwę klienta do nazw obiektów.


Na górę
Post #7 : 26 paź 2016, 00:12 
Offline
CCIE / Site Admin
CCIE / Site Admin
Awatar użytkownika

Rejestracja: 13 sie 2004, 12:19
Posty: 4831
Lokalizacja: Warsaw, PL
Cytuj:
Cytuj:
To ja się boje swoje perlowe rzeczy publikować :P
Ja sie boje czytac i modyfikowac swoje perlowe wypociny ;) Tzn nie przypominam sobie bym cos napisal w Perlu od 3-4 lat ale napewno niechcialbym byc zmuszony zagladac do tego kodu ;)
Ja generalnie programowania się nie dotykałem od prawie 10 lat bawiąc się Java, C i C++ wcześniej przez około 10 lat. Perla mało dotykałem ale dotykałem więc do REST API wydal mi się najbardziej naturalnym rozwiązaniem szczególnie na to co testuję i opisuję. Podejścia do programowania się nie zapomina, co najwyżej składni języków i best practice :)

_________________
Facebook: https://www.facebook.com/Piotr.Wojciechowski.CCIE
LinkedIn: http://www.linkedin.com/in/peper
Twitter: http://www.twitter.com/PiotrW_CCIE
Blog: http://blog.it-playground.eu

"Zapomniałem że od kilku lat wszyscy giną jakby nigdy ich nie miało być
w stu tysiącach jednakowych miast giną jak psy"


Na górę
Post #8 : 26 paź 2016, 11:08 
Offline
wannabe
wannabe

Rejestracja: 18 kwie 2016, 21:04
Posty: 72
Lokalizacja: CCIE
Cytuj:
powinienes uzywac try except by lapac problemy z request a nie if
do tego warto by bylo sie trzymac substytucji wszedzie w kodzie niz na przemiennie z konkatynacja

Docstringi pisze sie w funkcji / klasie do ktorej naleza nie nad nia

Radze stosowac sie do pep8 tu masz output z linta na twoim kodzie (zwlaszcza gdy publikujesz cos na linkedin)
Wiem, tylko zeby robic try except trzeba wiedziec co sie lapie bo robienie Except exception as error moze czasem
przyniesc wiecej problemow. To nie kod produkcyjny ;] brakuje unit testow itp.
W kazdym badz razie GET jak nie zwroci 200 to jest problem, a w przypadku POST 201.

Pisane na kolanie to w godzine, chodzi o koncepcje - zeby nasze srodowisko nie balo sie programowac
bo nie jestesmy gorsi.
Cytuj:
To ja się boje swoje perlowe rzeczy publikować :P
Nie ma czego sie bac, konstruktywna krytyka zawsze ci pomoze a nie zaszkodzi w razie czego. Dla przykladu Gynvael Coldwind
wydal ksiazke, i juz klika errat robil, ludzie mu krytyczne bledy w kodzie zglaszali w przykladach ktore opublikowal ( w tym ja mu dzial sieciowy pomagalem poprawiac)
a ma ponad 2x lat doswiadczenia z kodem. Nawet w produkcji kod nie jest wolny od bledow, dlatego wychodza patche/latki i kolejne edycje. Takze publikuj

Staram sie przeciwstawic powszechnej opinni, ze Sieciowcy to zajeli sie sieciami bo nie potrafili/nie chcieli/nie umieli programowac.

Cytuj:
Cytuj:
Co ciekawe NSX pozwala na deployment logical switchy
z ta sama nazwa (odroznia je tylko VNI).
To objectId jest unikalnym identyfikatorem obiektu virtualwire, czyli logicznego switcha (LS). Ani nazwa, ani VNI takimi identyfikatorami nie są. Zatem logiczne switche nie odróżniają się tylko poprzez VNI w Twoim przypadku. Posiadanie możliwości nadawania tych samych nazw logicznym przełącznikom jest przydatne zwłaszcza w środowiskach multitenant z vCloud Director. Klienci mogą wówczas tworzyć swoje nazwy i nie ma problemu, by się powtarzały z nazwami obiektów u innych klientów. Jeżeli zarządzacie tworzeniem LS dla klientów, to wystarczy dodawać identyfikator lub nazwę klienta do nazw obiektów.
Masz racje, ale zauwaz ze jak dodajesz nazwe klienta pod obiekt LSa to juz on staje sie unikalny, nie widze sensu np dla jednego klienta posiadania zduplikowanych nazw LSow. Dlatego napisalem maly skrypt ktory nie zezwala na stworzenie wiecej niz jednego switcha o takiej samej nazwie. Klient zazwyczaj jak ma srodowisko dev/test/prod to sobie nazwie www-tier-klient-test, www-tier-klient-dev, www-tier-klient-prod. Raczej by nie chcial dwoch www-tier-klient-prod i omylkowo pomylil gdzie podlacza workloady.


Ostatnio zmieniony 26 paź 2016, 11:17 przez horac, łącznie zmieniany 2 razy.

Na górę
Post #9 : 26 paź 2016, 11:13 
Offline
wannabe
wannabe

Rejestracja: 27 wrz 2007, 01:13
Posty: 509
Kod:
except requests.exceptions.RequestException 
Kod:
except requests.exceptions.HTTPError
Zeby byla jasnosc ja nie hejtuje tylko staram sie radzic wedlug mojej skromnej wiedzy ;)
Generalnie +1 za propagowanie automatyzacji :)


Ostatnio zmieniony 26 paź 2016, 14:45 przez freel4ncer, łącznie zmieniany 1 raz.

Na górę
Post #10 : 26 paź 2016, 11:19 
Offline
wannabe
wannabe

Rejestracja: 18 kwie 2016, 21:04
Posty: 72
Lokalizacja: CCIE
Cytuj:
Zeby byla jasnosc ja nie hejtuje tylko staram sie radzic wedlog mojej skromnej wiedzy ;)
Generalnie +1 za propagowanie automatyzacji :)
No i dzieki, o to chodzi. Co do automatyzacji, dokladnie to jest wlasciwy kierunek ktory obralem juz jakis czas temu.

p.s popraw na "wedlug"


Na górę
Post #11 : 26 paź 2016, 12:01 
Offline
CCIE / Site Admin
CCIE / Site Admin
Awatar użytkownika

Rejestracja: 13 sie 2004, 12:19
Posty: 4831
Lokalizacja: Warsaw, PL
@horac - to był sarkazm z mojej strony.

_________________
Facebook: https://www.facebook.com/Piotr.Wojciechowski.CCIE
LinkedIn: http://www.linkedin.com/in/peper
Twitter: http://www.twitter.com/PiotrW_CCIE
Blog: http://blog.it-playground.eu

"Zapomniałem że od kilku lat wszyscy giną jakby nigdy ich nie miało być
w stu tysiącach jednakowych miast giną jak psy"


Na górę
Post #12 : 26 paź 2016, 14:53 
Offline
wannabe
wannabe

Rejestracja: 27 wrz 2007, 01:13
Posty: 509
Cytuj:
Cytuj:
Zeby byla jasnosc ja nie hejtuje tylko staram sie radzic wedlog mojej skromnej wiedzy ;)
Generalnie +1 za propagowanie automatyzacji :)
No i dzieki, o to chodzi. Co do automatyzacji, dokladnie to jest wlasciwy kierunek ktory obralem juz jakis czas temu.

p.s popraw na "wedlug"
Poprawione :D bardzo malo pisze/czytam po Polsku od przeszlo 10 lat i juz nie ogarniam ortorgrafii ;)


Na górę
Post #13 : 27 paź 2016, 00:14 
Offline
CCIE/CCDE
CCIE/CCDE
Awatar użytkownika

Rejestracja: 08 mar 2004, 12:17
Posty: 2327
Lokalizacja: Wawa
Cytuj:
Masz racje, ale zauwaz ze jak dodajesz nazwe klienta pod obiekt LSa to juz on staje sie unikalny, nie widze sensu np dla jednego klienta posiadania zduplikowanych nazw LSow. Dlatego napisalem maly skrypt ktory nie zezwala na stworzenie wiecej niz jednego switcha o takiej samej nazwie. Klient zazwyczaj jak ma srodowisko dev/test/prod to sobie nazwie www-tier-klient-test, www-tier-klient-dev, www-tier-klient-prod. Raczej by nie chcial dwoch www-tier-klient-prod i omylkowo pomylil gdzie podlacza workloady.
Nakładka vCloud Director umożliwia wygodniejszy podział jednego DC na kilka wirtualnych. Pod spodem działa sobie jeden NSX. Wówczas klienci nie widzą swoich obiektów. Nazwy mogą się powtarzać i nikt nie musi uzgadniać nazwy z kimś innym. W Waszym przypadku nie jest to potrzebne, gdyż jeden NSX to jeden klient.


Na górę
Wyświetl posty nie starsze niż:  Sortuj wg  
Nowy temat  Odpowiedz w temacie  [ Posty: 13 ] 

Strefa czasowa UTC+01:00


Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 1 gość


Nie możesz tworzyć nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Przejdź do:  
cron
This Website is not sponsored by, endorsed by or affiliated with Cisco Systems, Inc. Cisco, Cisco Systems, CCDA, CCNA, CCDP, CCNP, CCIE, CCSI, CCIP, the Cisco Systems logo and the CCIE logo are trademarks or registered trademarks of Cisco Systems, Inc. in the United States and certain other countries. Używamy informacji zapisanych za pomocą cookies i podobnych technologii m.in. w celach reklamowych i statystycznych oraz w celu dostosowania naszych serwisów do indywidualnych potrzeb użytkowników. Mogą też stosować je współpracujące z nami firmy. W programie służącym do obsługi internetu można zmienić ustawienia dotyczące cookies. Korzystanie z naszych serwisów internetowych bez zmiany ustawień dotyczących cookies oznacza, że będą one zapisane w pamięci urządzenia.



Technologię dostarcza phpBB® Forum Software © phpBB Limited
Polski pakiet językowy dostarcza phpBB.pl