Skip to content

Commit f4549e4

Browse files
author
Laura
authored
Merge pull request #114 from globocom/develop
split foreman and spn/oob deploy
2 parents 8ad9f46 + b731832 commit f4549e4

File tree

5 files changed

+46
-2
lines changed

5 files changed

+46
-2
lines changed

CadVlan/Rack/templates/datacenter/fabric.html

Lines changed: 26 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,18 @@
11
{% extends "menu.html" %}
2+
{% block header %}
3+
<script type="text/javascript">
4+
5+
$(document).ready(function() {
6+
7+
var obj_btn_sav = $("#btn_deploy");
8+
9+
obj_btn_sav.click(function () {
10+
if (confirm('Confirme o deploy nos Switchs de Produção.')) {
11+
}
12+
});
13+
});
14+
</script>
15+
{% endblock %}
216
{% block content %}
317
<section class="mbr-section mbr-after-navbar" id="form1-5" style="background-color: rgb(255, 255, 255); padding-top: 120px; padding-bottom: 120px;">
418
<div class="mbr-section mbr-section__container mbr-section__container--middle">
@@ -135,8 +149,19 @@ <h1 class="mbr-section-title display-3 text-xs-center">
135149
<td class="col-xs-12 col-md-1" style="padding: 1px 1px">
136150
<a class="btn btn-social-bottom btn-responsive"
137151
style="vertical-align: bottom;"
138-
href="{% url rack.deploy.new rack.dcroom rack.id %}"
152+
href="{% url rack.foreman.new rack.dcroom rack.id %}"
139153
title="Integração com o Foreman">
154+
<i class="material-icons" style="color:#FFD17C;font-size:15px">
155+
engineering
156+
</i>
157+
</a>
158+
</td>
159+
<td class="col-xs-12 col-md-1" style="padding: 1px 1px">
160+
<a class="btn btn-social-bottom btn-responsive"
161+
id="btn_deploy"
162+
style="vertical-align: bottom;"
163+
href="{% url rack.deploy.new rack.dcroom rack.id %}"
164+
title="Deploy de configuração nos Switchs">
140165
<i class="material-icons" style="color:#FFD17C;font-size:15px">
141166
launch
142167
</i>

CadVlan/Rack/views.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -751,6 +751,23 @@ def deploy_rack_new (request, fabric_id, rack_id):
751751
return HttpResponseRedirect(reverse('fabric', args=[fabric_id]))
752752

753753

754+
@log
755+
@login_required
756+
@has_perm([{"permission": EQUIPMENT_MANAGEMENT, "write": True}])
757+
def rack_foreman (request, fabric_id, rack_id):
758+
759+
760+
auth = AuthSession(request.session)
761+
client = auth.get_clientFactory()
762+
try:
763+
client.create_apirack().rack_foreman(rack_id)
764+
messages.add_message(request, messages.SUCCESS, rack_messages.get("sucess_aplicar_config"))
765+
except NetworkAPIClientError as e:
766+
messages.add_message(request, messages.ERROR, "Erro ao registrar no Foremanr. Erro: %s" % e)
767+
768+
return HttpResponseRedirect(reverse('fabric', args=[fabric_id]))
769+
770+
754771
@log
755772
@login_required
756773
@csrf_protect

CadVlan/messages.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,7 @@
6868
'can_not_aplicar_config': u'A configuracao não pode ser aplicada nos equipamentos do rack.',
6969
'sucess_alocar_config': u'Os ambientes, vlans e redes do rack %s foram alocadas com sucesso.',
7070
'can_not_alocar_config': u'Os ambientes, vlans e redes do rack %s não puderam ser alocadas.',
71+
'sucess-foreman': u'O ambiente foi registrado no Foreman.'
7172
}
7273

7374
equip_access_messages = {

CadVlan/urls.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -841,6 +841,7 @@
841841
url('^fabric/bgp/(?P<fabric_id>\d+)[/]?$', 'fabric_bgp', name='fabric.bgp',),
842842
url('^fabric/(?P<fabric_id>\d+)[/]?$', 'fabric', name='fabric',),
843843
url('^fabric/delete/(?P<fabric_id>\d+)[/]?$', 'remove_fabric', name='fabric.delete', ),
844+
url('^rack/foreman/(?P<fabric_id>\d+)/(?P<rack_id>\d+)[/]?$', 'rack_foreman', name='rack.foreman.new', ),
844845
)
845846

846847

requirements.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
Django==1.4.15
2-
GloboNetworkAPI==0.9.2
2+
GloboNetworkAPI==0.9.3
33
py2-ipaddress==3.4.1
44
pycrypto==2.6
55
python-ldap==2.3.13

0 commit comments

Comments
 (0)