diff --git a/awx/main/migrations/0093_v360_personal_access_tokens.py b/awx/main/migrations/0093_v360_personal_access_tokens.py new file mode 100644 index 0000000000..1dd1bbc094 --- /dev/null +++ b/awx/main/migrations/0093_v360_personal_access_tokens.py @@ -0,0 +1,27 @@ +# Generated by Django 2.2.4 on 2019-09-12 14:50 + +from django.db import migrations, models + +from awx.main.models import CredentialType +from awx.main.utils.common import set_current_apps + + +def setup_tower_managed_defaults(apps, schema_editor): + set_current_apps(apps) + CredentialType.setup_tower_managed_defaults() + + +class Migration(migrations.Migration): + + dependencies = [ + ('main', '0092_v360_webhook_mixin'), + ] + + operations = [ + migrations.AlterField( + model_name='credentialtype', + name='kind', + field=models.CharField(choices=[('ssh', 'Machine'), ('vault', 'Vault'), ('net', 'Network'), ('scm', 'Source Control'), ('cloud', 'Cloud'), ('token', 'Personal Access Token'), ('insights', 'Insights'), ('external', 'External')], max_length=32), + ), + migrations.RunPython(setup_tower_managed_defaults), + ] diff --git a/awx/main/models/credential/__init__.py b/awx/main/models/credential/__init__.py index 07bfe645d8..0091582252 100644 --- a/awx/main/models/credential/__init__.py +++ b/awx/main/models/credential/__init__.py @@ -322,6 +322,7 @@ class CredentialType(CommonModelNameNotUnique): ('net', _('Network')), ('scm', _('Source Control')), ('cloud', _('Cloud')), + ('token', _('Personal Access Token')), ('insights', _('Insights')), ('external', _('External')), ) @@ -968,6 +969,54 @@ ManagedCredentialType( } ) +ManagedCredentialType( + namespace='github_token', + kind='token', + name=ugettext_noop('Github Personal Access Token'), + managed_by_tower=True, + inputs={ + 'fields': [{ + 'id': 'token', + 'label': ugettext_noop('Token'), + 'type': 'string', + 'secret': True, + }], + 'required': ['token'], + }, +) + +ManagedCredentialType( + namespace='gitlab_token', + kind='token', + name=ugettext_noop('Gitlab Personal Access Token'), + managed_by_tower=True, + inputs={ + 'fields': [{ + 'id': 'token', + 'label': ugettext_noop('Token'), + 'type': 'string', + 'secret': True, + }], + 'required': ['token'], + }, +) + +ManagedCredentialType( + namespace='bitbucket_token', + kind='token', + name=ugettext_noop('Bitbucket Personal Access Token'), + managed_by_tower=True, + inputs={ + 'fields': [{ + 'id': 'token', + 'label': ugettext_noop('Token'), + 'type': 'string', + 'secret': True, + }], + 'required': ['token'], + }, +) + ManagedCredentialType( namespace='insights', kind='insights',