Commit Graph
100 Commits
Author SHA1 Message Date
Aaron Tan 1c2621cd60 Implement session-based and OAuth 2 authentications
Relates #21. Please see acceptance docs for feature details.

Signed-off-by: Aaron Tan <jangsutsr@gmail.com>
2018-02-22 15:18:12 -05:00
Aaron Tan 6c2a7f3782 Merge pull request #906 from jangsutsr/refactor_named_url_tests
Refactor named URL unit tests
2018-01-04 14:20:27 -05:00
Aaron Tan 54bf7e13d8 Refactor named URL unit tests
The original tests set no longer works after Django 1.11 due to more
strict rules against dynamic model definition. The refactored tests set
aims at each existing model that apply named URL rules,  instead of
abstract general use cases, thus significantly improves maintainability
and readability.

Signed-off-by: Aaron Tan <jangsutsr@gmail.com>
2018-01-03 14:00:30 -05:00
Aaron Tan a2fd78add4 Implement item copy feature
See acceptance doc for implement details.

Signed-off-by: Aaron Tan <jangsutsr@gmail.com>
2018-01-02 10:20:44 -05:00
Aaron Tan 1ff0591553 Merge pull request #603 from jangsutsr/fix-7737-1
Follow up fix #542
2017-12-01 16:07:14 -05:00
Aaron Tan 58ad214dcf Follow up fix #542
Relates
https://github.com/ansible/ansible-tower/issues/7737#issuecomment-348566452

Signed-off-by: Aaron Tan <jangsutsr@gmail.com>
2017-12-01 15:58:33 -05:00
Aaron Tan 4c43afda19 Merge pull request #586 from jangsutsr/fix-7768
Supress exception with concurrent deletion
2017-11-29 13:40:45 -05:00
Aaron Tan 0641c6b0a6 Supress exception with concurrent deletion
Relates https://github.com/ansible/ansible-tower/issues/7768

This issue, as well as
https://github.com/ansible/ansible-tower/issues/7622, both rooted in a
concurrency issue of Django ORM:
https://github.com/ansible/ansible-tower/issues/762://code.djangoproject.com/ticket/28806

The solution related deals specifically with the related issue, but is
not a general solution. A general workaround can be found in
https://github.com/ansible/tower/pull/500.

Signed-off-by: Aaron Tan <jangsutsr@gmail.com>
2017-11-17 16:29:08 -05:00
Aaron Tan 962de13965 Merge pull request #503 from jangsutsr/fix-7712
[3.2.2]Special handle host related_search_fields
2017-10-27 11:16:09 -04:00
Aaron Tan 7211ff22df Special handle host related_search_fields
Relates #7712 of ansible-tower.

UI uses `related_search_fields` list to populate help text for resourse
search, `ansible_facts` is searchable via UI but the general pickup
logic would ignore it. So make it a corner case.

Signed-off-by: Aaron Tan <jangsutsr@gmail.com>
2017-10-27 10:55:43 -04:00
Aaron Tan 1ea3d55167 Merge pull request #550 from jangsutsr/fix-7737-1
Follow up fix #7737
2017-10-26 11:29:05 -04:00
Aaron Tan 7181bd1c9b Follow up fix #7737
The original fix introduced migration failure, this PR managed to fix
that.

Signed-off-by: Aaron Tan <jangsutsr@gmail.com>
2017-10-26 11:15:07 -04:00
Aaron Tan e24e1fc1f0 Merge pull request #542 from jangsutsr/fix-7737
[3.2.2]support `AZURE_CLOUD_ENVIRONMENT`
2017-10-26 10:20:14 -04:00
Aaron Tan f28b48a473 support AZURE_CLOUD_ENVIRONMENT
Relates #7737 of ansible-tower.

Signed-off-by: Aaron Tan <jangsutsr@gmail.com>
2017-10-26 10:11:21 -04:00
Aaron Tan e999b35c42 Merge pull request #493 from jangsutsr/fix-474
Add protection against credential getattr
2017-10-25 09:45:25 -04:00
Aaron Tan 725cc469cf Merge pull request #544 from jangsutsr/fix-7747
[3.2.2]Include vault credential check in job relaunch
2017-10-24 12:14:01 -04:00
Aaron Tan 553e81f888 Add protection against credential getattr
Relates #474.

