Skip to content

Conversation

AlanCoding
Copy link
Member

@AlanCoding AlanCoding commented Sep 12, 2025

SUMMARY

Update devel to reduce branch drift.

The merge method is "faked", which was:

# resolve only files that have NO stage-1 (i.e., no base) -> add/add conflicts
for f in $(git diff --name-only --diff-filter=U); do
  # list unmerged stages for this path; if there's no stage 1, it's add/add
  if ! git ls-files -u -- "$f" | awk '{print $3}' | grep -q '^1$'; then
    # pick one side for add/add; choose --theirs (incoming) or --ours (current)
    git checkout --theirs -- "$f"     # or: git checkout --ours -- "$f"
    git add -- "$f"
  fi
done

The commit before the branch point

cb2ad41

From #15427

ISSUE TYPE
  • Bug, Docs Fix or other nominal change
COMPONENT NAME
  • API

jessicamack and others added 30 commits August 12, 2024 14:54
* Remove AWX from display text

Co-authored-by: Hao Liu <[email protected]>
* unpin channels-redis

The bug that initially caused the upgrade block has been resolved django/channels_redis#332

* replace aioredis Exception with a redis Exception

Version 4.0.0 of channel-redis migrated the underlying Redis library from aioredis to redis-py. The Exception has been changed to an equivalent

* remove unused license

* remove UPGRADE BLOCKER in README

* remove hiredis

it was an indirect dependency from aioredis which was removed

* remove unused license

* add back hiredis

it's potentially providing a performance boost. install explicitly as a part of redis. upgrade to more recent version

* remove UPGRADE BLOCKER for hiredis

it was also addressed as a part of this PR
Signed-off-by: Rick Elrod <[email protected]>
I had the luck of running into this race condition that broke my deployment. No instance was ever able to register because on running "awx-manage" in some check of a setting, it would end up failing here with

```
  File "/var/lib/awx/venv/awx/lib64/python3.11/site-packages/awx/conf/license.py", line 10, in _get_validated_license_data
    return get_licenser().validate()
           ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/var/lib/awx/venv/awx/lib64/python3.11/site-packages/awx/main/utils/licensing.py", line 453, in validate
    automated_since = int(Instance.objects.order_by('id').first().created.timestamp())
                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'created'
```
…nsible#15453) (ansible#6661)

* Rewrite more access logic in terms of permissions instead of roles

* Cut down supported logic because that would not work anyway

* Remove methods not needed anymore

* Create managed roles in test before delegating permissions
Adds the following managed Role Definitions

Controller Team Admin
Controller Team Member
Controller Organization Admin
Controller Organization Member

These have the same permission set as the
platform roles (without the Controller prefix)

Adding members to teams and orgs via the legacy RBAC system
will use these role definitions.

Other changes:
- Bump DAB to 2024.08.22
- Set ALLOW_LOCAL_ASSIGNING_JWT_ROLES to False in defaults.py.
This setting prevents assignments to the platform roles (e.g. Team Member).

Signed-off-by: Seth Foster <[email protected]>
…ansible#6668)

* Fallback to use subscription cred for analytic

Fall back to use SUBSCRIPTION_USERNAME/PASSWORD to upload analytic to if REDHAT_USERNAME/PASSWORD are not set

* Improve error message

* Guard against request with no query or data

* Add test for _send_to_analytics

Focus on credentials

* Supress sonarcloud warning about password

* Add test for analytic ship

Co-authored-by: Hao Liu <[email protected]>
* Prevent job pod from mounting serviceaccount token

* Add serializer validation for cg pod_spec_override

Prevent automountServiceAccountToken to be set to true and provide an error message when automountServiceAccountToken is being set to true
…e#6653)

Fixes bug where creating a new user will
request a new awx_sessionid cookie, invalidating
the previous session.

Do not refresh session if updating or
creating a password for a different user.

Signed-off-by: Seth Foster <[email protected]>
…nsible#6677)

