mirror of
https://github.com/ansible/awx.git
synced 2026-01-12 10:30:03 -03:30
AC-537 Minor migration change, fix broken models/serializers.
This commit is contained in:
parent
ddd5eb3b4e
commit
0c98b7ed69
@ -31,7 +31,7 @@ class Migration(SchemaMigration):
|
||||
|
||||
# Adding field 'Credential.kind'
|
||||
db.add_column(u'main_credential', 'kind',
|
||||
self.gf('django.db.models.fields.CharField')(default='machine', max_length=32),
|
||||
self.gf('django.db.models.fields.CharField')(default='ssh', max_length=32),
|
||||
keep_default=False)
|
||||
|
||||
# Adding field 'Credential.username'
|
||||
|
||||
@ -215,7 +215,7 @@ class Migration(DataMigration):
|
||||
'created_by': ('django.db.models.fields.related.ForeignKey', [], {'default': 'None', 'related_name': '"{\'class\': \'credential\', \'app_label\': \'main\'}(class)s_created+"', 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': u"orm['auth.User']"}),
|
||||
'description': ('django.db.models.fields.TextField', [], {'default': "''", 'blank': 'True'}),
|
||||
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
|
||||
'kind': ('django.db.models.fields.CharField', [], {'default': "'machine'", 'max_length': '32'}),
|
||||
'kind': ('django.db.models.fields.CharField', [], {'default': "'ssh'", 'max_length': '32'}),
|
||||
'modified': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now', 'auto_now': 'True', 'blank': 'True'}),
|
||||
'modified_by': ('django.db.models.fields.related.ForeignKey', [], {'default': 'None', 'related_name': '"{\'class\': \'credential\', \'app_label\': \'main\'}(class)s_modified+"', 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': u"orm['auth.User']"}),
|
||||
'name': ('django.db.models.fields.CharField', [], {'max_length': '512'}),
|
||||
|
||||
@ -134,7 +134,7 @@ class Migration(SchemaMigration):
|
||||
'created_by': ('django.db.models.fields.related.ForeignKey', [], {'default': 'None', 'related_name': '"{\'class\': \'credential\', \'app_label\': \'main\'}(class)s_created+"', 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': u"orm['auth.User']"}),
|
||||
'description': ('django.db.models.fields.TextField', [], {'default': "''", 'blank': 'True'}),
|
||||
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
|
||||
'kind': ('django.db.models.fields.CharField', [], {'default': "'machine'", 'max_length': '32'}),
|
||||
'kind': ('django.db.models.fields.CharField', [], {'default': "'ssh'", 'max_length': '32'}),
|
||||
'modified': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now', 'auto_now': 'True', 'blank': 'True'}),
|
||||
'modified_by': ('django.db.models.fields.related.ForeignKey', [], {'default': 'None', 'related_name': '"{\'class\': \'credential\', \'app_label\': \'main\'}(class)s_modified+"', 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': u"orm['auth.User']"}),
|
||||
'name': ('django.db.models.fields.CharField', [], {'max_length': '512'}),
|
||||
|
||||
@ -1050,7 +1050,7 @@ class Credential(CommonModelNameNotUnique):
|
||||
('rax', _('Rackspace')),
|
||||
]
|
||||
|
||||
PASSWORD_FIELDS = ('ssh_password', 'password', 'ssh_key_data', 'ssh_key_unlock', 'sudo_password')
|
||||
PASSWORD_FIELDS = ('password', 'ssh_key_data', 'ssh_key_unlock', 'sudo_password')
|
||||
|
||||
class Meta:
|
||||
app_label = 'main'
|
||||
@ -1075,7 +1075,7 @@ class Credential(CommonModelNameNotUnique):
|
||||
kind = models.CharField(
|
||||
max_length=32,
|
||||
choices=KIND_CHOICES,
|
||||
default='machine',
|
||||
default='ssh',
|
||||
)
|
||||
|
||||
#ssh_username = models.CharField(
|
||||
@ -1134,8 +1134,8 @@ class Credential(CommonModelNameNotUnique):
|
||||
)
|
||||
|
||||
@property
|
||||
def needs_ssh_password(self):
|
||||
return not self.ssh_key_data and self.ssh_password == 'ASK'
|
||||
def needs_password(self):
|
||||
return not self.ssh_key_data and self.password == 'ASK'
|
||||
|
||||
@property
|
||||
def needs_ssh_key_unlock(self):
|
||||
@ -1149,7 +1149,7 @@ class Credential(CommonModelNameNotUnique):
|
||||
@property
|
||||
def passwords_needed(self):
|
||||
needed = []
|
||||
for field in ('ssh_password', 'sudo_password', 'ssh_key_unlock'):
|
||||
for field in ('password', 'sudo_password', 'ssh_key_unlock'):
|
||||
if getattr(self, 'needs_%s' % field):
|
||||
needed.append(field)
|
||||
return needed
|
||||
@ -1552,6 +1552,9 @@ class ProjectUpdate(CommonTask):
|
||||
editable=False,
|
||||
)
|
||||
|
||||
def get_absolute_url(self):
|
||||
return reverse('main:project_update_detail', args=(self.pk,))
|
||||
|
||||
def _get_parent_instance(self):
|
||||
return self.project
|
||||
|
||||
|
||||
@ -59,7 +59,7 @@ SUMMARIZABLE_FK_FIELDS = {
|
||||
'groups_with_active_failures',
|
||||
'has_inventory_sources'),
|
||||
'project': DEFAULT_SUMMARY_FIELDS + ('status',),
|
||||
'credential': DEFAULT_SUMMARY_FIELDS,
|
||||
'credential': DEFAULT_SUMMARY_FIELDS + ('kind',),
|
||||
'permission': DEFAULT_SUMMARY_FIELDS,
|
||||
'job': DEFAULT_SUMMARY_FIELDS + ('status', 'failed',),
|
||||
'job_template': DEFAULT_SUMMARY_FIELDS,
|
||||
@ -883,6 +883,8 @@ class CredentialSerializer(BaseSerializer):
|
||||
|
||||
def validate(self, attrs):
|
||||
''' some fields cannot be changed once written '''
|
||||
return attrs
|
||||
# FIXME: Don't need this anymore?
|
||||
if self.object is not None:
|
||||
# this is an update
|
||||
if 'user' in attrs and self.object.user != attrs['user']:
|
||||
@ -927,13 +929,14 @@ class JobSerializer(BaseSerializer):
|
||||
|
||||
class Meta:
|
||||
model = Job
|
||||
fields = BASE_FIELDS + ('job_template', 'job_type', 'inventory',
|
||||
'project', 'playbook', 'credential',
|
||||
'forks', 'limit', 'verbosity', 'extra_vars',
|
||||
'job_tags', 'launch_type', 'status', 'failed',
|
||||
'result_stdout', 'result_traceback',
|
||||
'passwords_needed_to_start', 'job_args',
|
||||
'job_cwd', 'job_env')
|
||||
fields = ('id', 'url', 'related', 'summary_fields', 'created',
|
||||
'modified', 'job_template', 'job_type', 'inventory',
|
||||
'project', 'playbook', 'credential',
|
||||
'forks', 'limit', 'verbosity', 'extra_vars',
|
||||
'job_tags', 'launch_type', 'status', 'failed',
|
||||
'result_stdout', 'result_traceback',
|
||||
'passwords_needed_to_start', 'job_args',
|
||||
'job_cwd', 'job_env')
|
||||
|
||||
def get_related(self, obj):
|
||||
if obj is None:
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user