Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1988 commits
Select commit Hold shift + click to select a range
a238c5d
Bump django to 4.2.21 (#6964)
simaishi Jun 9, 2025
1a4dbcf
🧪 Delegate artifact merge and garbage collection to GH (#16019)
webknjaz Jun 10, 2025
f1e5cad
🧪 Delegate artifact merge and garbage collection to GH (#16019) (#6973)
AlanCoding Jun 10, 2025
6182d68
Add back PYTEST_ARGS as PYTEST_ADOPTS (#16024)
AlanCoding Jun 11, 2025
873e6a0
Update collection args (#16025)
pb82 Jun 11, 2025
a909083
Fix failing api-test (#16027)
AlanCoding Jun 11, 2025
024fe55
Fix collection whitespace issue (#16028)
AlanCoding Jun 11, 2025
ee19ee0
Update workflow to allow the workflow to write (#6975)
thedoubl3j Jun 11, 2025
3d027ba
AAP-44233 Create credential types in new migration step (#6969)
AlanCoding Jun 11, 2025
635e947
Add placeholder migration (#16010)
AlanCoding Jun 11, 2025
d005402
🧪 Recover full-source coverage in `pytest-cov` (#16020)
webknjaz Jun 12, 2025
c975b1a
Do not apply ANSIBLE_STANDARD_SETTINGS_FILES to job environment varia…
AlanCoding Jun 12, 2025
db874f5
🧪 Bump the expected Codecov uploads number to 9 (#16023)
webknjaz Jun 12, 2025
3db2e04
🧪 Hide false negative warnings by `coveragepy` (#16021)
webknjaz Jun 12, 2025
5752c7a
[2.5 Backport] AAP-46038 database deadlock (#6947)
djyasin Jun 16, 2025
022314b
Mark the collection role module as deprecated (#15455)
AlanCoding Jun 18, 2025
11a9a2b
Pin receptorctl 1.5.7 (#6979)
matoval Jun 24, 2025
1330a1b
Remove api version from hardcoded inventory url (#16039)
jessicamack Jun 25, 2025
1afd230
Remove api version from hardcoded inventory url (#16039) (#6980)
jessicamack Jun 25, 2025
20b203e
AAP-47495 Hide CSRF_TRUSTED_ORIGINS (#16035)
TheRealHaoLiu Jun 30, 2025
d6482d3
AAP-48070 Remove ALLOW_LOCAL_RESOURCE_MANAGEMENT setting and enable l…
TheRealHaoLiu Jun 30, 2025
ec0732c
AAP-48139 add branch sync between release_4.6 and stable-2.6 (#6982)
thedoubl3j Jun 30, 2025
bf0567c
AAP-48392 Handle DAB RBAC either before or after new type model (for …
AlanCoding Jul 2, 2025
69df7d0
[AAP-48771]wfjt migration to catch renaming (#6991)
vluis26 Jul 9, 2025
1d4b555
Update feature_branch_sync.yml (#7006)
thedoubl3j Jul 10, 2025
03cd450
[AAP-47877] Backport collection updates (#6992)
thedoubl3j Jul 10, 2025
7977e86
Use full slug in DAB RBAC test (#16053)
AlanCoding Jul 14, 2025
e8b2920
[4.6][dependency] CVE 2025 47273 (#7020)
thedoubl3j Jul 22, 2025
550ae51
Revert "[4.6][dependency] CVE 2025 47273 (#7020)" (#7027)
thedoubl3j Jul 23, 2025
3ccc5e5
add stable to release workflows
thedoubl3j Jul 24, 2025
cd12f4d
Update Collections Syntax to get Collection related CI Checks Passing…
djyasin Aug 6, 2025
80f9f87
Bug fix for AAP-47771 data migration update (#16058)
djyasin Aug 6, 2025
290dec8
fixes UnboundLocalError in POST /attach (#16062)
robinbobbitt Aug 6, 2025
793c85e
AAP-43883: clear cached LICENSE setting on change (#16065)
robinbobbitt Aug 7, 2025
902f263
AAP-49910 - Delete legacy authenticator code
zkayyali812 Aug 1, 2025
4757785
Pin ansible-core for collection tests (#7030)
elyezer Jul 25, 2025
9033e82
fixes UnboundLocalError in POST /attach (#16062) (#7059)
robinbobbitt Aug 14, 2025
09b539b
remove requirement for galaxy credentials to belong to an organizatio…
pb82 Aug 14, 2025
11f31ef
AAP-43883: clear cached LICENSE setting on change (#16065) (#7064)
robinbobbitt Aug 14, 2025
e82de50
Fix controller_oauthtoken regression and more
chrismeyersfsu Aug 14, 2025
e8c4b30
remove requirement for galaxy credentials to belong to an organizatio…
pb82 Aug 15, 2025
461678d
Allow creating galaxy credential types without an organization (#16077)
pb82 Aug 18, 2025
8fe4223
[AAP-47384] CVE 2025 47273 (#7054)
thedoubl3j Aug 19, 2025
b730bfa
Continue work on collection ci (#16071)
djyasin Aug 20, 2025
4e332ac
AAP-45933 [2.5 Backport] AAP-4865 bug fact storage (#6945)
djyasin Aug 20, 2025
36ec5ef
update work flow to actually fail (#7069)
thedoubl3j Aug 21, 2025
8b13c75
Allow creating galaxy credential types without an organization (#1607…
pb82 Aug 28, 2025
e3a9d9f
[AAP-51443]CVE-2025-48432 (#7073)
jessicamack Aug 29, 2025
5ca76f3
Aap 49452 - support CONTROLLER_OPTIONAL_API_URLPATTERN_PREFIX in awxk…
pb82 Sep 2, 2025
51eb109
Fix issue with some modules not honoring Controller API prefix (#16080)
dleehr Sep 2, 2025
44e9dee
[Bug Fix 4.6] AAP-49077 Task stdout escapes quotes twice only with Co…
djyasin Sep 2, 2025
c36ce90
AAP-42929 : Retrieval of Projects of a Team and Teams of a Project (#…
stevensonmichel Sep 3, 2025
7fe525a
Fix issue with some modules not honoring Controller API prefix (#16080)
dleehr Sep 2, 2025
243e27c
Aap 49452 - support CONTROLLER_OPTIONAL_API_URLPATTERN_PREFIX in awxk…
pb82 Sep 2, 2025
05b6f4f
Aap 47760 - initial auth migration management command (#6981)
pb82 Jun 30, 2025
b70e884
AAP-47495 Hide CSRF_TRUSTED_ORIGINS (#16035) (#6984)
TheRealHaoLiu Jun 30, 2025
46710c4
AAP-48070 Remove ALLOW_LOCAL_RESOURCE_MANAGEMENT setting and enable l…
TheRealHaoLiu Jun 30, 2025
e4758e8
Split up migrators (#6986)
pb82 Jul 1, 2025
d98118a
compare authenticators and mappers before recreating them (#6989)
pb82 Jul 3, 2025
5345491
bump DAB dep to devel from stable-2.5 (#6988)
thedoubl3j Jul 7, 2025
c2c0f2b
[2.6] Remove controller specific role definitions (#7002)
fosterseth Jul 9, 2025
512857c
[AAP-48496] SAML Migration from Controller to Gateway (#6998)
mkanoor Jul 10, 2025
6b2e9a6
Adding Azure AD export command (#7010)
john-westcott-iv Jul 11, 2025
c5e55fe
Aap 48489 (#7003)
pb82 Jul 11, 2025
ab9bde3
add force flag to enforce updates even when authenticator already exi…
pb82 Jul 14, 2025
abc4692
feat: AAP-48498 RADIUS authenticator migrator (#7013)
rochacbruno Jul 16, 2025
c4a6b28
feat: AAP-48499 TACACS+ authenticator migrator (#7014)
rochacbruno Jul 16, 2025
e746589
Aap 49570 (#7022)
pb82 Jul 17, 2025
8e58fee
feat: Add migrator for Google OAuth2 authenticator (#7018)
fao89 Jul 18, 2025
0936b28
Migrate nested team memberships to direct team memberships (#7005)
jessicamack Jul 18, 2025
5e0870a
AAP-48510 Enable Service Tokens with the Authentication Migration Man…
tyraziel Jul 18, 2025
c5211df
[AAP-48863] SAML Mapping migration (#7011)
mkanoor Jul 18, 2025
b4ba759
Unit Test Refactor for test_import_auth_config_to_gateway (#7024)
tyraziel Jul 21, 2025
052166d
feat: OIDC Migrator (#7026)
rochacbruno Jul 28, 2025
58e237a
fix: address reviewer comments
rochacbruno Jul 28, 2025
44c53b0
Aap 49709 - settings migration (#7023)
pb82 Jul 28, 2025
ad461a3
fix: inconsistent return values in github migrator (#7035)
pb82 Jul 29, 2025
a3f2401
feat: exit code 1 if any migration fails (#7036)
pb82 Jul 29, 2025
c5fb0c3
AAP-47283 [2.6] Unified display of RBAC & synchronization (#7001)
AlanCoding Jul 29, 2025
d452098
[AAP-50446] Error handling enhancements and GATEWAY_BASE_URL override…
tyraziel Jul 30, 2025
a0b6083
Slightly better error handling for non 200 status codes from Gateway.…
tyraziel Aug 1, 2025
cf0bc16
fix: tacacs+ -> TACACSPLUS (#7039)
rochacbruno Aug 1, 2025
3e1b9b2
Improve redirect override (#7042)
pb82 Aug 5, 2025
7b56f23
Prevent remote sync if rbac sync is disabled (#7044)
fosterseth Aug 5, 2025
6bd7c38
enable azure ad authenticator by default (#7043)
pb82 Aug 5, 2025
dfad93c
Deprecate legacy OAuth2 Application feature (#7045)
stevensonmichel Aug 6, 2025
0b17007
AAP-49910 - Delete legacy authenticator code
zkayyali812 Aug 1, 2025
4f2d28d
Aap 50951 (#7053)
pb82 Aug 11, 2025
505ec56
feat: comprehensive refactor of SSO org/team mapping for Gateway auth…
john-westcott-iv Aug 12, 2025
5a89d7b
fix: order of role and attr in saml user_flags (#7050)
mkanoor Aug 12, 2025
df1c453
Fix type hints in gateway_mapping.py process_sso_user_list function (…
john-westcott-iv Aug 13, 2025
e9928ff
Disable SAML Authenticator upon migrate (#7062)
zkayyali812 Aug 13, 2025
a7eb1ef
[AAP-51531] Fix LDAP authentication mapping and bug in LDAP migration…
john-westcott-iv Aug 14, 2025
af2efec
fix: do not create multiple mappers for lists of emails or usernames …
pb82 Aug 20, 2025
bb46268
[AAP-52144] Remove AWX Prefix from the SAML migrator (#7072)
mkanoor Aug 28, 2025
d873743
[stable-2.6] Bump dependency (#7070)
TheRealHaoLiu Aug 28, 2025
d96727c
Remove 'Controller' from name (#7077)
tyraziel Aug 29, 2025
25896a8
Fix credential types no org (#7078)
pb82 Sep 2, 2025
58dcd2f
Bump setuptools to 80.9.0 (#7076)
TheRealHaoLiu Sep 2, 2025
2c96c48
feat: Add ORG_ADMINS_CAN_SEE_ALL_USERS and MANAGE_ORGANIZATION_AUTH t…
john-westcott-iv Sep 3, 2025
7dc4f14
Fix rebase merge conflicts
thedoubl3j Sep 4, 2025
8fb6a3a
Merge remote-tracking branch 'tower/test_stable-2.6' into merge_26_2
AlanCoding Sep 5, 2025
e63eba2
AAP-37812 Added mention about setting correct env variable in cli usa…
tvo318 Sep 9, 2025
0fa8135
Fix Role Definition Reverse Sync (#7097)
stevensonmichel Sep 11, 2025
38f8583
Use DAB utility to sync RoleDefinition compat role create (#7104)
AlanCoding Sep 15, 2025
55a7591
Resolve actions conflicts and delete unwatned files
AlanCoding Sep 12, 2025
24818b5
Re-apply PR 15862
AlanCoding Sep 18, 2025
b1944ba
Remove code intended to be removed
AlanCoding Sep 18, 2025
dd02d56
Prefer devel setup.cfg and TODO marks for expected awx-plugin
AlanCoding Sep 18, 2025
a285843
AAP-35227 Extend role_check.py to delete orphaned InstanceLink object…
djulich Sep 17, 2025
b31da10
Merge remote-tracking branch 'awx/devel' into merge_26_2
AlanCoding Sep 18, 2025
873f5c0
Remove some attached methods from User model (#15325)
AlanCoding Sep 22, 2025
1f06d1b
[AAP-44277] License module now validates API responses for subscripti…
arrestle Sep 22, 2025
d0a99c3
Use action before schema logic, fix failure to upload schema (#16099)
AlanCoding Sep 23, 2025
f1edbd8
Add npm cache path to fix UI building (push images job) (#16097)
AlanCoding Sep 23, 2025
98697a8
Fix Grafana notification bug (#16104)
jessicamack Sep 29, 2025
ceed41d
Sharing Credentials Across Organizations (#16106)
stevensonmichel Sep 30, 2025
6db08bf
Rewrite the s3 upload step to fix breakage with new Ansible version (…
AlanCoding Sep 30, 2025
2729076
Add basic auth to subscription management API (#16103)
fosterseth Oct 2, 2025
622f6ea
AAP-53980 Disconnect logic to fill in role parents (#15462)
AlanCoding Oct 2, 2025
f51af03
Create system_administrator rbac role in migration
chrismeyersfsu Oct 1, 2025
0d18308
[AAP-46830]: Fix AWX CLI authentication with AAP Gateway environments…
arrestle Oct 2, 2025
612e8e7
Fix duplicate metrics in AWX subsystem_metrics (#15964)
cbcoutinho Oct 9, 2025
51b2524
Gracefully handle hostname change in metrics code
chrismeyersfsu Oct 7, 2025
77fab1c
Update dependabot to check python deps (#16127)
thedoubl3j Oct 9, 2025
300605f
Make subscriptions credentials mutually exclusive (#16126)
fosterseth Oct 9, 2025
309724b
Add SonarQube Coverage and report generation (#16112)
thedoubl3j Oct 10, 2025
72a42f2
Remove 'UI' from PR template component options (#16123)
thedoubl3j Oct 13, 2025
f3fd994
Update dependencies (#16122)
jessicamack Oct 15, 2025
0d9483b
Added Django and API requirements to AWX Contributor Docs for POC (#1…
tvo318 Oct 16, 2025
f725911
Fix migration failure for 0200 (#16135)
TheRealHaoLiu Oct 20, 2025
a53fdad
Fix f-string in log that is broken (#16132)
AlanCoding Oct 20, 2025
d1d3a34
Add new api schema check workflow (#16143)
thedoubl3j Oct 27, 2025
5be4462
Update sonar and CI (#16153)
thedoubl3j Nov 3, 2025
f3f10ae
[AAP-42616] Bump receptor collection version to 2.0.6 (#16156)
fincamd Nov 5, 2025
5ea2fe6
Fix failing Collection CI Checks (#16157)
djyasin Nov 6, 2025
335a4bb
AAP-45927 Add drf-spectacular (#16154)
Jaapis Nov 10, 2025
f818595
Change Swagger UI endpoint from /api/swagger/ to /api/docs/ (#16172)
Jaapis Nov 12, 2025
2fa2cd8
Add timeout and on duplicate to system tasks (#16169)
fosterseth Nov 13, 2025
b021179
AAP-29938 add force flag to refspec (#16173)
pb82 Nov 13, 2025
4e1911f
Bump Django to 4.2.26 to agree with DAB changes (#16183)
djyasin Nov 19, 2025
4db52e0
Fix collectstatic (#16162)
chrismeyersfsu Nov 21, 2025
e03beb4
Add hcp_terraform to list of expected cred types to fix failing api t…
djyasin Nov 24, 2025
2b2f2b7
Move to Runtime Platform Flags (#16148)
fao89 Nov 25, 2025
0d86874
Organize S3 schema uploads by product (awx/tower) (#16190)
Jaapis Nov 27, 2025
4f41b50
AAP-57817 Add Redis connection retry using redis-py 7.0+ built-in (#…
djyasin Dec 1, 2025
a20f299
Add x-ai-description to schema (#16186)
fosterseth Dec 2, 2025
be30a75
Removal of Warning for Distro Deprecation (#16193)
stevensonmichel Dec 2, 2025
711b018
cache dashboard query (#16165)
kdelee Dec 3, 2025
b241568
Upgrade to Django 5.2 LTS (#16185)
TheRealHaoLiu Dec 3, 2025
f935134
Unpin rsyslog in container (#16203)
fosterseth Dec 10, 2025
054f603
AAP-47956 Use pg_notify for cancel and debugging, abandon socket appr…
AlanCoding Dec 10, 2025
04fadab
Remove unused ANSIBLE_BASE_PERMISSION_MODEL setting (#16198)
TheRealHaoLiu Dec 16, 2025
2fbfe4c
Fix __pycache__ directory removal in clean target (#16196)
TheRealHaoLiu Dec 16, 2025
7a58377
Update ENV pattern in Dockerfile (#16202)
AlanCoding Dec 16, 2025
d7eb714
Remove custom docs endpoint in DAB now (#16204)
AlanCoding Dec 16, 2025
41f1ffc
AAP-45541 Add test to recreate jobs/4075584/job_events/children_summa…
chrismeyersfsu Dec 17, 2025
e2c1c51
AAP-58457 Update UT for removed IPv6 feature flag
Dec 22, 2025
4005951
Bump requirement because version was yanked from PyPI (#16212)
AlanCoding Jan 2, 2026
48c7534
AAP-60452 Remove the dynamic log level filter for the dispatcherd mai…
AlanCoding Jan 2, 2026
de86b93
AAP-59874: Update to Python 3.12 (#16208)
jessicamack Jan 7, 2026
049a4b6
Remove graph_jobs management command and asciichartpy dependency (#16…
TheRealHaoLiu Jan 8, 2026
10a2946
Fix requirement for python3.12 (#16215)
TheRealHaoLiu Jan 8, 2026
3cba5e1
Cache juggling to help address test flake (#16217)
AlanCoding Jan 8, 2026
7d24bdb
Clear in-memory cache, suggested by bugbot (#16218)
AlanCoding Jan 8, 2026
cfe0b36
Do not eat errors building images (#16216)
AlanCoding Jan 9, 2026
d018096
Fix devel awx, awx_devel, awx_kube_devel build (#16219)
TheRealHaoLiu Jan 9, 2026
b0debf9
Use dnf module for Node.js 18 instead of n version manager - damn it …
TheRealHaoLiu Jan 9, 2026
03d0ed8
Add kubernetes python client from git at release-34.0 (#16226)
TheRealHaoLiu Jan 9, 2026
dbe979b
Add make targets for updating requirements (#16195)
TheRealHaoLiu Jan 9, 2026
fee71b8
Replace pytz with standard library timezone (#16197)
TheRealHaoLiu Jan 9, 2026
75aba0f
docs: migrate RTD URLs to docs.ansible.com (#16189)
gundalow Jan 15, 2026
051357e
fixed description for option notification_templates_approvals in modu…
PascalKont Jan 15, 2026
43a3a62
[AAP-43413] Removing hardcoded number of flags from feature flag test
PabloHiro Jan 16, 2026
dce5ac7
Apply new rules from black update (#16232)
AlanCoding Jan 19, 2026
b34ee01
Slightly alter history to avoid having a Django 5 related migration (…
AlanCoding Jan 19, 2026
80bb0c9
remove artifacts from list endpoint (#16230)
pb82 Jan 20, 2026
8c5cf49
Avoid errors installing with python 3.11 (#16231)
AlanCoding Jan 20, 2026
543b2a6
Update kubernetes python client to 35.0.0 from PyPI (#16236)
TheRealHaoLiu Jan 20, 2026
a839ce8
Update kubernetes python client to 35.0.0 from PyPI (#16237)
TheRealHaoLiu Jan 20, 2026
acf8721
Enhance OpenAPI schema with AI descriptions and fix method names (#16…
Jaapis Jan 21, 2026
98430db
Collect operator logs on timeout (#16239)
AlanCoding Jan 23, 2026
94d5769
Fix extremely flaky failure (#16161)
AlanCoding Jan 23, 2026
36a00ec
AAP-58539 Move to dispatcherd (#16209)
thedoubl3j Jan 23, 2026
ceed692
change contact email address (#16245)
oraNod Jan 26, 2026
12a7229
Publish open api spec on AWX for community use (#16221)
tvo318 Jan 26, 2026
f80bbc5
AAP-43117 Additional dispatcher removal simplifications and waiting r…
AlanCoding Jan 26, 2026
823b736
Remove unused INSIGHTS_OIDC_ENDPOINT (#16235)
fosterseth Jan 27, 2026
1128ad5
AAP-64221 Fix broken cancel logic with dispatcherd (#16247)
AlanCoding Jan 27, 2026
271383d
AAP-60470 Add dispatcherctl and dispatcherd commands as updated inter…
AlanCoding Jan 27, 2026
99dce79
fix: add py311 to make version detection
adrisala Jan 28, 2026
3d68ca8
Fix race condition of un-expired cache in local workers (#16256)
AlanCoding Jan 29, 2026
f7958b9
add deprecated fields to x-ai-description for credential post (#16255)
pb82 Jan 29, 2026
82cb52d
Sanitize SSH key whitespace to prevent validation errors (#16179)
joeywashburn Feb 2, 2026
25f5382
Fix init return
chrismeyersfsu Feb 2, 2026
91118ad
Fix summary_dict None check
chrismeyersfsu Feb 2, 2026
4de9c83
Use fromkeys for constant
chrismeyersfsu Feb 2, 2026
5f434ac
Rename exception args variable
chrismeyersfsu Feb 2, 2026
d929b76
Rename kwargs
chrismeyersfsu Feb 2, 2026
cfc5ad9
Remove return value from __init__
chrismeyersfsu Feb 3, 2026
fc0087f
Add language to api stdout for translation helping
chrismeyersfsu Feb 3, 2026
ed5ab8b
Remove unused variable
chrismeyersfsu Feb 3, 2026
1250835
Compare float to float
chrismeyersfsu Feb 3, 2026
8289003
Remove unreachable code path
chrismeyersfsu Feb 3, 2026
5aa3e8c
Make tz aware
chrismeyersfsu Feb 3, 2026
e3ac581
Always use a tz aware timestamp
chrismeyersfsu Feb 3, 2026
0ab1fea
Use replaceAll() for global regex
chrismeyersfsu Feb 3, 2026
f428621
Add doctype and lang
chrismeyersfsu Feb 3, 2026
edf459f
Add language english to 502
chrismeyersfsu Feb 3, 2026
cca70b2
Add alt text to 502 image
chrismeyersfsu Feb 3, 2026
0f4e914
Add lang english tag to 504 page
chrismeyersfsu Feb 3, 2026
e13fcfe
Add alt text to 504 image
chrismeyersfsu Feb 3, 2026
838e670
Remove duplicate css property
chrismeyersfsu Feb 3, 2026
adc3e35
Add generic font family
chrismeyersfsu Feb 3, 2026
f406a37
Add generic font family
chrismeyersfsu Feb 3, 2026
a6afec6
Add generic font family
chrismeyersfsu Feb 3, 2026
2622e9d
Add alt text for awx logo
chrismeyersfsu Feb 3, 2026
cba0133
Remove redunant role attribute
chrismeyersfsu Feb 3, 2026
63fafec
Remove init return value
chrismeyersfsu Feb 3, 2026
37ccbc2
Harden log message output containing user input
chrismeyersfsu Jan 30, 2026
00c0f7e
add test
chrismeyersfsu Jan 30, 2026
315f9c7
Rename args var
chrismeyersfsu Feb 3, 2026
749735b
Standardize spelling of 'canceled' in wsrelay.py (#16178)
joeywashburn Feb 4, 2026
6a03115
Fix OpenAPI schema enum values for CredentialType kind field (#16262)
Jaapis Feb 4, 2026
5e93f60
AAP-41776 Enable new fancy asyncio metrics for dispatcherd (#16233)
AlanCoding Feb 4, 2026
c9085e4
Update OpenAPI spec to improve descriptions and messages (#16260)
jessicamack Feb 4, 2026
30bf910
fix schema generator (#16265)
Jaapis Feb 4, 2026
99511ef
bump pyasn1 (#16249)
fosterseth Feb 5, 2026
fc0a4cd
🧪 Use the unified test reporting action (#16168)
webknjaz Feb 9, 2026
6f0cfb5
AAP-62657 Implement logic to extract and populate JWT claims from Con…
melissalkelly Feb 9, 2026
1f18396
Add CI Checks for syntactically valid OpenAPI Specification (#16266)
Jaapis Feb 10, 2026
707f2fa
Add OpenAPI spec sync workflow (#16267)
Jaapis Feb 10, 2026
f2438a0
Fix server error from PATCH to inventory source (#16274)
AlanCoding Feb 11, 2026
980d9db
fix: align pip version constraint in requirements_dev.txt (#16275)
dmzoneill Feb 12, 2026
fd84786
Fix wrong field rename
chrismeyersfsu Feb 9, 2026
01293f1
Restore github app lookup tests
chrismeyersfsu Feb 11, 2026
c515b86
Bump wheel to address CVE-2026-24049 (#16253)
fosterseth Feb 12, 2026
9700fb0
Fix awx CLI modify command for users with object-level permissions (#…
fosterseth Feb 12, 2026
7ccc14d
Remove stale api:schema-swagger-ui reference from API root (#16282)
fosterseth Feb 12, 2026
994a2b3
[Devel][AAP-65384]Restoration of Token Authentication for AWX CLI (#1…
stevensonmichel Feb 16, 2026
08f1507
Change remote host finding logic
chrismeyersfsu Feb 13, 2026
1a79e85
do not add optional survey fields with empty strings that are not bac…
pb82 Feb 17, 2026
915deca
fix: awxkit user creation through gw
adrisala Feb 16, 2026
aeba4a1
Revert "Change remote host finding logic"
chrismeyersfsu Feb 17, 2026
39851c3
[Devel] Removal of Token Auth From Devel (#16293)
stevensonmichel Feb 18, 2026
d8fd953
Update PR template to add steps to repro (#16294)
thedoubl3j Feb 18, 2026
9059cfb
Fix some pytest warnings using Opus 4.6 (#16269)
AlanCoding Feb 18, 2026
567a980
Give error details of sliced jobs if they error in live tests (#16273)
AlanCoding Feb 18, 2026
2a35ce5
AAP-62693 Integrate workload identity client to request JWTs (#16296)
fincamd Feb 19, 2026
a21f9fb
Addition of Cron Schedule (#16301)
stevensonmichel Feb 23, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
57 changes: 57 additions & 0 deletions .codecov.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
---

codecov:
notify:
after_n_builds: 9 # Number of test matrix+lint jobs uploading coverage
wait_for_ci: false

require_ci_to_pass: false

token: >- # repo-scoped, upload-only, needed for stability in PRs from forks
2b8c7a7a-7293-4a00-bf02-19bd55a1389b

comment:
require_changes: true

coverage:
range: 100..100
status:
patch:
default:
target: 100%
pytest:
target: 100%
flags:
- pytest
typing:
flags:
- MyPy
project:
default:
target: 75%
lib:
flags:
- pytest
paths:
- awx/
target: 75%
tests:
flags:
- pytest
paths:
- tests/
- >-
**/test/
- >-
**/tests/
- >-
**/test/**
- >-
**/tests/**
target: 95%
typing:
flags:
- MyPy
target: 100%

...
42 changes: 30 additions & 12 deletions .coveragerc
Original file line number Diff line number Diff line change
@@ -1,16 +1,6 @@
[run]
source = awx
branch = True
omit =
awx/main/migrations/*
awx/lib/site-packages/*

[report]
# Regexes for lines to exclude from consideration
exclude_lines =
# Have to re-enable the standard pragma
pragma: no cover

exclude_also =
# Don't complain about missing debug-only code:
def __repr__
if self\.debug
Expand All @@ -23,7 +13,35 @@ exclude_lines =
if 0:
if __name__ == .__main__.:

ignore_errors = True
^\s*@pytest\.mark\.xfail

[run]
branch = True
# NOTE: `disable_warnings` is needed when `pytest-cov` runs in tandem
# NOTE: with `pytest-xdist`. These warnings are false negative in this
# NOTE: context.
#
# NOTE: It's `coveragepy` that emits the warnings and previously they
# NOTE: wouldn't get on the radar of `pytest`'s `filterwarnings`
# NOTE: mechanism. This changed, however, with `pytest >= 8.4`. And
# NOTE: since we set `filterwarnings = error`, those warnings are being
# NOTE: raised as exceptions, cascading into `pytest`'s internals and
# NOTE: causing tracebacks and crashes of the test sessions.
#
# Ref:
# * https://github.com/pytest-dev/pytest-cov/issues/693
# * https://github.com/pytest-dev/pytest-cov/pull/695
# * https://github.com/pytest-dev/pytest-cov/pull/696
disable_warnings =
module-not-measured
omit =
awx/main/migrations/*
awx/settings/defaults.py
awx/settings/*_defaults.py
source =
.
source_pkgs =
awx

[xml]
output = ./reports/coverage.xml
2 changes: 1 addition & 1 deletion .github/CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# Community Code of Conduct

Please see the official [Ansible Community Code of Conduct](https://docs.ansible.com/ansible/latest/community/code_of_conduct.html).
Please see the official [Ansible Community Code of Conduct](https://docs.ansible.com/projects/ansible/latest/community/code_of_conduct.html).
5 changes: 4 additions & 1 deletion .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,12 +13,14 @@ body:
attributes:
label: Please confirm the following
options:
- label: I agree to follow this project's [code of conduct](https://docs.ansible.com/ansible/latest/community/code_of_conduct.html).
- label: I agree to follow this project's [code of conduct](https://docs.ansible.com/projects/ansible/latest/community/code_of_conduct.html).
required: true
- label: I have checked the [current issues](https://github.com/ansible/awx/issues) for duplicates.
required: true
- label: I understand that AWX is open source software provided for free and that I might not receive a timely response.
required: true
- label: I am **NOT** reporting a (potential) security vulnerability. (These should be emailed to `security@ansible.com` instead.)
required: true

- type: textarea
id: summary
Expand All @@ -42,6 +44,7 @@ body:
label: Select the relevant components
options:
- label: UI
- label: UI (tech preview)
- label: API
- label: Docs
- label: Collection
Expand Down
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ contact_links:
url: https://github.com/ansible/awx#get-involved
about: For general debugging or technical support please see the Get Involved section of our readme.
- name: 📝 Ansible Code of Conduct
url: https://docs.ansible.com/ansible/latest/community/code_of_conduct.html?utm_medium=github&utm_source=issue_template_chooser
url: https://docs.ansible.com/projects/ansible/latest/community/code_of_conduct.html?utm_medium=github&utm_source=issue_template_chooser
about: AWX uses the Ansible Code of Conduct; ❤ Be nice to other members of the community. ☮ Behave.
- name: 💼 For Enterprise
url: https://www.ansible.com/products/engine?utm_medium=github&utm_source=issue_template_chooser
Expand Down
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/feature_request.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ body:
attributes:
label: Please confirm the following
options:
- label: I agree to follow this project's [code of conduct](https://docs.ansible.com/ansible/latest/community/code_of_conduct.html).
- label: I agree to follow this project's [code of conduct](https://docs.ansible.com/projects/ansible/latest/community/code_of_conduct.html).
required: true
- label: I have checked the [current issues](https://github.com/ansible/awx/issues) for duplicates.
required: true
Expand Down
11 changes: 3 additions & 8 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,8 @@
<!---
If you are fixing an existing issue, please include "related #nnn" in your
commit message and your description; but you should still explain what
the change does.
the change does. Also please make sure that if this PR has an attached JIRA, put AAP-<number>
in as the first entry for your PR title.
-->

##### ISSUE TYPE
Expand All @@ -16,20 +17,14 @@ the change does.
##### COMPONENT NAME
<!--- Name of the module/plugin/module/task -->
- API
- UI
- Collection
- CLI
- Docs
- Other

##### AWX VERSION
<!--- Paste verbatim output from `make VERSION` between quotes below -->
```

```


##### ADDITIONAL INFORMATION
##### STEPS TO REPRODUCE AND EXTRA INFO
<!---
Include additional information to help people understand the change here.
For bugs that don't have a linked bug report, a step-by-step reproduction
Expand Down
42 changes: 42 additions & 0 deletions .github/actions/awx_devel_image/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
name: Setup images for AWX
description: Builds new awx_devel image
inputs:
github-token:
description: GitHub Token for registry access
required: true
private-github-key:
description: GitHub private key for private repositories
required: false
default: ''
runs:
using: composite
steps:
- name: Set lower case owner name
shell: bash
run: echo "OWNER_LC=${OWNER,,}" >> $GITHUB_ENV
env:
OWNER: '${{ github.repository_owner }}'

- name: Log in to registry
shell: bash
run: |
echo "${{ inputs.github-token }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin

- uses: ./.github/actions/setup-ssh-agent
with:
ssh-private-key: ${{ inputs.private-github-key }}

- name: Pre-pull latest devel image to warm cache
shell: bash
run: |
DEV_DOCKER_TAG_BASE=ghcr.io/${OWNER_LC} \
COMPOSE_TAG=${{ github.base_ref || github.ref_name }} \
docker pull -q `make print-DEVEL_IMAGE_NAME`
continue-on-error: true

- name: Build image for current source checkout
shell: bash
run: |
DEV_DOCKER_TAG_BASE=ghcr.io/${OWNER_LC} \
COMPOSE_TAG=${{ github.base_ref || github.ref_name }} \
make docker-compose-build
77 changes: 77 additions & 0 deletions .github/actions/run_awx_devel/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
name: Run AWX docker-compose
description: Runs AWX with `make docker-compose`
inputs:
github-token:
description: GitHub Token to pass to awx_devel_image
required: true
build-ui:
description: Should the UI be built?
required: false
default: false
type: boolean
private-github-key:
description: GitHub private key for private repositories
required: false
default: ''
outputs:
ip:
description: The IP of the tools_awx_1 container
value: ${{ steps.data.outputs.ip }}
runs:
using: composite
steps:
- name: Disable apparmor for rsyslogd, first step
shell: bash
run: sudo ln -s /etc/apparmor.d/usr.sbin.rsyslogd /etc/apparmor.d/disable/

- name: Disable apparmor for rsyslogd, second step
shell: bash
run: sudo apparmor_parser -R /etc/apparmor.d/usr.sbin.rsyslogd

- name: Build awx_devel image for running checks
uses: ./.github/actions/awx_devel_image
with:
github-token: ${{ inputs.github-token }}
private-github-key: ${{ inputs.private-github-key }}

- name: Upgrade ansible-core
shell: bash
run: python -m pip install --upgrade ansible-core

- name: Install system deps
shell: bash
run: sudo apt-get install -y gettext

- name: Start AWX
shell: bash
run: |
DEV_DOCKER_OWNER=${{ github.repository_owner }} \
COMPOSE_TAG=${{ github.base_ref || github.ref_name }} \
DJANGO_COLORS=nocolor \
SUPERVISOR_ARGS="-n -t" \
COMPOSE_UP_OPTS="-d --no-color" \
make docker-compose

- name: Update default AWX password
shell: bash
run: |
SECONDS=0
while [[ "$(curl -s -o /dev/null -w ''%{http_code}'' -k https://localhost:8043/api/v2/ping/)" != "200" ]]; do
if [[ $SECONDS -gt 600 ]]; then
echo "Timing out, AWX never came up"
exit 1
fi
echo "Waiting for AWX..."
sleep 5
done
echo "AWX is up, updating the password..."
docker exec -i tools_awx_1 sh <<-EOSH
awx-manage update_password --username=admin --password=password
EOSH

- name: Get instance data
id: data
shell: bash
run: |
AWX_IP=$(docker inspect -f '{{.NetworkSettings.Networks.awx.IPAddress}}' tools_awx_1)
echo "ip=$AWX_IP" >> $GITHUB_OUTPUT
27 changes: 27 additions & 0 deletions .github/actions/setup-python/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
name: 'Setup Python from Makefile'
description: 'Extract and set up Python version from Makefile'
inputs:
python-version:
description: 'Override Python version (optional)'
required: false
default: ''
working-directory:
description: 'Directory containing the Makefile'
required: false
default: '.'
runs:
using: composite
steps:
- name: Get python version from Makefile
shell: bash
run: |
if [ -n "${{ inputs.python-version }}" ]; then
echo "py_version=${{ inputs.python-version }}" >> $GITHUB_ENV
else
cd ${{ inputs.working-directory }}
echo "py_version=`make PYTHON_VERSION`" >> $GITHUB_ENV
fi
- name: Install python
uses: actions/setup-python@v5
with:
python-version: ${{ env.py_version }}
29 changes: 29 additions & 0 deletions .github/actions/setup-ssh-agent/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
name: 'Setup SSH for GitHub'
description: 'Configure SSH for private repository access'
inputs:
ssh-private-key:
description: 'SSH private key for repository access'
required: false
default: ''
runs:
using: composite
steps:
- name: Generate placeholder SSH private key if SSH auth for private repos is not needed
id: generate_key
shell: bash
run: |
if [[ -z "${{ inputs.ssh-private-key }}" ]]; then
ssh-keygen -t ed25519 -C "github-actions" -N "" -f ~/.ssh/id_ed25519
echo "SSH_PRIVATE_KEY<<EOF" >> $GITHUB_OUTPUT
cat ~/.ssh/id_ed25519 >> $GITHUB_OUTPUT
echo "EOF" >> $GITHUB_OUTPUT
else
echo "SSH_PRIVATE_KEY<<EOF" >> $GITHUB_OUTPUT
echo "${{ inputs.ssh-private-key }}" >> $GITHUB_OUTPUT
echo "EOF" >> $GITHUB_OUTPUT
fi

- name: Add private GitHub key to SSH agent
uses: webfactory/ssh-agent@v0.9.0
with:
ssh-private-key: ${{ steps.generate_key.outputs.SSH_PRIVATE_KEY }}
19 changes: 19 additions & 0 deletions .github/actions/upload_awx_devel_logs/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
name: Upload logs
description: Upload logs from `make docker-compose` devel environment to GitHub as an artifact
inputs:
log-filename:
description: "*Unique* name of the log file"
required: true
runs:
using: composite
steps:
- name: Get AWX logs
shell: bash
run: |
docker logs tools_awx_1 > ${{ inputs.log-filename }}

- name: Upload AWX logs as artifact
uses: actions/upload-artifact@v4
with:
name: docker-compose-logs-${{ inputs.log-filename }}
path: ${{ inputs.log-filename }}
Loading
Loading