Add protection in `__getattr__` method to prevent possible infinite
recursion loop.

Signed-off-by: Aaron Tan <jangsutsr@gmail.com>
2017-10-24 12:08:41 -04:00
Aaron Tan 665a4d83e3 Include vault credential check in job relaunch
Relates #7747 of ansible-tower.

Signed-off-by: Aaron Tan <jangsutsr@gmail.com>
2017-10-24 11:00:13 -04:00
Aaron Tan bcd2a8f211 Merge pull request #382 from jangsutsr/fix-264
Implement workflow job failure
2017-10-12 16:34:08 -04:00
Aaron Tan 5287e5c111 Implement workflow job failure
Relates #264.

This PR proposed and implemented a way of defining workflow failure
state:

A workflow job fails if one of the conditions below satisfies.
* At least one node runs into states `canceled` or `error`.
* At least one leaf node runs into states `failed`, but no child node is
  spawned to run (no error handler).

Signed-off-by: Aaron Tan <jangsutsr@gmail.com>
2017-10-12 11:08:33 -04:00
Aaron Tan 9dd4c7aaa3 Add extra encoding to ldap_dn verification
Relates #391.

Upstream `python-ldap` (surprisingly) does not support utf-8 DN. So
explicit encoding is needed.

Signed-off-by: Aaron Tan <jangsutsr@gmail.com>
2017-10-11 12:28:26 -04:00
Aaron Tan 1454000b91 Merge pull request #522 from jangsutsr/ldap_docs
Add LDAP deploy instructions
2017-10-11 10:07:29 -04:00
Aaron Tan 82160e2072 Add LDAP deploy instructions
Signed-off-by: Aaron Tan <jangsutsr@gmail.com>
2017-10-10 14:54:53 -04:00
Aaron Tan 8d19555cf1 Merge pull request #519 from jangsutsr/fix-7726
Disable inventory var overwrite in inv import
2017-10-10 14:38:50 -04:00
Aaron Tan b9483c28b0 Disable inventory var overwrite in inv import
Relates #7726 of ansible-tower.

Signed-off-by: Aaron Tan <jangsutsr@gmail.com>
2017-10-10 14:38:50 -04:00
Aaron Tan d7eba47adb Merge pull request #456 from jangsutsr/fix-7656
[3.2.2]Remove search term separators
2017-10-10 14:38:47 -04:00
Aaron Tan 358ef76529 Remove search term separators
Relates #7656 in ansible-tower.

We have been using comma `,` and space ` ` to separate search terms in
query string `<field_name>__search=<search terms>`, however in general
we can always use `&` to achieve separation like
`<field_name>__search=<search term 1>&<field_name>__search=<search term
2>&...`. Using specific delimiters makes it impossible for search terms
to contain those delimiters, so they are better off being removed.

Signed-off-by: Aaron Tan <jangsutsr@gmail.com>
2017-10-10 14:38:47 -04:00
Aaron Tan bb628c52ad Merge pull request #487 from jangsutsr/fix-7586
[3.2.2]Fix SAML auth behind load balancer issue.
2017-10-10 14:38:47 -04:00
Aaron Tan cc8b115c6a Fix SAML auth behind load balancer issue.
Relates to #7586 of ansible-tower as a follow-up of fix #420 of tower.

The original fix works for Django version 1.9 and above, this PR
expanded the solution to Django verison 1.8 and below.

Signed-off-by: Aaron Tan <jangsutsr@gmail.com>
2017-10-10 14:38:47 -04:00
Aaron Tan 08a784d50c Merge pull request #474 from jangsutsr/fix-7386
Include Tower configurations into activity stream
2017-10-10 14:38:45 -04:00
Aaron Tan a11e33458f Include Tower configurations into activity stream
Relates #7386 of ansible-tower.

Due to the uniqueness of Tower configuration datastore model, it is not
fully compatible with activity stream workflow. This PR introduced
setting field for activitystream model along with other changes to make
Tower configuration a special case for activity streams.

Signed-off-by: Aaron Tan <jangsutsr@gmail.com>
2017-10-10 14:38:45 -04:00
Aaron Tan 84fdfbb898 Merge pull request #469 from jangsutsr/fix-7684
[3.2.2] Prevent slugify username from social sso backends
2017-10-10 14:38:45 -04:00
Aaron Tan f4ab979b59 Prevent slugify username from social sso backends
Relates #7684 of ansible-tower.

