added os-type to host
This commit is contained in:
1 parent
583eafc9bf
commit
fbc21fa3a2
2 files changed
+29
-4
No files matched your search
+7
-4
@@ -14,8 +14,9 @@ class HostAdmin(admin.ModelAdmin):
|
||||
('Owner Information', {
|
||||
'fields' : ( 'owner', 'location', 'description' )
|
||||
}),
|
||||
('Hardware Information', {
|
||||
'fields' : ( ('brand', 'model'), 'serial_number', ('hostname', 'host_type' ) )
|
||||
('Hardware and Software Information', {
|
||||
'fields' : ( ('brand', 'model'), 'serial_number', ('hostname', 'host_type' ),
|
||||
'operating_system' )
|
||||
}),
|
||||
('Kerberos Information', {
|
||||
'description' : 'If this host is a member of the LDAP domain, you need to tick the request kerberos principal checkbox. A principal will then be created for the host.',
|
||||
@@ -23,8 +24,8 @@ class HostAdmin(admin.ModelAdmin):
|
||||
'fields' : ( 'request_kerberos_principal', 'kerberos_principal_created',
|
||||
('kerberos_principal_name', 'kerberos_principal_created_date'))
|
||||
}),
|
||||
# ('Domain Information', {
|
||||
# 'fields' : ('host_domains' )
|
||||
# ('Operating System and Architecture', {
|
||||
# 'fields' : ('virtual' )
|
||||
# })
|
||||
)
|
||||
|
||||
@@ -62,4 +63,6 @@ admin.site.register(Host, HostAdmin)
|
||||
admin.site.register(Ip4Subnet, SubnetAdmin)
|
||||
admin.site.register(Nameserver)
|
||||
admin.site.register(MailExchange)
|
||||
admin.site.register(OperatingSystem)
|
||||
admin.site.register(OsArchitecture)
|
||||
admin.site.register(HostType, HostTypeAdmin)
|
||||
@@ -31,6 +31,7 @@ class Domain(models.Model):
|
||||
domain_minimum_ttl = models.IntegerField(default=86400)
|
||||
domain_admin = models.EmailField()
|
||||
domain_ipaddr = models.IPAddressField()
|
||||
created_date = models.DateTimeField(auto_now_add=True)
|
||||
|
||||
domain_nameservers = models.ManyToManyField(Nameserver)
|
||||
domain_mailexchanges = models.ManyToManyField(MailExchange)
|
||||
@@ -56,6 +57,7 @@ class DomainSrvRecord(models.Model):
|
||||
port = models.IntegerField()
|
||||
target = models.CharField(max_length=256)
|
||||
domain = models.ForeignKey(Domain)
|
||||
created_date = models.DateTimeField(auto_now_add=True)
|
||||
|
||||
def __unicode__(self):
|
||||
return self.srvce + "." + self.prot + "." + self.name + ". IN SRV " \
|
||||
@@ -66,6 +68,7 @@ class DomainTxtRecord(models.Model):
|
||||
name = models.CharField(max_length=256)
|
||||
target = models.CharField(max_length=256)
|
||||
domain = models.ForeignKey(Domain)
|
||||
created_date = models.DateTimeField(auto_now_add=True)
|
||||
|
||||
def __unicode__(self):
|
||||
return self.name + " TXT " + self.target
|
||||
@@ -74,6 +77,7 @@ class DomainCnameRecord(models.Model):
|
||||
name = models.CharField(max_length=256)
|
||||
target = models.CharField(max_length=256)
|
||||
domain = models.ForeignKey(Domain)
|
||||
created_date = models.DateTimeField(auto_now_add=True)
|
||||
|
||||
def __unicode__(self):
|
||||
return self.name + " IN CNAME " + self.target
|
||||
@@ -82,6 +86,7 @@ class Ip4Subnet(models.Model):
|
||||
name = models.CharField(max_length=256)
|
||||
netmask = models.IPAddressField()
|
||||
network = models.IPAddressField()
|
||||
created_date = models.DateTimeField(auto_now_add=True)
|
||||
|
||||
def __unicode__(self):
|
||||
return self.network + " (" + self.name + ")"
|
||||
@@ -134,6 +139,20 @@ class HostType(models.Model):
|
||||
def num_members(self):
|
||||
return self.host_set.count()
|
||||
|
||||
class OsArchitecture(models.Model):
|
||||
architecture = models.CharField(max_length=64)
|
||||
|
||||
def __unicode__(self):
|
||||
return self.architecture
|
||||
|
||||
class OperatingSystem(models.Model):
|
||||
name = models.CharField(max_length=256)
|
||||
version = models.CharField(max_length=64)
|
||||
architecture = models.ForeignKey(OsArchitecture)
|
||||
|
||||
def __unicode__(self):
|
||||
return self.name + " " + self.version + " (" + unicode(self.architecture) + ")"
|
||||
|
||||
class Host(models.Model):
|
||||
domain = models.ManyToManyField(Domain)
|
||||
location = models.CharField(max_length=1024)
|
||||
@@ -145,6 +164,8 @@ class Host(models.Model):
|
||||
description = models.CharField(max_length=1024)
|
||||
created_date = models.DateTimeField(auto_now_add=True)
|
||||
host_type = models.ForeignKey(HostType)
|
||||
virtual = models.BooleanField()
|
||||
operating_system = models.ForeignKey(OperatingSystem)
|
||||
|
||||
request_kerberos_principal = models.BooleanField()
|
||||
kerberos_principal_created = models.BooleanField()
|
||||
@@ -171,6 +192,7 @@ class Interface(models.Model):
|
||||
dhcp_client = models.BooleanField()
|
||||
host = models.ForeignKey(Host)
|
||||
ip4address = models.ForeignKey(Ip4Address, blank=True, null=True)
|
||||
created_date = models.DateTimeField(auto_now_add=True)
|
||||
|
||||
def __unicode__(self):
|
||||
return self.macaddr
|
||||
|
||||
Reference in new issue
Block a user