This is to emphasize that this role is specific
to controller component. That is, not an auditor
for the entire AAP platform.

Signed-off-by: Seth Foster <[email protected]>
REDHAT_USERNAME and REDHAT_PASSWORD are default to empty string instead of None
User and Team assignments using the DAB
RBAC system will be translated back to the old
Role system.

This ensures better backward compatibility and
addresses some inconsistences in the UI that were
relying on older RBAC endpoints.

Signed-off-by: Seth Foster <[email protected]>
Co-authored-by: Alan Rominger <[email protected]>
…5495) (ansible#6693)

* fix: avoid race conditions when removing multiple instance groups at once

* remove unused imports
# Add a postfix to the UI URL patterns for UI URL generated by the API
# example if set to '' UI URL generated by the API for jobs would be $TOWER_URL/jobs
# example if set to 'execution' UI URL generated by the API for jobs would be $TOWER_URL/execution/jobs

Co-authored-by: Hao Liu <[email protected]>
…#15518)  (ansible#6695)

* Fix: change to url in platform ui (ansible#15518)

* Fix instance UI URL generated by API (ansible#15517)

---------

Co-authored-by: Peter Braun <[email protected]>
Adding credential and execution environment roles
validates that the user belongs to the same org
as the credential or EE.

In some situations, the user-org membership has not
yet been synced from gateway to controller.

In this case, controller will make a request to
gateway to check if the user is part of the org.

Signed-off-by: Seth Foster <[email protected]>
@AlanCoding
Copy link
Member Author

Next, this is probably an obvious one

tests/dispatcherd/test_connection_recovery.py:9: in <module>
    from awx.main.tests.data.sleep_task import sleep_break_connection, advisory_lock_exception
E   ImportError: cannot import name 'sleep_break_connection' from 'awx.main.tests.data.sleep_task' (/awx_devel/awx/main/tests/data/sleep_task.py)

stevensonmichel and others added 3 commits September 17, 2025 10:23
* created manual sync for role definition

* made changes for only read role
Bump migrations and delete some files

Resolve remaining conflicts

Fix requirements

Flake8 fixes

Prefer devel changes for schema

Use correct versions

Remove sso connected stuff

Update to modern actions and collection fixes

Remove unwated alias

Version problems in actions

Fix more versioning problems

Update warning string

Messed it up again

Shorten exception

More removals

Remove pbr license

Remove tests deleted in devel

Remove unexpected files

Remove some content missed in the rebase

Use sleep_task from devel

Restore devel live conftest file

Add in settings that got missed

Prefer devel version of collection test

Finish repairing .github path

Remove unintended test file duplication

Undo more unintended file additions
@fosterseth
Copy link
Member

fosterseth commented Sep 18, 2025

https://github.com/ansible/awx/pull/16092/files#diff-c0ac988bcf96b27bb1ae562fff68a68c38f4a7dc69937158dbd409879ac4b78aR599-R608

not sure why these lines didn't get removed, here is the commit c2c0f2b


it's now RESOLVED

)


def policy_as_code_validate(serializer, attrs):
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

not sure if policy as code is intended to be in awx

@fosterseth
Copy link
Member

fosterseth commented Sep 18, 2025

stood up aap-gateway/aap-dev alongside awx running with this branch and everything started successfully ✔️

@AlanCoding AlanCoding marked this pull request as ready for review September 18, 2025 18:48
cursor[bot]

This comment was marked as outdated.

cursor[bot]

This comment was marked as outdated.

Copy link

Quality Gate Failed Quality Gate failed

Failed conditions
2 Security Hotspots

See analysis details on SonarQube Cloud

@AlanCoding AlanCoding merged commit b31da10 into ansible:devel Sep 18, 2025
20 of 22 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component:api component:awx_collection issues related to the collection for controlling AWX dependencies Pull requests that update a dependency file
Projects
None yet
Development

Successfully merging this pull request may close these issues.