Slugify username in python-social-auth means disallowing
any non-alphanumerial characters, which is an over-kill
for awx/tower, thus disabling it.

Signed-off-by: Aaron Tan <jangsutsr@gmail.com>
2017-10-10 14:38:45 -04:00
Aaron Tan 723f4b0a7a Merge pull request #463 from jangsutsr/7666-fix
Restore SAML enterprise user auth logic
2017-09-26 10:03:08 -04:00
Aaron Tan 9bae656676 Restore SAML enterprise user auth logic
Connect #7666 of ansible-tower and follow up original fix tower #455.
The original fix solves the problem of duplicated db keys, but breaks a
rule of enterprise users that 'Enterprise users cannot be
created/authenticated if non-enterprise users with the same name has
already been created in Tower.'. This fix resumes that rule.

Signed-off-by: Aaron Tan <jangsutsr@gmail.com>
2017-09-26 09:51:42 -04:00
Aaron Tan ba9668623a Merge pull request #254 from ansible/revert-211-fix_114
Revert "Add Tower Configuration setting AUTH_LDAP_GROUP_TYPE_MEMBER_ATTR"
2017-09-22 10:12:50 -04:00
Aaron Tan 93341d6108 Revert "Add Tower Configuration setting AUTH_LDAP_GROUP_TYPE_MEMBER_ATTR" 2017-09-22 09:48:32 -04:00
Aaron Tan ee762d4bbd Merge pull request #211 from jangsutsr/fix_114
Add Tower Configuration setting AUTH_LDAP_GROUP_TYPE_MEMBER_ATTR
2017-09-19 13:28:30 -04:00
Aaron Tan d271757eba Fix issue #114
Add Tower Configuration setting AUTH_LDAP_GROUP_TYPE_MEMBER_ATTR.

Signed-off-by: Aaron Tan <jangsutsr@gmail.com>
2017-09-19 11:15:45 -04:00
Aaron Tan bf7c96defb Merge pull request #372 from jangsutsr/7536_prevent_mistakenly_truncate_sgr
Prevent mistakenly truncate ANSI SGR code in job event stdout
2017-09-11 09:32:58 -04:00
Aaron Tan 42bbd7d47a Merge pull request #18 from jangsutsr/wrap_up_ctint_unit_tests
Wrap up Tower configuration unit tests
2017-09-07 09:49:14 -04:00
Aaron Tan 94d4a7e3f0 Fix 7587: Remove credential_type_id in API v1 2017-09-06 10:39:49 -04:00
Aaron Tan 64b6b18a81 Wrap up Tower configuration unit tests 2017-09-05 15:16:51 -04:00
Aaron Tan c70362cb57 Merge pull request #381 from jangsutsr/7515_enhance_ad_hoc_cmd_evt_save_query_for_fetching_hosts
Enhance query str in AHC event save to consider smart inventory
2017-09-01 16:01:43 -04:00
Aaron Tan c866b9d768 Enhance query string in ad hoc command event save to consider smart inventory 2017-09-01 10:15:29 -04:00
Aaron Tan 6f96df6bbb Merge pull request #379 from jangsutsr/7514_enhance_job_event_save_query_for_fetching_hosts
Enhace query string in job event save to consider smart inventory
2017-09-01 09:53:14 -04:00
Aaron Tan 839f3a4d2c Enhace query string in job event save to consider smart inventory 2017-08-31 14:39:39 -04:00
Aaron Tan 15f57eb911 Merge pull request #333 from jangsutsr/7505_disallow_changing_credential_type_of_credential
Disallow changing credential_type of an existing credential
2017-08-31 11:37:43 -04:00
Aaron Tan 68391301b0 Pick up workflow cornercase in get_user_capabilities 2017-08-31 11:31:41 -04:00
Aaron Tan 276bed2d0b Disallow changing credential_type of an existing credential 2017-08-31 11:25:01 -04:00
Aaron Tan 35110ef738 Prevent mistakenly truncate ANSI SGR code in job event stdout 2017-08-31 10:19:04 -04:00
Aaron Tan 3874476d84 Merge pull request #357 from jangsutsr/6103_enhance_log_protocol_choice_layout
Enhance LOG_AGGREGATOR_PROTOCOL choice options layout
2017-08-29 17:02:47 -04:00
Aaron Tan 68cccb77a0 Enhance LOG_AGGREGATOR_PROTOCOL choice options layout 2017-08-29 11:13:36 -04:00
Aaron Tan fd08314dcb Merge pull request #345 from jangsutsr/7532_disallow_custom_inv_src_from_using_wrong_cred
Disallow custom inventory sources from using meaningless credentials
2017-08-28 09:45:19 -04:00
Aaron Tan 853b9d1001 Merge pull request #343 from jangsutsr/7530_add_pending_deletion_check_to_job_relaunch_validation
Add pending_deletion check to job relaunch validation
2017-08-25 16:50:16 -04:00
Aaron Tan 90bff467a4 Merge pull request #326 from jangsutsr/7500_add_workflow_license_check_to_user_capabilities
Allow lower-licensed user to delete workflow resources
2017-08-25 16:49:12 -04:00
Aaron Tan 11e924b344 Disallow custom inventory sources from using meaningless credentials 2017-08-25 16:47:08 -04:00
Aaron Tan baa7478ff0 Add pending_deletion check to job relaunch validation 2017-08-25 15:34:32 -04:00
Aaron Tan bd7cd9281b Allow lower-licensed user to delete workflow resources 2017-08-24 15:59:08 -04:00
Aaron Tan c2e8200c81 Merge pull request #319 from jangsutsr/7496_handle_empty_named_url_id_cornercase
Handle named URL processing corner case where identifier is empty string
2017-08-22 14:25:06 -04:00
Aaron Tan c321819547 Handle named URL processing corner case where identifier is empty string 2017-08-22 10:40:45 -04:00
Aaron Tan f14a47caa0 Merge pull request #311 from jangsutsr/7484_update_ctint_help_to_remove_newline_escape
Update Tower Configuration help text to remove \n escape
2017-08-21 16:29:00 -04:00
Aaron Tan 1df3432130 Merge pull request #298 from jangsutsr/7479_prevent_accessing_none_attr_in_host_summary_repr
Prevent accessing None attributes in host summary __unicode__
2017-08-21 16:16:24 -04:00
Aaron Tan d243b587f4 Update Tower Configuration help text to remove \n escape. 2017-08-21 10:27:42 -04:00
Aaron Tan ff51fe3050 Prevent accessing None attributes in host summary __unicode__ 2017-08-21 09:56:11 -04:00
Aaron Tan 708efbd165 Merge pull request #300 from jangsutsr/7482_tower_configuration_help_text_updates
Update API help text for Tower configuration
2017-08-18 18:45:43 -04:00
Aaron Tan 0121e5c22b Update API help text for Tower configuration. 2017-08-18 15:02:12 -04:00
Aaron Tan ee06dab4d6 Merge pull request #283 from jangsutsr/6313_add_time_unit_to_uj_timeout_help_text
Add time unit to all unified job timeout conf help texts
2017-08-16 09:45:19 -04:00
Aaron Tan 4bc26310ac Add time unit to all unified job timeout conf help texts 2017-08-15 16:16:34 -04:00
Aaron Tan 3fceb36d0e Merge pull request #271 from jangsutsr/5658_make_up_missing_super_call_in_nt_serializer
Add missing super call in NotificationTemplateSerializer
2017-08-15 11:58:59 -04:00
Aaron Tan fd8da1e7ce Add missing super call in NotificationTemplateSerializer 2017-08-15 11:10:55 -04:00
Aaron Tan 0c652f2a3a Merge pull request #237 from jangsutsr/7412_update_unified_job_deletion_behavior
Prevent deleting unified jobs with active status
2017-08-10 12:11:27 -04:00
Aaron Tan 497aa13562 Prevent deleting unified jobs with active status 2017-08-10 12:01:25 -04:00
Aaron Tan bf67477404 Merge pull request #204 from jangsutsr/make_up_missing_migrations
Make up missing migrations
2017-08-08 12:23:12 -04:00
Aaron Tan d8ebaa2851 Make up missing migrations 2017-08-08 10:35:19 -04:00
Aaron Tan 81db655bd1 Merge pull request #211 from jangsutsr/changelog_updates
CHANGELOG updates
2017-08-07 14:54:01 -04:00
Aaron Tan 21d82e6687 CHANGELOG updates 2017-08-07 13:44:23 -04:00
Aaron Tan 119d96c950 Merge pull request #203 from jangsutsr/7350_force_providing_tacacs_sec_when_host_is_set
Force providing TACACSPLUS_SECRET when TACACSPLUS_HOST is set
2017-08-07 13:24:38 -04:00
Aaron Tan 1e77f909a5 Force providing TACACSPLUS_SECRET when TACACSPLUS_HOST is set 2017-08-07 12:12:05 -04:00
Aaron Tan 53d1efe30a Merge pull request #191 from jangsutsr/7387_prevent_passing_all_to_gce_zone
Prevent passing "all" to GCE_ZONE
2017-08-04 14:41:17 -04:00
Aaron Tan 148af54af7 Prevent passing "all" to GCE_ZONE 2017-08-04 14:30:37 -04:00
Aaron Tan 4fd637a06b Merge pull request #184 from jangsutsr/7382_move_inv_delete_activity_stream_into_view
Move inventory delete activity stream into view
2017-08-04 12:22:38 -04:00
Aaron Tan bba1e46218 Move inventory delete activity stream into view 2017-08-04 10:37:34 -04:00
Aaron Tan 19bd051011 Merge pull request #165 from jangsutsr/7352_prevent_setting_scm_fields_for_non_scm_is
Prevent setting SCM fields for non-SCM inventory sources
2017-08-03 18:04:13 -04:00
Aaron Tan c1c5b01a07 Merge pull request #172 from jangsutsr/7375_make_isolated_conn_keys_readonly
Make isolated connection keys read-only
2017-08-03 10:55:11 -04:00
Aaron Tan e03ab95701 Make isolated connection keys read-only 2017-08-03 10:32:28 -04:00
Aaron Tan 195c0bdfe4 Prevent setting SCM fields for non-SCM inventory sources 2017-08-02 17:22:15 -04:00
Aaron Tan c1e16c2f46 Merge pull request #73 from jangsutsr/6986_make_up_default_values_for_tower_config
Make up default values for tower configurations
2017-08-01 20:33:41 -04:00
Aaron Tan c44fe85fe2 Merge pull request #107 from jangsutsr/7334_make_up_missing_create_kwargs_for_inv_import
Make up missing create kwargs in inventory import
2017-08-01 20:32:26 -04:00
Aaron Tan 57375dc7f1 Merge pull request #101 from jangsutsr/7322_prevent_saving_jt_with_pending_deleting_inv
Clear related job templates when inventory is deleted
2017-08-01 20:32:06 -04:00
Aaron Tan cc481aa33b Clear related job templates when inventory is deleted 2017-07-31 13:47:58 -04:00
Aaron Tan 48c3cfad9e Make up missing create kwargs in inventory import 2017-07-28 17:06:05 -04:00
Aaron Tan 7df6fbf0a8 Merge pull request #66 from jangsutsr/3467_move_satellite_ini_config_from_env_to_source_var
Move Satellite 6 .ini configurations from env variables to source_vars
2017-07-28 11:07:18 -04:00
Aaron Tan f253d2da16 Merge pull request #93 from jangsutsr/7321_prevent_unprivileged_user_from_deleting_is
Prevent unprivileged users from deleting inventory sources
2017-07-28 09:39:58 -04:00
Aaron Tan 5a540a877e Prevent unprivileged users from deleting inventory sources 2017-07-27 16:29:03 -04:00
Aaron Tan 580871a60b Merge pull request #70 from jangsutsr/5913_allow_parsing_null_json_data
Allow parsing null JSON data
2017-07-27 16:05:26 -04:00
Aaron Tan b69321a91e Allow parsing null JSON data 2017-07-27 15:14:50 -04:00
Aaron Tan e8bd477f1e Make up default values for tower configurations 2017-07-27 15:02:25 -04:00
Aaron Tan 323d7757dd Move Satellite 6 .ini configurations from env variables to source_vars 2017-07-27 14:08:07 -04:00
Aaron Tan c3f2a8a140 Merge pull request #81 from jangsutsr/6344_enforce_extra_vars_override_hierachy
Enforce extra_vars override hierachy
2017-07-27 09:21:25 -04:00